63 lines
3.1 KiB
PHP
63 lines
3.1 KiB
PHP
<div>
|
|
|
|
<div class="mbx-domain-head">
|
|
<div class="mbx-domain-info">
|
|
<span class="mbx-badge-mute">Gebannte IPs</span>
|
|
<span class="mbx-domain-count">{{ count($rows) }}</span>
|
|
</div>
|
|
<button wire:click="refreshList" class="mbx-act-btn" title="Aktualisieren">
|
|
<svg width="13" height="13" viewBox="0 0 14 14" fill="none">
|
|
<path d="M12 7A5 5 0 1 1 9 2.5" stroke="currentColor" stroke-width="1.2" stroke-linecap="round"/>
|
|
<path d="M9 .5l2.5 2L9 4.5" stroke="currentColor" stroke-width="1.2" stroke-linecap="round" stroke-linejoin="round"/>
|
|
</svg>
|
|
</button>
|
|
</div>
|
|
|
|
@if(empty($rows))
|
|
<div style="padding:16px;text-align:center;font-size:12px;color:var(--mw-t4)">
|
|
Keine aktiven Banns vorhanden.
|
|
</div>
|
|
@else
|
|
{{-- Spalten: Dot | IP | Dienst | Status+Zeit | Button --}}
|
|
<div style="padding:6px 12px 10px">
|
|
@foreach($rows as $r)
|
|
<div class="f2b-row {{ $r['style'] }}"
|
|
style="display:grid;grid-template-columns:8px 140px 80px 1fr 28px;align-items:center;gap:0 10px">
|
|
|
|
{{-- Dot --}}
|
|
<div class="f2b-dot {{ $r['style'] }}" style="justify-self:center"></div>
|
|
|
|
{{-- IP --}}
|
|
<code style="font-size:12px;color:var(--mw-t1);letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap">{{ $r['ip'] }}</code>
|
|
|
|
{{-- Dienst --}}
|
|
<div style="display:flex;align-items:center;overflow:hidden">
|
|
<span class="f2b-jail-badge" title="{{ $r['jail'] }}"
|
|
style="white-space:nowrap;overflow:hidden;text-overflow:ellipsis">{{ $r['service'] }}</span>
|
|
</div>
|
|
|
|
{{-- Status + Restzeit --}}
|
|
<div style="display:flex;align-items:center;gap:6px;min-width:0">
|
|
<span style="font-size:10.5px;white-space:nowrap;color:{{ $r['style'] === 'permanent' ? 'rgba(252,165,165,.8)' : 'rgba(252,211,77,.8)' }}">{{ $r['label'] }}</span>
|
|
@if($r['remaining'] !== '')
|
|
<span style="font-size:10.5px;color:var(--mw-t4);white-space:nowrap">{{ $r['remaining'] }}</span>
|
|
@endif
|
|
</div>
|
|
|
|
{{-- Button --}}
|
|
<button wire:click="unban('{{ $r['ip'] }}','{{ $r['jail'] }}')"
|
|
class="mbx-act-btn mbx-act-danger" title="Entbannen"
|
|
wire:confirm="IP {{ $r['ip'] }} aus {{ $r['jail'] }} entbannen?">
|
|
<svg width="12" height="12" viewBox="0 0 14 14" fill="none">
|
|
<rect x="1.5" y="6" width="11" height="6.5" rx="1.5" stroke="currentColor" stroke-width="1.2"/>
|
|
<path d="M4.5 6V4a2.5 2.5 0 0 1 5 0" stroke="currentColor" stroke-width="1.2" stroke-linecap="round"/>
|
|
<circle cx="7" cy="9.5" r=".8" fill="currentColor"/>
|
|
</svg>
|
|
</button>
|
|
</div>
|
|
@endforeach
|
|
</div>
|
|
@endif
|
|
|
|
</div>
|