@extends('partials.app') @section('content')
{{-- Header Section --}}
@php $pendingReadingCount = $modules->where('reading_completed', false)->count(); $failedAssessmentCount = $modules ->filter(fn($module) => $module->latestResult && !$module->latestResult->is_passed) ->count(); @endphp

Available Training Assessments

Review the documents before starting your randomized exam.

@if (session('success'))
{{ session('success') }}
@endif @if (session('error'))
{{ session('error') }}
@endif @if ($pendingReadingCount > 0)
{{ $pendingReadingCount }} training assessment(s) are waiting for required document reading.
@endif @if ($failedAssessmentCount > 0)
{{ $failedAssessmentCount }} assessment(s) are awaiting reassignment or re-attempt.
@endif
{{-- Training Cards --}}
@foreach ($modules as $module) @php $totalQuestions = $module->examDocuments->sum( fn($document) => (int) ($document->pivot->question_quota ?? 0), ); $status = $module->latestResult; $readTracker = $module->readTracker; $readingCompleted = (bool) ($module->reading_completed ?? false); $isExpired = $module->isExpired(); @endphp
{{-- Header --}}

{{ $module->name }}

@if ($isExpired) Ended @endif @if ($status && $status->is_passed) Passed @elseif($status) Failed @else Pending @endif
{{-- Question Info --}}

Total Questions: {{ $totalQuestions }}

{{-- Reading Status --}}
@if ($readingCompleted) Reading completed. Assessment unlocked. @else Reading required: @php $requiredSeconds = (int) ($readTracker->required_seconds ?? 60); @endphp {{ $requiredSeconds > 3600 ? gmdate('H:i:s', $requiredSeconds) : gmdate('i:s', $requiredSeconds) }} @endif
{{-- Study Materials --}}
Study Material
{{-- Action Buttons --}}
@if ($isExpired) @elseif (!$readingCompleted) Complete Reading @elseif($status && $status->is_passed) @elseif(($module->assessment_state ?? null) === 'retake_exam') Re-Attempt @elseif(($module->assessment_state ?? null) === 'waiting_reassign') @else Start Assessment @endif @if ($status)

Last Attempt: {{ $status->percentage }}% on {{ $status->created_at->format('d M Y') }}

@endif
@endforeach
@endsection @push('scripts') @endpush