@extends('layouts.app') @section('title', 'My Logbook') @section('content') @php $currentSort = $currentSemester?->sort_order; @endphp

My Logbook

Your clinical procedure record across the whole programme.

{{-- ── Programme summary ──────────────────────────────────────────────── --}}
@include('student.logbook._ring', ['percent' => $overall['percent'], 'size' => 104])
Overall progress

{{ $overall['passed'] }} of {{ $overall['total'] }} procedures passed across {{ $semesters->count() }} semesters.

{{ $overall['passed'] }} passed @if($overall['retry'] > 0) {{ $overall['retry'] }} need a retry @endif {{ $overall['not_assessed'] }} not assessed
@if($currentSemester)
@php $cp = $progress[$currentSemester->id] ?? null; @endphp
You are here
{{ $currentSemester->name }}
@if($cp)
{{ $cp['passed'] }}/{{ $cp['total'] }} passed @if($cp['retry'] > 0) · {{ $cp['retry'] }} to retry @endif
@endif Continue
@endif
{{-- ── Semester cards ─────────────────────────────────────────────── --}}
Semesters
@foreach($semesters as $sem) @php $p = $progress[$sem->id] ?? ['total' => 0, 'passed' => 0, 'retry' => 0, 'percent' => 0, 'compulsory_total' => 0, 'compulsory_passed' => 0, 'optional_total' => 0, 'optional_passed' => 0]; $pct = $p['percent']; $isCurrent = $currentSemester && $currentSemester->id === $sem->id; $isFuture = $currentSort !== null && $sem->sort_order > $currentSort; $isDone = $p['total'] > 0 && $pct === 100; $hasReport = $reports->has($sem->id); @endphp @endforeach
{{-- ── Recent activity ────────────────────────────────────────────── --}}
Recent assessments
@forelse($recent as $a)
@if($a->is_na) NA @else {{ $a->score }} @endif
{{ $a->procedure?->name ?? 'Procedure removed' }}
@if($a->procedure?->parent){{ $a->procedure->parent->name }} · @endif {{ $a->assessment_date->format('d M Y') }}
@if($a->assessedBy)
{{ $a->assessedBy->name }}
@endif
@empty
No assessments recorded yet.
Show your QR card to a clinical instructor to get started.
@endforelse
@if($recent->isNotEmpty()) @endif
@endsection