From 975b53167cdcb4245bde1bdf4a24fbc0dfe007df Mon Sep 17 00:00:00 2001 From: Flatlogic Bot Date: Sat, 6 Dec 2025 19:39:43 +0000 Subject: [PATCH] trying --- timetable.php | 34 ++++++++++++++++------------------ 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/timetable.php b/timetable.php index 9fe4d86..424aa6a 100644 --- a/timetable.php +++ b/timetable.php @@ -470,31 +470,29 @@ $classes = $all_data['classes']; $timeslots = $all_data['timeslots']; $workloads = $all_data['workloads']; -// Fetch working days from school settings +// Fetch working days from school settings and apply a strict filter $school_id = $_SESSION['school_id'] ?? null; -$days_of_week = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']; // Default +$days_of_week = []; +$allowed_days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']; + if ($school_id) { $stmt = $pdoconn->prepare("SELECT working_days FROM schools WHERE id = ?"); $stmt->execute([$school_id]); - $school_settings = $stmt->fetch(PDO::FETCH_ASSOC); - if ($school_settings && !empty($school_settings['working_days'])) { - $days_from_db = array_map('trim', explode(',', $school_settings['working_days'])); - - // Explicitly filter for valid days from Monday to Friday - $valid_weekdays = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']; - $filtered_days = []; - foreach ($days_from_db as $day) { - if (in_array($day, $valid_weekdays)) { - $filtered_days[] = $day; - } - } - - if (!empty($filtered_days)) { - $days_of_week = $filtered_days; - } + $working_days_str = $stmt->fetchColumn(); + if ($working_days_str) { + $days_from_db = array_map('trim', explode(',', $working_days_str)); + // Intersect with the allowed days to filter out anything else + $days_of_week = array_intersect($days_from_db, $allowed_days); } } +// If after all that, the list is empty, fall back to the default +if (empty($days_of_week)) { + $days_of_week = $allowed_days; +} +// Ensure the array is numerically indexed from 0 +$days_of_week = array_values($days_of_week); + $class_timetables = []; if (isset($_POST['generate'])) {