@php $remainingSeconds = max(0, ((int) ($exam->duration_minutes ?? 0)) * 60); $proctoringConfig = [ 'enabled' => (bool) $exam->proctoring_enabled, 'requireCamera' => (bool) $exam->require_camera, 'requireMicrophone' => (bool) $exam->require_microphone, 'detectNoFace' => (bool) $exam->detect_no_face, 'detectMultipleFaces' => (bool) $exam->detect_multiple_faces, 'detectTalking' => (bool) $exam->detect_talking, 'maxWarnings' => max(1, (int) ($exam->max_warnings ?? 5)), 'countdownSeconds' => max(0, (int) ($exam->pre_exam_countdown_seconds ?? 10)), 'violationStoreUrl' => route('violations.store'), 'terminatedUrl' => route('exam.terminated'), 'faceModelUrl' => 'https://justadudewhohacks.github.io/face-api.js/models', ]; @endphp

{{ $exam->title }}

{{ $exam->subject ?? '' }}

@if($exam->negative_enabled && $exam->negative_marking != 0)

Each wrong answer deducts {{ number_format($exam->negative_marking, 2) }} marks.

@endif
Time Left
00:00
Question 1 of {{ count($questions) }}

Warnings

0 / {{ $proctoringConfig['maxWarnings'] }}

Camera

Pending

Microphone

Pending

@csrf

Question Palette

Exam Checkpoint

Get ready before the timer starts

Review the instructions below, allow any required permissions, and make sure you are ready before starting the exam.

Instructions

@php $examLang = $exam->language ?? 'both'; $isBilingual = $examLang === 'both'; $currentLang = $preferredLanguage ?? 'hindi'; @endphp @if($isBilingual)

🌐 Choose Test Language

@endif
  • Sit in a well-lit place and keep your face clearly visible.
  • Stay on this exam screen and remain in fullscreen mode after the exam begins.
  • Warnings are shared across tab switches, fullscreen exit, camera, and microphone checks.
  • This exam allows up to {{ $proctoringConfig['maxWarnings'] }} warnings before termination.
Camera {{ $proctoringConfig['requireCamera'] ? 'Required' : 'Optional' }}
Microphone {{ $proctoringConfig['requireMicrophone'] ? 'Required' : 'Optional' }}
Countdown {{ $proctoringConfig['countdownSeconds'] }}s

Device Check

Camera preview will appear here
Camera status Pending
Microphone status Pending
Face check Waiting