@extends('layouts.cbt') @section('page-title', 'Monitor: '.$exam->title) @section('sidebar')@include('components.guru-sidebar')@endsection @section('content')

Total Peserta

{{ $attempts->count() }}

Sedang Mengerjakan

{{ $attempts->filter(fn($a) => $a->isInProgress())->count() }}

Selesai

{{ $attempts->reject(fn($a) => $a->isInProgress())->count() }}

Pembaruan realtime setiap 2 detik. Badge kuning/merah = indikasi kecurangan.

@foreach($attempts as $a) @php $flag = app(\App\Services\ExamSecurityService::class)->getFlagLevel($a); @endphp @endforeach
SiswaStatusKeamananProgressMulaiTab/BlurIPSkor
{{ $a->student->user->name }} ({{ $a->student->nis }}) {{ $a->status->label() }} {{ strtoupper($flag) }} {{ $a->answers()->count() }}/{{ $exam->examQuestions()->count() }} {{ $a->started_at->format('H:i:s') }}{{ $a->started_at->diffForHumans() }} {{ $a->tab_switch_count }}/{{ app(\App\Services\ExamSecurityService::class)->getEventCounts($a)['window_blur'] }} {{ $a->ip_address ?? '-' }} {{ $a->score ?? '-' }}
@push('scripts') @endpush @endsection