/home/techb158/workloadmatch.com/workloadmatch.com/BackUp/Manager/Inc
Edit: /home/techb158/workloadmatch.com/workloadmatch.com/BackUp/Manager/Inc/AddGroup.php (4921B)
query($querys);
$rows = $results->fetch_assoc();
$Admin_ID = $rows['Admin_ID'];
$Master_ID = $rows['Master_ID'];
$Manager_ID = $rows['Manager_ID'];
$Program_ID = $_POST['Program_ID'];
$Group_Name = $_POST['Group_Name'];
$Group_Year = $_POST['Group_Year'];
$weekendClass = isset($_POST['weekendClass']) ? 1 : 0;
$Time_Slot = isset($_POST['Time_Slot']) ? $_POST['Time_Slot'] : [];
$time_slot_combined = implode(",", $Time_Slot);
// Check if group name already exists
$stmt_check = $mysqli->prepare("SELECT Group_ID FROM manager_group_name WHERE Admin_ID = ? AND Master_ID = ? AND Manager_ID = ? AND Group_Name = ?");
$stmt_check->bind_param('iiis', $Admin_ID, $Master_ID, $Manager_ID, $Group_Name);
$stmt_check->execute();
$stmt_check->store_result();
if ($stmt_check->num_rows > 0) {
$stmt_check->close();
header('Location: addgroup.php?error=Group Name already exists!');
exit();
}
$stmt_check->close();
// Fetch selected time slots
$query = "SELECT Time_Slot_Programs_ID, Time_Slot_ID, Time_Slot, Time_From, Time_To FROM Time_Slot_Programs WHERE Time_Slot_Programs_ID IN ($time_slot_combined)";
$result = $mysqli->query($query);
$time_slots = [];
$earliest_time = null;
$latest_time = null;
$time_slot_values = [];
while ($row = $result->fetch_assoc()) {
$time_slots[] = $row;
$time_slot_values[] = $row['Time_Slot'];
if ($earliest_time === null || strtotime($row['Time_From']) < strtotime($earliest_time)) {
$earliest_time = $row['Time_From'];
}
if ($latest_time === null || strtotime($row['Time_To']) > strtotime($latest_time)) {
$latest_time = $row['Time_To'];
}
}
if (empty($time_slots)) {
header('Location: addgroup.php?error=No valid time slots found!');
exit();
}
$time_slot_combined = implode(",", $time_slot_values);
$Register_Time = date("Y-m-d H:i:s");
// Handle class days
if (isset($_POST['enableCustomDays']) && $_POST['enableCustomDays'] == "1") {
$class_days = isset($_POST['class_days']) ? $_POST['class_days'] : [];
$class_days_combined = !empty($class_days) ? implode(",", $class_days) : "Monday,Tuesday,Wednesday,Thursday,Friday";
} else {
$class_days_combined = "Monday,Tuesday,Wednesday,Thursday,Friday";
}
if ($weekendClass == 1 && strpos($class_days_combined, 'Saturday') === false) {
$class_days_combined .= ",Saturday";
}
// Insert into manager_group_name
$stmt_insert = $mysqli->prepare("INSERT INTO manager_group_name (Admin_ID, Master_ID, Manager_ID, Program_ID, Weekend_Class, Group_Name, Group_Year, Time_Slot, Time_From, Time_To, Date_Time, class_days) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)");
$stmt_insert->bind_param('iiiissssssss', $Admin_ID, $Master_ID, $Manager_ID, $Program_ID, $weekendClass, $Group_Name, $Group_Year, $time_slot_combined, $earliest_time, $latest_time, $Register_Time, $class_days_combined);
if (!$stmt_insert->execute()) {
header('Location: addgroup.php?error=Failed to save group info: ' . $stmt_insert->error);
exit();
}
$stmt_insert->close();
$new_group_id = $mysqli->insert_id;
// Insert into Group_Slot_Mapping
foreach ($time_slots as $slot) {
$stmt_slot = $mysqli->prepare("INSERT INTO Group_Slot_Mapping (Group_ID, Time_Slot_ID, Time_Slot_Programs_ID, Time_Slot, Time_From, Time_To) VALUES (?, ?, ?, ?, ?, ?)");
$stmt_slot->bind_param('iiisss', $new_group_id, $slot['Time_Slot_ID'], $slot['Time_Slot_Programs_ID'], $slot['Time_Slot'], $slot['Time_From'], $slot['Time_To']);
if (!$stmt_slot->execute()) {
header('Location: addgroup.php?error=Failed to insert group slot mapping: ' . $stmt_slot->error);
exit();
}
$stmt_slot->close();
}
header('Location: addgroup.php?error=Group added successfully!');
exit();
} else {
header('Location: addgroup.php?error=Missing required fields!');
exit();
}
}
?>