@extends('admin.layouts.app')
@section('title', __('admin.notification_logs_admin.event_title') . ' — ' . __('admin.brand.name'))
@section('page_title', __('admin.notification_logs_admin.event_title'))
@php
use App\Models\NotificationLog;
$dash = '—';
$locale = app()->getLocale();
$nameField = $locale === 'ar' ? 'name_ar' : 'name_en';
// The aggregated header is built off the first row — every row in the
// event shares the same recipient / action / admin / triggering event.
$head = $rows->first();
$newOptName = optional($head->newOption)->{$nameField} ?: optional($head->newOption)->name_en;
$oldOptName = optional($head->oldOption)->{$nameField} ?: optional($head->oldOption)->name_en;
$recipientUrl = null;
if ($head->recipient_type === \App\Models\Investor::class && $head->recipient_id) {
$recipientUrl = route('admin.investors.show', $head->recipient_id);
} elseif ($head->recipient_type === \App\Models\Startup::class && $head->recipient_id) {
$recipientUrl = route('admin.startups.show', $head->recipient_id);
}
$channelMeta = [
NotificationLog::CHANNEL_EMAIL => ['icon' => '✉️', 'fg' => '#1d4ed8', 'bg' => '#dbeafe', 'label' => __('admin.notification_logs_admin.channels.email')],
NotificationLog::CHANNEL_SMS => ['icon' => '💬', 'fg' => '#7c2d12', 'bg' => '#fed7aa', 'label' => __('admin.notification_logs_admin.channels.sms')],
NotificationLog::CHANNEL_WHATSAPP => ['icon' => '🟢', 'fg' => '#166534', 'bg' => '#bbf7d0', 'label' => __('admin.notification_logs_admin.channels.whatsapp')],
NotificationLog::CHANNEL_PUSH => ['icon' => '↑', 'fg' => '#0369a1', 'bg' => '#e0f2fe', 'label' => __('admin.notification_logs_admin.channels.push')],
NotificationLog::CHANNEL_NOTIFICATION => ['icon' => '🔔', 'fg' => '#4338ca', 'bg' => '#e0e7ff', 'label' => __('admin.notification_logs_admin.channels.notification')],
];
$statusMeta = [
NotificationLog::STATUS_PENDING => ['fg' => '#92400e', 'bg' => '#fef3c7', 'label' => __('admin.notification_logs_admin.statuses.pending'), 'glyph' => '⏳'],
NotificationLog::STATUS_SENT => ['fg' => '#065f46', 'bg' => '#d1fae5', 'label' => __('admin.notification_logs_admin.statuses.sent'), 'glyph' => '✓'],
NotificationLog::STATUS_FAILED => ['fg' => '#991b1b', 'bg' => '#fee2e2', 'label' => __('admin.notification_logs_admin.statuses.failed'), 'glyph' => '✗'],
];
@endphp
@section('content')
{{ $head->label_key }}
@endif
{{ $oldOptName ?: $head->old_value ?: $dash }} → {{ $newOptName ?: $head->new_value ?: $dash }}
@endif👤 @if ($head->recipient && $recipientUrl) {{ $head->recipient->name ?? '#'.$head->recipient_id }} @else {{ optional($head->recipient)->name ?? '#'.$head->recipient_id }} @endif ({{ class_basename($head->recipient_type) }}#{{ $head->recipient_id }}) · 🕒 {{ optional($summary['occurred_at'])->format('Y-m-d H:i:s') }} @if ($head->admin) · 🛡️ {{ $head->admin->name }} @endif
{{ $row->address ?: $dash }}{{ $row->error }}
@endif
{{ json_encode($row->payload, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) }}
{{ json_encode($row->response, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES) }}