@extends('layouts.app') @section('title', 'Training Tracking') @section('content') @include('partials.flash')
arrow_back Builder

{{ $course->title }}

{{ $learners->total() }} enrolled · {{ $moduleCount }} modules · {{ $assessmentModules->count() }} assessments

@foreach($assessmentModules as $am) @endforeach @forelse($learners as $learner) @php $completed = (int) ($done[$learner->id] ?? 0); $pct = $moduleCount > 0 ? (int) round($completed / $moduleCount * 100) : 0; $userBest = $best->get($learner->id) ?? collect(); $pStatus = $learner->pivot->status; @endphp @foreach($assessmentModules as $am) @php $b = $userBest->firstWhere('course_module_id', $am->id); @endphp @endforeach @empty @endforelse
Learner Module progress{{ \Illuminate\Support\Str::limit($am->title, 18) }}Status

{{ $learner->name }}

{{ $learner->email }}

{{ $completed }}/{{ $moduleCount }}
@if($b) {{ $b->best }}% @else @endif @php $sm = match($pStatus){ 'completed'=>['Completed','text-primary'], 'in_progress'=>['In progress','text-gold'], default=>['Not started','text-outline'] }; @endphp {{ $sm[0] }}
No learners enrolled in this course yet.
{{ $learners->links() }}
{{-- xAPI activity timeline --}}
timeline

xAPI Activity

latest {{ $activity->count() }} statements
@php $verbMeta = [ 'experienced' => ['icon' => 'visibility', 'class' => 'text-secondary', 'word' => 'viewed'], 'completed' => ['icon' => 'check_circle', 'class' => 'text-primary', 'word' => 'completed'], 'passed' => ['icon' => 'verified', 'class' => 'text-primary', 'word' => 'passed'], 'failed' => ['icon' => 'cancel', 'class' => 'text-error', 'word' => 'failed'], 'answered' => ['icon' => 'quiz', 'class' => 'text-gold', 'word' => 'answered'], 'attempted' => ['icon' => 'play_circle', 'class' => 'text-outline', 'word' => 'attempted'], ]; @endphp @forelse($activity as $s) @php $m = $verbMeta[$s->verb] ?? ['icon' => 'radio_button_checked', 'class' => 'text-outline', 'word' => $s->verb]; @endphp
{{ $m['icon'] }}

{{ $s->user->name ?? 'Someone' }} {{ $m['word'] }} {{ $s->object_name }} @if(!is_null($s->score_percent))· {{ $s->score_percent }}%@endif

{{ $s->occurred_at->diffForHumans() }}
@empty
timeline

No activity yet

xAPI statements appear here as learners view and complete modules.

@endforelse
@endsection