{{-- Filter & Actions Panel --}}

{{ __('Audit Log') }}

{{ __('Track admin actions, system events, and security changes.') }}

{{ __('Reset') }}
{{-- Audit Log Table Panel --}}

{{ __('Log Directory') }}

{{ __('Showing') }} {{ $logs->firstItem() ?? 0 }}-{{ $logs->lastItem() ?? 0 }} {{ __('of') }} {{ $logs->total() }} {{ __('log entries.') }}

{{ __('Export') }}
{{-- List View --}}
@forelse($logs as $log) @empty @endforelse
{{ __('Date & Time') }} {{ __('Actor') }} {{ __('Event') }} {{ __('Target') }} {{ __('IP Address') }} {{ __('Details') }}
{{ \Carbon\Carbon::parse($log->created_at)->format('M j, Y H:i:s') }}
{{ strtoupper(substr($log->actor_name ?? 'SY', 0, 2)) }}
{{ $log->actor_name ?? __('System') }}

{{ ucfirst($log->actor_type ?? 'system') }}

{{ str_replace('_', ' ', ucfirst($log->event)) }} @if($log->auditable_type) {{ class_basename($log->auditable_type) }} #{{ $log->auditable_id }} @else -- @endif {{ $log->ip_address ?? '--' }} @if($log->new_values) @php $vals = json_decode($log->new_values, true); @endphp @if(is_array($vals)) {{ \Illuminate\Support\Str::limit(implode(', ', array_map(fn($k, $v) => "$k: $v", array_keys($vals), array_values($vals))), 80) }} @endif @elseif($log->old_values) @php $vals = json_decode($log->old_values, true); @endphp @if(is_array($vals)) {{ \Illuminate\Support\Str::limit(implode(', ', array_map(fn($k, $v) => "$k: $v", array_keys($vals), array_values($vals))), 80) }} @endif @else -- @endif
{{ __('No audit logs found.') }}
{{-- Grid View --}}
@forelse($logs as $log)
{{ strtoupper(substr($log->actor_name ?? 'SY', 0, 2)) }}
{{ $log->actor_name ?? __('System') }}

{{ ucfirst($log->actor_type ?? 'system') }}

{{ str_replace('_', ' ', ucfirst($log->event)) }}
@if($log->auditable_type) {{ class_basename($log->auditable_type) }} #{{ $log->auditable_id }} @else -- @endif {{ $log->ip_address ?? '--' }}
{{ \Carbon\Carbon::parse($log->created_at)->format('M j, Y H:i:s') }}
@empty
{{ __('No audit logs found.') }}
@endforelse
@if($logs->hasPages())
{{ $logs->withQueryString()->links() }}
@endif