@extends('dashboard.layouts.app') @section('title', __('dashboard.Schedule Details')) @section('breadcrumb') @endsection @section('content')

{{ __('dashboard.Schedule Details') }} #{{ $schedule->id }}

{{ __('dashboard.Edit') }}
@if ($schedule->trackLevel) @endif @if ($schedule->item) @endif
{{ __('dashboard.Schedule Type') }} {{ __("dashboard." . ucfirst($schedule->type)) }}
{{ __('dashboard.Schedule Name') }} {{ $schedule->item_name }}
{{ __('dashboard.Track Level') }} #{{ $schedule->trackLevel->id }} - {{ $schedule->trackLevel->name }}
{{ __('dashboard.Item') }} {{ $schedule->item->name }}
{{ __('dashboard.Sessions Count') }} {{ $sessionCount = $schedule->sessions_count }}
{{ __('dashboard.Sessions Per Week') }} @php $weeklySlots = json_decode($schedule->weekly_slots, true); $sessionsPerWeek = is_array($weeklySlots) ? count($weeklySlots) : 0; @endphp {{ $sessionsPerWeek }}
{{ __('dashboard.Start Date') }} {{ $schedule->start_date->format('Y-m-d') }}
{{ __('dashboard.End Date') }} @php $weeksNeeded = $sessionsPerWeek ? ceil($sessionCount / $sessionsPerWeek) : 0; $endDate = $schedule->start_date && $weeksNeeded ? $schedule->start_date->copy()->addWeeks($weeksNeeded)->subDay() : null; @endphp {{ $endDate?->format('Y-m-d') ?? __('dashboard.N/A') }}
{{ __('dashboard.Status') }} @switch($schedule->status) @case('scheduled') {{ __("dashboard.Scheduled") }} @break @case('ongoing') {{ __("dashboard.Ongoing") }} @break @case('completed') {{ __("dashboard.Completed") }} @break @case('cancelled') {{ __("dashboard.Cancelled") }} @break @default {{ __("dashboard.Unknown") }} @endswitch
{{ __('dashboard.Teacher') }} @if ($schedule->teacher) {{ $schedule->teacher->name }} ({{ $schedule->teacher->email }}) @else {{ __('dashboard.N/A') }} @endif

{{ __('dashboard.Weekly Slots') }}

@if(is_array($weeklySlots) && count($weeklySlots) > 0)
@foreach ($weeklySlots as $slot) @endforeach
{{ __('dashboard.Day') }} {{ __('dashboard.Start Time') }} {{ __('dashboard.End Time') }} {{ __('dashboard.Teacher') }}
@php $days = [__('dashboard.Sunday'), __('dashboard.Monday'), __('dashboard.Tuesday'), __('dashboard.Wednesday'), __('dashboard.Thursday'), __('dashboard.Friday'), __('dashboard.Saturday')]; @endphp {{ $days[$slot['day']] }} {{ \Carbon\Carbon::parse($slot['start'])->format('H:i') }} {{ \Carbon\Carbon::parse($slot['end'])->format('H:i') }} @if(isset($slot['teacher_id']) && $slot['teacher_id']) @php $teacher = \App\Models\User::find($slot['teacher_id']); @endphp @if($teacher) {{ $teacher->name }} @else {{ __('dashboard.Teacher Not Found') }} @endif @else {{ __('dashboard.Not set') }} @endif
@else

{{ __('dashboard.No weekly slots defined for this schedule.') }}

@endif @if($schedule->type === 'track' && $schedule->trackLevel)

{{ __('dashboard.Sessions') }}

@php $sessions = $schedule->trackLevel->sessions()->orderBy('order')->get(); $sessionDates = []; $currentDate = $schedule->start_date->copy(); $slotIndex = 0; foreach ($sessions as $session) { if ($sessionsPerWeek === 0) break; $slot = $weeklySlots[$slotIndex % $sessionsPerWeek]; $dayOfWeek = $slot['day']; $startTime = \Carbon\Carbon::parse($slot['start'])->format('H:i'); $endTime = \Carbon\Carbon::parse($slot['end'])->format('H:i'); while ($currentDate->dayOfWeek != $dayOfWeek) { $currentDate->addDay(); } $sessionDates[] = [ 'name' => $session->title, 'date' => $currentDate->copy(), 'start_time' => $startTime, 'end_time' => $endTime, ]; $currentDate->addDay(); $slotIndex++; } @endphp @if($sessions->isNotEmpty())
@foreach ($sessionDates as $session) @endforeach
{{ __('dashboard.Session Name') }} {{ __('dashboard.Date') }} {{ __('dashboard.Start Time') }} {{ __('dashboard.End Time') }}
{{ $session['name'] }} {{ $session['date']->format('Y-m-d') }} {{ $session['start_time'] }} {{ $session['end_time'] }}
@else

{{ __('dashboard.No sessions defined for this track level.') }}

@endif @endif
@endsection