From e07927abe140bbbefbb475e942ae40f4b816558e Mon Sep 17 00:00:00 2001 From: admin Date: Tue, 12 May 2026 12:12:31 +0800 Subject: [PATCH] Fix: Always inject holiday metadata into attendance record so banner shows even when employee worked --- app/Http/Controllers/AttendanceRecordController.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/app/Http/Controllers/AttendanceRecordController.php b/app/Http/Controllers/AttendanceRecordController.php index c9a33ce5c..a0ad632d5 100644 --- a/app/Http/Controllers/AttendanceRecordController.php +++ b/app/Http/Controllers/AttendanceRecordController.php @@ -1127,7 +1127,7 @@ class AttendanceRecordController extends Controller } } - // Only overlay if there is NO existing attendance record for the day with clock times + // Only overlay STATUS if there is NO existing attendance record for the day with clock times // Note: If they have an approved leave, leave it as LV. if ($isHolidayDate && $status !== 'LV' && (!$recordDetail || empty($recordDetail['clock_in']))) { $status = 'HD'; @@ -1141,6 +1141,12 @@ class AttendanceRecordController extends Controller } } + // Always inject holiday metadata so the modal banner shows even when employee worked + if ($isHolidayDate && $recordDetail) { + $recordDetail['is_holiday'] = true; + $recordDetail['holiday_name'] = $holidayTitle; + } + $grid[$dateKey] = [ 'status' => $status, 'label' => $label,