@php $weekdayLabels = ['Sen', 'Sel', 'Rab', 'Kam', 'Jum', 'Sab', 'Min']; $today = now(); $prevBulan = $month->copy()->subMonthNoOverflow()->format('Y-m'); $nextBulan = $month->copy()->addMonthNoOverflow()->format('Y-m'); @endphp
Hari ini
{{ $monthSummary['total'] }} slot {{ $monthSummary['tersedia'] }} tersedia {{ $monthSummary['sebagian'] }} sebagian {{ $monthSummary['penuh'] }} penuh {{ $monthSummary['nonaktif'] }} nonaktif
@foreach ($weekdayLabels as $label) @endforeach @for ($date = $calendarStart->copy(); $date->lte($calendarEnd); $date->addDay()) @if ($date->isMonday()) @endif @php $dateKey = $date->toDateString(); $slotsHari = $calendarSlots->get($dateKey, collect()); $jumlahSlot = $slotsHari->count(); $isOutside = $date->format('Y-m') !== $bulan; $isToday = $date->isToday(); $isSelected = $selectedDateKey === $dateKey; $statusHari = ['tersedia' => 0, 'sebagian' => 0, 'penuh' => 0, 'nonaktif' => 0]; $dots = []; foreach ($slotsHari as $slotHari) { [$statusColor, $statusKey] = $slotStatus($slotHari); $dots[] = $statusColor; $statusHari[$statusKey]++; } $ariaLabel = $date->translatedFormat('l, d F Y').', '.$jumlahSlot.' slot'; if ($jumlahSlot > 0) { $ariaLabel .= ': '.$statusHari['tersedia'].' tersedia, '.$statusHari['sebagian'].' sebagian, '.$statusHari['penuh'].' penuh, '.$statusHari['nonaktif'].' nonaktif'; } @endphp @if ($date->isSunday()) @endif @endfor
Kalender slot waktu {{ $month->translatedFormat('F Y') }}
{{ $label }}
{{ $date->day }} @if ($jumlahSlot > 0) {{ $jumlahSlot }} slot @else @endif
Tersedia Sebagian terisi Penuh Nonaktif