@extends('layouts.app') @section('title', 'Exam Security Logs') @section('breadcrumb') Dashboard Security logs @endsection @section('content')
MONITOR
Total events
{{ $stats['total'] }}
{{ $stats['tab_switches'] }}
Tab switches
{{ $stats['tab_switches'] }}
{{ $stats['fullscreen_exits'] }}
Fullscreen exits
{{ $stats['fullscreen_exits'] }}
{{ $stats['force_submits'] }}
Force submits
{{ $stats['force_submits'] }}
Security log
{{ $logs->count() }} event(s)
@if($logs->isEmpty())
No security events
Violations will be logged here when detected during exams.
@else
@foreach($logs as $log) @php $ev = strtolower($log->event_type ?? ''); $pillTone = 's-neutral'; if (str_contains($ev, 'tab')) $pillTone = 's-warning'; elseif (str_contains($ev, 'full')) $pillTone = 's-info'; elseif (str_contains($ev, 'force')) $pillTone = 's-danger'; elseif (str_contains($ev, 'blur')) $pillTone = 's-warning'; elseif (str_contains($ev, 'multi')) $pillTone = 's-danger'; @endphp @endforeach
# Candidate Post Event Message Warn IP Time  
{{ $loop->iteration }}
{{ $log->user?->name ?? '—' }}
{{ $log->user?->email }}
{{ $log->application?->post?->code ?? '—' }} {{ $log->event_type_label ?? $log->event_type }} {{ $log->event_message ?? '—' }} @if($log->event_count_snapshot !== null) {{ $log->event_count_snapshot }} @else @endif {{ $log->ip_address ?? '—' }} {{ $log->created_at->format('d M Y') }}
{{ $log->created_at->format('h:i A') }}
@if($log->examAttempt) @endif
@endif
@endsection @push('scripts') @endpush