@php $filters = $eventLogFilters ?? ['category' => '', 'workflow' => 'needs_attention', 'severity' => '', 'action' => '']; $focusId = (int) ($eventLogFocusId ?? 0); $severityStyles = [ 'info' => 'bg-slate-100 text-slate-700 border-slate-200', 'warning' => 'bg-amber-50 text-amber-900 border-amber-200', 'critical' => 'bg-rose-50 text-rose-900 border-rose-200', ]; $workflowStyles = [ 'open' => 'bg-sky-50 text-sky-900 border-sky-200', 'in_progress' => 'bg-violet-50 text-violet-900 border-violet-200', 'resolved' => 'bg-emerald-50 text-emerald-900 border-emerald-200', 'dismissed' => 'bg-slate-100 text-slate-600 border-slate-200', ]; $categoryLabels = [ 'transaction' => 'Transactions', 'security' => 'Security', 'account' => 'Accounts', 'governance' => 'Governance', 'operations' => 'Operations', 'access' => 'Access', ]; @endphp

Event log

Categorized audit trail for transactions, security blocks, account holds, and governance actions. Open a row dialog to start or complete review tasks, or use redirect buttons to jump to outbound security, working account blocks, or governance holds.

@if (($eventLogOpenCount ?? 0) > 0) {{ $eventLogOpenCount }} need attention @endif
@if (session('status'))

{{ session('status') }}

@endif @if ($errors->any())
@foreach ($errors->all() as $err)

{{ $err }}

@endforeach
@endif

Filters

Reset
@if (! empty($eventLogCategoryCounts))
@foreach ($eventLogCategoryCounts as $cat => $count) {{ $categoryLabels[$cat] ?? ucfirst($cat) }} {{ $count }} @endforeach
@endif
@forelse ($controlPanelEvents ?? [] as $event) @empty @endforelse
When Event Category Subject Workflow Review
{{ $event['created_at']?->timezone(config('app.timezone'))->format('M j, Y g:i A') }}

{{ $event['label'] }}

{{ $event['action'] }}

@if ($event['summary'])

{{ $event['summary'] }}

@endif {{ $event['severity'] }}
{{ $event['category'] }} @if ($event['subject_name'] || $event['subject_email']) {{ $event['subject_name'] ?? $event['subject_email'] }} @else — @endif @if ($event['actor_name'])

By {{ $event['actor_name'] }}

@endif
{{ str_replace('_', ' ', $event['workflow_status']) }}
No events match these filters. Transaction and security actions will appear here as they occur.
@foreach ($controlPanelEvents ?? [] as $event)

{{ $categoryLabels[$event['category']] ?? ucfirst($event['category']) }} · #{{ $event['id'] }}

{{ $event['label'] }}

{{ $event['action'] }}

@if ($event['summary'])

{{ $event['summary'] }}

@endif @include('partials.control-station.event-wire-debit-preview', ['event' => $event])
Workflow
{{ str_replace('_', ' ', $event['workflow_status']) }}
Severity
{{ $event['severity'] }}
Entity
{{ class_basename($event['entity_type']) }} #{{ $event['entity_id'] }}
@if ($event['subject_email'])
Subject profile
{{ $event['subject_name'] ?? $event['subject_email'] }} ({{ $event['subject_email'] }})
@endif
@if (! empty($event['admin_actions']))

Administrative actions

@foreach ($event['admin_actions'] as $link) {{ $link['label'] }} @endforeach
@endif @if (! empty($event['context']))
Event context (JSON)
{{ json_encode($event['context'], JSON_PRETTY_PRINT | JSON_UNESCAPED_SLASHES) }}
@endif @if ($event['workflow_note'])

Last workflow note

{{ $event['workflow_note'] }}

@if ($event['workflow_by_name'])

By {{ $event['workflow_by_name'] }} · {{ $event['workflow_updated_at']?->timezone(config('app.timezone'))->format('M j, Y g:i A') }}

@endif
@endif
@csrf

Workflow task

@if (in_array($event['workflow_status'], ['open', 'dismissed'], true)) @endif @if ($event['workflow_status'] === 'in_progress') @endif @if ($event['workflow_status'] === 'open') @endif @if (in_array($event['workflow_status'], ['resolved', 'dismissed'], true)) @endif
@endforeach