{{-- Row 1: Key Metrics --}}

Active Events

{{ number_format($metrics['active_events']) }}

@if ($metrics['events_this_week'] > 0)

+{{ number_format($metrics['events_this_week']) }} this week

@else

No new events this week

@endif
Live

Total Media

{{ number_format($metrics['total_media']) }}

{{ $metrics['queue_count'] ? number_format($metrics['queue_count']) . ' processing' : 'Queue is clear' }}

Assets

Storage Used

{{ $metrics['storage_percent'] }}%

{{ $metrics['storage_used_label'] }} of {{ $metrics['storage_limit_label'] }}

@if (! empty($metrics['storage_warning']))

Warning ({{ $metrics['storage_warning'] }}%)

@endif
Dual copy
@if ($metrics['is_admin'])

Active Users

{{ number_format($metrics['active_users']) }}

@if ($metrics['new_users'] > 0)

+{{ number_format($metrics['new_users']) }} this week

@else

No new users this week

@endif
Users
@else

Upload Queue

{{ number_format($metrics['queue_count']) }}

{{ $metrics['queue_count'] ? 'Files processing' : 'Queue is clear' }}

Chunked
@endif
{{-- Row 2: Revenue Stats (admin only) --}} @isset($revenueStats)

Total Revenue

{{ $revenueStats['currency_symbol'] }}{{ number_format($revenueStats['total_revenue'], 2) }}

All time earnings

Revenue

This Month

{{ $revenueStats['currency_symbol'] }}{{ number_format($revenueStats['revenue_this_month'], 2) }}

{{ now()->format('F Y') }}

Monthly

Total Orders

{{ number_format($revenueStats['total_orders']) }}

{{ number_format($revenueStats['completed_orders']) }} completed

Orders

Pending Orders

{{ number_format($revenueStats['pending_orders']) }}

{{ $revenueStats['pending_orders'] ? 'Awaiting payment' : 'All clear' }}

Pending
@endisset {{-- Row 3: Upload Throughput + Live Event Health --}}

Upload Throughput

Image ingestion performance across live events.

Create event @if ($metrics['is_admin']) View analytics @endif
@php $chart = $throughput['chart'] ?? ['line' => '', 'fill' => '', 'points' => []]; $chartLine = $chart['line'] ?: 'M20 160 L500 160'; $chartFill = $chart['fill'] ?: 'M20 160 L500 160 L500 180 L20 180 Z'; $chartPoints = $chart['points'] ?: [['x' => 20, 'y' => 160], ['x' => 500, 'y' => 160]]; @endphp
@foreach ($chartPoints as $point) @endforeach

Avg / day

{{ number_format($throughput['avg_per_day']) }} images

Peak day

{{ number_format($throughput['peak_per_day']) }} images

Queue ETA

{{ $throughput['queue_eta_label'] }}

Live Event Health

Priority shoots and delivery status.

@forelse ($eventHealth as $event)

{{ $event['name'] }}

{{ $event['subtitle'] }}

{{ $event['status'] }}
@empty
No events to display yet.
@endforelse
{{-- Row 4: Recent Deliveries + System Snapshot --}}

Recent Deliveries

Latest albums awaiting review or download.

Export report
@forelse ($recentDeliveries as $delivery) @empty @endforelse
Event Type Status Assets

{{ $delivery['name'] }}

{{ $delivery['expiry'] }}

{{ $delivery['type'] }} {{ $delivery['status'] }} {{ number_format($delivery['assets']) }}
No deliveries yet.
@isset($systemSnapshot)

System Snapshot

Security, uptime, and queue status.

Admin 2FA {{ $systemSnapshot['two_factor'] }}
Blocked IPs {{ number_format($systemSnapshot['blocked_ips']) }}
Blocked Locations {{ number_format($systemSnapshot['blocked_locations']) }}
Upload Queue {{ number_format($systemSnapshot['queue_pending']) }}
Social Login {{ $systemSnapshot['social_login'] }}
@if ($metrics['queue_count'] > 0) Processing {{ number_format($metrics['queue_count']) }} upload(s). Watermarks are running in the background. @else No pending uploads. Background queue is idle. @endif
@endisset
{{-- Row 5: Recent Activity + Plan Distribution (admin only) --}} @if ($metrics['is_admin'])
{{-- Recent Activity --}} @isset($recentActivity)

Recent Activity

Latest actions across the platform.

View all
@forelse ($recentActivity as $activity)
{{ strtoupper(substr($activity['user'], 0, 1)) }}

{{ $activity['user'] }} · {{ $activity['action'] }}

{{ $activity['description'] }}

{{ $activity['time'] }}
@empty
No recent activity.
@endforelse
@endisset {{-- Plan Distribution --}} @isset($planStats)

Plan Distribution

Orders by active plan.

@forelse ($planStats as $plan) @php $maxOrders = max(array_column($planStats, 'orders')) ?: 1; $barWidth = ($plan['orders'] / $maxOrders) * 100; @endphp
{{ $plan['name'] }} {{ number_format($plan['orders']) }} orders
@empty
No active plans.
@endforelse
@endisset
@endif