@extends('layouts.app') @section('title', 'Tahun Ajaran') @section('content') @php use App\Enums\SemesterName; $semesterOptions = collect(SemesterName::cases()) ->map( fn(SemesterName $semester) => [ 'value' => $semester->value, 'label' => $semester->label(), ], ) ->values(); @endphp
{{-- Page Header --}}

Tahun Ajaran

Kelola tahun ajaran dan semester

@if (session('success')) {{ session('success') }} @endif @if (session('error')) {{ session('error') }} @endif @if ($errors->any()) {{ $errors->first() }} @endif {{-- Active Semester Banner --}} @if (isset($activeSemester))

Semester Aktif

{{ $activeSemester->academicYear->name }} — {{ $activeSemester->name->label() }}

{{ $activeSemester->start_date->format('d M Y') }} s/d {{ $activeSemester->end_date->format('d M Y') }}

@endif {{-- Academic Years Accordion --}}
@forelse($academicYears ?? [] as $year) @php $hasActiveSemester = $year->semesters->contains('is_active', true); @endphp
{{-- Year Header (Accordion Trigger) --}}
{{-- Expand/Collapse Icon --}}
{{-- Year Info --}}

{{ $year->name }}

{{ $year->start_date->format('d M Y') }} — {{ $year->end_date->format('d M Y') }} | {{ $year->semesters->count() }} semester

{{-- Year Actions --}}
{{-- Semesters Panel (Collapsible) --}}
@forelse($year->semesters as $semester)
{{-- Semester Icon --}}
{{-- Semester Info --}}

{{ $semester->name->label() }}

@if ($semester->is_active) Aktif @else Arsip @endif

{{ $semester->start_date->format('d M Y') }} s/d {{ $semester->end_date->format('d M Y') }}

{{-- Semester Actions --}}
@if (!$semester->is_active) @endif
@empty

Belum ada semester

@endforelse
@empty

Belum ada tahun ajaran

Mulai dengan membuat tahun ajaran pertama.

@endforelse
{{ $academicYears->links() }}
{{-- Academic Year Modal --}}
@csrf
{{-- Semester Modal --}}
@csrf
Tahun ajaran:
{{-- Confirm Dialog --}}

@csrf
@endsection