@extends('admin.layouts.app')
@section('title', __('admin.notification_center.title') . ' — ' . __('admin.brand.name'))
@section('page_title', __('admin.notification_center.title'))
@php
use App\Models\AdminNotification;
$statusMeta = [
AdminNotification::STATUS_DRAFT => ['fg' => '#475569', 'bg' => '#f1f5f9'],
AdminNotification::STATUS_SENDING => ['fg' => '#9a3412', 'bg' => '#ffedd5'],
AdminNotification::STATUS_SENT => ['fg' => '#047857', 'bg' => '#ecfdf5'],
AdminNotification::STATUS_PARTIAL => ['fg' => '#92400e', 'bg' => '#fef3c7'],
AdminNotification::STATUS_FAILED => ['fg' => '#b91c1c', 'bg' => '#fef2f2'],
];
$channelMeta = [
'email' => ['fg' => '#1d4ed8', 'bg' => '#dbeafe', 'svg' => ''],
'sms' => ['fg' => '#9a3412', 'bg' => '#fed7aa', 'svg' => ''],
'whatsapp' => ['fg' => '#15803d', 'bg' => '#bbf7d0', 'svg' => ''],
];
@endphp
@push('styles')
@endpush
@section('content')
{{ __('admin.notification_center.new') }}
@include('admin.partials.flash')
@if ($notifications->isEmpty())
{{ __('admin.notification_center.empty') }}
@else
{{ __('admin.notification_center.col.title') }}
{{ __('admin.notification_center.col.created_by') }}
{{ __('admin.notification_center.col.created') }}
{{ __('admin.notification_center.col.delivery') }}
{{ __('admin.notification_center.col.audience') }}
{{ __('admin.notification_center.stats.delivered') }}
{{ __('admin.notification_center.stats.failed') }}
{{ __('admin.notification_center.col.not_sent') }}
{{ __('admin.fields.status') }}
{{ __('admin.notification_center.col.actions') }}
@foreach ($notifications as $n)
@php
$sm = $statusMeta[$n->status] ?? $statusMeta['draft'];
$st = is_array($n->stats) ? $n->stats : [];
$hasStats = ! $n->isDraft() && $st !== [];
@endphp
{{ optional($n->creator)->name ?? __('admin.notification_center.system') }}
{{ $n->created_at?->format('Y-m-d') }}
@if ($n->delivery_mode === AdminNotification::DELIVERY_MODE_SCHEDULED)
{{ __('admin.notification_center.mode.scheduled') }}
@if ($n->scheduled_at)
{{ $n->scheduled_at->copy()->setTimezone($n->timezone ?: 'UTC')->format('Y-m-d H:i') }}
@endif
@else
{{ __('admin.notification_center.mode.now') }}
@endif
{{ $n->audience_count !== null ? $n->audience_count : ($n->groups_count . ' ' . __('admin.notification_center.groups_short')) }}
{{ $hasStats ? ($st['delivered'] ?? 0) : '—' }}
{{ $hasStats ? ($st['failed'] ?? 0) : '—' }}
{{ $hasStats ? ($st['pending'] ?? 0) : '—' }}
{{ __('admin.notification_center.status.' . $n->status) }}
{{ __('admin.actions.view') }}
@if ($n->isScheduled())
@elseif (! $n->isDraft() && ! $n->isCancelled())
{{ __('admin.notification_center.retry') }}
@endif
@endforeach
{{ $notifications->links() }}
@endif
@endsection