HubPilotage
@include('partials.nav', ['active' => 'alertes'])
Déconnexion

Alertes

Surveillance automatique : sites hors ligne, certificats SSL, chutes de note SEO, nouveaux prospects.

@php $levels = ['crit' => ['🔴','border-red-500/30 bg-red-500/5'], 'warn' => ['🟠','border-amber-500/30 bg-amber-500/5'], 'info' => ['🔵','border-sky-500/30 bg-sky-500/5']]; $typeLabel = ['down' => 'Hors ligne', 'ssl' => 'SSL', 'seo' => 'SEO', 'lead' => 'Prospect', 'backup' => 'Sauvegarde']; @endphp @php $catOf = ['down' => 'panne', 'ssl' => 'ssl', 'seo' => 'seo', 'lead' => 'lead', 'backup' => 'backup']; $catCount = collect($alerts)->groupBy(fn ($a) => $catOf[$a['type']] ?? 'autre')->map->count(); $cats = [ 'all' => ['Toutes', count($alerts)], 'panne' => ['🔌 Pannes / coupures', $catCount['panne'] ?? 0], 'ssl' => ['🔒 Certificats SSL', $catCount['ssl'] ?? 0], 'seo' => ['📉 SEO', $catCount['seo'] ?? 0], 'lead' => ['👤 Prospects', $catCount['lead'] ?? 0], 'backup' => ['💾 Sauvegardes', $catCount['backup'] ?? 0], ]; @endphp @if(! count($alerts))
✓ Aucune alerte. Tout va bien. (La surveillance tourne à chaque battement du hub.)
@else
@foreach($cats as $id => [$lbl, $n]) @endforeach
@foreach($alerts as $a) @php [$icon,$cls] = $levels[$a['level']] ?? ['⚪','border-slate-700']; @endphp
{{ $icon }}
{{ $a['site'] }} {{ $typeLabel[$a['type']] ?? $a['type'] }}
{{ $a['message'] }}
{{ \Illuminate\Support\Carbon::parse($a['at'])->diffForHumans() }}
@endforeach

Historique conservé (les {{ count($alerts) }} dernières alertes, toutes catégories). La surveillance uptime/coupures réseau tourne depuis le hub local ; SEO, prospects et sauvegardes sont surveillés en continu.

@endif