mailwolt/resources/views/livewire/ui/security/fail2ban-banlist.blade.php

45 lines
2.2 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
<div style="padding:10px 12px">
@foreach($rows as $r)
<div class="f2b-row {{ $r['style'] }}">
<div style="display:flex;align-items:center;gap:10px;min-width:0">
<div class="f2b-dot {{ $r['style'] }}"></div>
<code style="font-size:12.5px;color:var(--mw-t1);letter-spacing:.02em;flex-shrink:0">{{ $r['ip'] }}</code>
<span class="f2b-jail-badge">{{ $r['jail'] }}</span>
<span style="font-size:10.5px;color:{{ $r['style'] === 'permanent' ? 'rgba(252,165,165,.8)' : 'rgba(252,211,77,.8)' }}">{{ $r['label'] }}</span>
</div>
<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>