@extends('layout.app') @section('content')
@if (session('success')) @endif
Pilih Jadwal Latihan

Klik tombol cek kehadiran untuk memverifikasi absen anggota dan mengelola data manual.

@forelse ($data_jadwal as $no => $item) @php // Set timezone ke Jakarta agar sinkron dengan waktu Indonesia $now = \Carbon\Carbon::now('Asia/Jakarta'); $start = \Carbon\Carbon::parse( $item->tanggal . ' ' . $item->jam_mulai, 'Asia/Jakarta', ); $end = $item->jam_selesai ? \Carbon\Carbon::parse( $item->tanggal . ' ' . $item->jam_selesai, 'Asia/Jakarta', ) : $start->copy()->addHours(2); $dbStatus = trim(strtolower($item->status)); // Logika Penentuan Label Status if ($dbStatus == 'selesai') { $status_label = 'Selesai'; $status_color = 'success'; } elseif ( $now->greaterThanOrEqualTo($start) && $now->lessThanOrEqualTo($end) ) { $status_label = 'Berlangsung'; $status_color = 'primary'; } elseif ($now->lt($start)) { $status_label = 'Mendatang'; $status_color = 'secondary'; } else { $status_label = 'Menunggu Konfirmasi'; $status_color = 'warning'; } @endphp @empty @endforelse
No Kegiatan & Pelatih Status Jadwal Waktu & Lokasi Tipe Aksi
{{ $no + 1 }}
{{ $item->judul_kegiatan }} @if ($dbStatus == 'selesai') @endif
{{-- Pemanggilan dari Query Builder Manual --}} {{ $item->nama_pelatih ?? 'Belum Ditentukan' }}
{{ $status_label }}
{{ \Carbon\Carbon::parse($item->tanggal)->format('d M Y') }}
{{ substr($item->jam_mulai, 0, 5) }} - {{ $item->jam_selesai ? substr($item->jam_selesai, 0, 5) : 'Selesai' }}
{{ $item->lokasi }}
@php $bg_type = 'bg-secondary-soft text-secondary'; if ($item->jenis == 'Rutin') { $bg_type = 'bg-success-soft text-success border-success'; } elseif ($item->jenis == 'Tambahan') { $bg_type = 'bg-info-soft text-info border-info'; } elseif ($item->jenis == 'Pengumuman') { $bg_type = 'bg-danger-soft text-danger border-danger'; } @endphp {{ $item->jenis }} {{-- Tombol Cek Kehadiran --}} Cek Kehadiran
Belum ada jadwal latihan tersedia.
@endsection