@extends('layouts.dashboard') @section('title', __('Practice & Mock Tests')) @section('page_title', __('Practice & Mock Tests')) @section('content') @include('partials.how-it-works', ['key' => 'student.mock-tests'])
@if(request('q')) @endif
{{ __('My attempts') }}
@forelse($tests as $test) @php $mine = $attempts->get($test->id, collect()); $used = $mine->count(); $best = $test->resultsPublished() ? $mine->max('percentage') : null; $canAttempt = $test->isOpen() && (! $test->max_attempts || $used < (int) $test->max_attempts); @endphp
{{ $test->quiz_type === 'mock' ? __('Mock exam') : __('Practice') }} @if($test->proctoring_enabled) @endif
{{ $test->title }}
@if($test->course) {{ $test->course->title }} @endif
  • {{ $test->paperSize() ?: $test->questions_count }} {{ __('questions') }}
  • {{ $test->duration_minutes ? $test->duration_minutes.' '.__('minutes') : __('No time limit') }}
  • {{ __('Pass mark') }}: {{ (float) $test->passing_score }}%
  • @if($test->available_until)
  • {{ __('Closes') }} {{ $test->available_until->diffForHumans() }}
  • @endif
@include('partials.quiz.schedule', ['quiz' => $test, 'class' => 'mb-3']) @if($used)
{{ __('Attempts') }}: {{ $used }}@if($test->max_attempts)/{{ $test->max_attempts }}@endif @if($best !== null) {{ __('Best') }}: {{ (float) $best }}% @else {{ __('Result pending') }} @endif
@endif
@if($canAttempt) {{ $used ? __('Retake') : __('Start test') }} @else @endif
@empty
@if(request('q') || request('type')) {{ __('No tests match your search.') }} {{ __('Clear search') }} @else {{ __('No practice or mock tests are available to you yet.') }} @endif
@endforelse
{{ $tests->links() }}
@endsection