<?php include "../include/conn.php"; include "out.php"; // Get Faculty ID (required) $faculty_id = $_SESSION['faculty'] ?? 1; if (!$faculty_id) { die("Access denied. Please log in as faculty."); } // Get selected semester $semester = $_GET['semester'] ?? ''; // Fetch faculty info $faculty = $conn->query("SELECT * FROM faculty WHERE id='$faculty_id'")->fetch_assoc(); // Build query with optional semester filter $where = "WHERE s.faculty_id = '$faculty_id'"; if ($semester) { $where .= " AND s.semester = '" . $conn->real_escape_string($semester) . "'"; } // Fetch schedule $sql = " SELECT s.days, s.start_time, s.end_time, s.year_level, s.semester, s.section_id, sec.section_name, s.curriculum_id, cur.code AS curriculum_name, cur.track, sub.subject_code, sub.subject_description, r.room_name, r.type FROM schedule s LEFT JOIN subject sub ON s.subject_id = sub.id LEFT JOIN curriculum cur ON s.curriculum_id = cur.id LEFT JOIN section sec ON s.section_id = sec.id LEFT JOIN room r ON s.room_id = r.id $where ORDER BY FIELD(s.semester, '1st','2nd','Summer/MidYear'), FIELD(s.days,'Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday'), s.start_time "; $result = $conn->query($sql); ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Faculty Schedule</title> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.5/font/bootstrap-icons.css"> <link rel="stylesheet" href="style.css"> </head> <body> <div class="d-flex"> <?php include("sidebar.php"); ?> <div class="w-100"> <?php include("nav.php"); ?> <div class="content mt-5"> <div class="container-fluid"> <h2 class="mb-4 text-center"> Faculty Schedule<br> <small class="text-muted"><?= htmlspecialchars($faculty['faculty_name']) ?></small> </h2> <!-- Filter Form --> <form method="get" class="row g-3 mb-4 justify-left-center"> <input type="hidden" name="faculty_id" value="<?= htmlspecialchars($faculty_id) ?>"> <div class="col-md-4"> <label class="form-label fw-bold">Semester</label> <select name="semester" class="form-select" onchange="this.form.submit()"> <option value="1st" <?= $semester == "1st" ? 'selected' : '' ?>>1st Semester</option> <option value="2nd" <?= $semester == "2nd" ? 'selected' : '' ?>>2nd Semester</option> <option value="Summer/MidYear" <?= $semester == "Summer/MidYear" ? 'selected' : '' ?>>Summer / MidYear</option> </select> </div> </form> <?php if ($result->num_rows > 0): ?> <div class="table-responsive shadow p-3 bg-white rounded"> <table class="table table-hover table-bordered align-middle"> <thead class="bg-primary text-white text-center"> <tr> <th>Day</th> <th>Time</th> <th>Room</th> <th>Code</th> <th>Description</th> <th>Class</th> </tr> </thead> <tbody> <?php while ($row = $result->fetch_assoc()): ?> <?php $start = date("g:i A", strtotime($row['start_time'])); $end = date("g:i A", strtotime($row['end_time'])); ?> <tr> <td><?= htmlspecialchars($row['days']) ?></td> <td><?= "$start - $end" ?></td> <td><?= htmlspecialchars($row['room_name']) ?> (<?= htmlspecialchars($row['type']) ?>)</td> <td><?= htmlspecialchars($row['subject_code']) ?></td> <td><?= htmlspecialchars($row['subject_description']) ?></td> <td><?= htmlspecialchars($row['section_name']) ?></td> <!-- ✅ Added section --> </tr> <?php endwhile; ?> </tbody> </table> </div> <?php else: ?> <div class="alert alert-warning text-center mt-3">No schedules found for the selected semester.</div> <?php endif; ?> </div> </div> </div> </div> <!-- Curriculum Selection Modal --> <div class="modal fade" id="curriculumModal" tabindex="-1" aria-labelledby="curriculumModalLabel" aria-hidden="true"> <div class="modal-dialog modal-dialog-centered"> <div class="modal-content"> <div class="modal-header bg-primary text-white"> <h5 class="modal-title" id="curriculumModalLabel">Select Curriculum</h5> <button type="button" class="btn-close btn-close-white" data-bs-dismiss="modal" aria-label="Close"></button> </div> <div class="modal-body"> <label for="curriculumSelect" class="form-label fw-bold">Curriculum</label> <select id="curriculumSelect" class="form-select"> <option value="">-- Select Curriculum --</option> <?php $curResult = $conn->query("SELECT id, code, name FROM curriculum ORDER BY code ASC"); while ($cur = $curResult->fetch_assoc()): ?> <option value="<?= $cur['id'] ?>"> <?= htmlspecialchars($cur['code']) ?> - <?= htmlspecialchars($cur['name']) ?> </option> <?php endwhile; ?> </select> </div> <div class="modal-footer"> <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Cancel</button> <button type="button" class="btn btn-success" id="confirmDownload"> <i class="bi bi-download"></i> Download </button> </div> </div> </div> </div> </body> <!-- ✅ Scripts --> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/js/bootstrap.bundle.min.js"></script> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/sweetalert2@11"></script> <script> document.getElementById('confirmDownload').addEventListener('click', function() { const curriculumId = document.getElementById('curriculumSelect').value; const facultyId = <?= json_encode($faculty_id) ?>; const semester = <?= json_encode($_GET['semester'] ?? '1st') ?>; // ✅ safe default to "1st" if (!curriculumId) { alert('Please select a curriculum before downloading.'); return; } // Redirect to download file with all parameters const url = `download/faculty.php?faculty_id=${facultyId}&semester=${encodeURIComponent(semester)}&curriculum_id=${curriculumId}`; window.location.href = url; }); </script> <script src="javascript.js"></script> </html>