{{-- Session Scroller --}}
@lang('app.Select a Session') @php $availableSessions = $this->getAvailableSessions(); $groupedSessions = $availableSessions->groupBy(function ($session) { return $session['session_date']->format('Y-m-d'); }); @endphp @if($availableSessions->isEmpty())

@lang('app.No sessions found in the current date range.')

@else {{-- Horizontal scrolling session cards --}}
@foreach($groupedSessions as $date => $sessionsOnDate) @php $firstSession = $sessionsOnDate->first(); $dateCarbon = $firstSession['session_date']; @endphp {{-- Date Card --}}
{{-- Date Header --}}
{{ $this->formatDate($dateCarbon) }}
{{ $dateCarbon->translatedFormat('M j, Y') }}
@if($dateCarbon->isToday()) @lang('app.Today') @endif
{{-- Sessions on this date --}}
@foreach($sessionsOnDate as $session) @php $isSelected = $this->selectedInstanceId === $session['instance']->id && $this->selectedSessionDate === $session['session_date_string'] && $this->selectedSlotSessionId === $session['slot_session']->id; @endphp @endforeach
@endforeach
@endif
{{-- Attendance Recording Section --}} @php $sessionDetails = $this->getSelectedSessionDetails(); @endphp @isset($sessionDetails) @livewire(\App\Filament\Resources\SchedulableInstances\RelationManagers\AttendancesRelationManager::class, [ 'ownerRecord' => $sessionDetails['instance'], 'pageClass' => \App\Filament\Resources\SchedulableInstances\SchedulableInstanceResource::class, 'limitToSessionId' => $this->selectedSlotSessionId, 'limitToSessionDate' => $this->selectedSessionDate, ], key('attendance-relation-manager-' . ($this->selectedSlotSessionId ?? 'none'))) @endisset