Still trying to fix
This commit is contained in:
parent
faa47959df
commit
e9c9a7f587
@ -2,6 +2,8 @@
|
||||
require_once __DIR__ . '/includes/auth_check.php';
|
||||
require_once __DIR__ . '/db/config.php';
|
||||
|
||||
|
||||
|
||||
$message = '';
|
||||
$error = '';
|
||||
$pdo = db();
|
||||
@ -11,6 +13,8 @@ $school_id = $_SESSION['school_id'];
|
||||
// Handle Delete request
|
||||
if ($_SERVER['REQUEST_METHOD'] === 'POST' && isset($_POST['delete_id'])) {
|
||||
try {
|
||||
// First, remove teacher from schedule
|
||||
|
||||
$stmt = $pdo->prepare("DELETE FROM workloads WHERE id = ? AND school_id = ?");
|
||||
if ($stmt->execute([$_POST['delete_id'], $school_id])) {
|
||||
$message = 'Workload deleted successfully!';
|
||||
@ -45,6 +49,7 @@ elseif ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
||||
} else { // Insert
|
||||
$stmt = $pdo->prepare("INSERT INTO workloads (class_id, subject_id, teacher_id, lessons_per_week, school_id) VALUES (?, ?, ?, ?, ?)");
|
||||
if ($stmt->execute([$class_id, $subject_id, $teacher_id, $lessons_per_week, $school_id])) {
|
||||
$new_workload_id = $pdo->lastInsertId();
|
||||
$message = 'Workload created successfully!';
|
||||
} else {
|
||||
$error = 'Failed to create workload.';
|
||||
|
||||
@ -33,33 +33,7 @@ if ($role === 'teacher') {
|
||||
<link rel="stylesheet" href="assets/css/custom.css?v=<?php echo time(); ?>">
|
||||
</head>
|
||||
<body>
|
||||
<nav class="navbar navbar-expand-lg navbar-light bg-white sticky-top shadow-sm">
|
||||
<div class="container">
|
||||
<a class="navbar-brand fw-bold" href="dashboard.php">Haki Schedule</a>
|
||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
|
||||
<span class="navbar-toggler-icon"></span>
|
||||
</button>
|
||||
<div class="collapse navbar-collapse" id="navbarNav">
|
||||
<ul class="navbar-nav ms-auto">
|
||||
<?php if ($role === 'admin'): ?>
|
||||
<li class="nav-item"><a class="nav-link" href="admin_classes.php">Classes</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="admin_subjects.php">Subjects</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="admin_teachers.php">Teachers</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="admin_workloads.php">Workloads</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="admin_timeslots.php">Timeslots</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="timetable.php">Class Timetable</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="teacher_timetable.php">Teacher Timetable</a></li>
|
||||
<?php else: ?>
|
||||
<li class="nav-item"><a class="nav-link" href="teacher_timetable.php">My Timetable</a></li>
|
||||
<?php if ($can_edit_workload): ?>
|
||||
<li class="nav-item"><a class="nav-link" href="teacher_workload.php">My Workload</a></li>
|
||||
<?php endif; ?>
|
||||
<?php endif; ?>
|
||||
<li class="nav-item"><a class="nav-link" href="logout.php">Logout</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
<?php require_once __DIR__ . '/includes/navbar.php'; ?>
|
||||
|
||||
<main class="container py-5">
|
||||
<h1 class="h3 fw-bold">Welcome, <?php echo htmlspecialchars($_SESSION['username']); ?>!</h1>
|
||||
|
||||
@ -2,7 +2,7 @@
|
||||
session_start();
|
||||
|
||||
// If user is not logged in or is not an admin, redirect to login page
|
||||
if (!isset($_SESSION['user_id']) || $_SESSION['role'] !== 'admin') {
|
||||
if (!isset($_SESSION['user_id']) || ($_SESSION['role'] !== 'admin' && $_SESSION['role'] !== 'teacher')) {
|
||||
header("Location: login.php");
|
||||
exit;
|
||||
}
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
<?php
|
||||
session_start();
|
||||
|
||||
require_once __DIR__ . '/db/config.php';
|
||||
require_once __DIR__ . '/../db/config.php';
|
||||
|
||||
// If user is not logged in, redirect to login page
|
||||
if (!isset($_SESSION['user_id'])) {
|
||||
|
||||
@ -35,6 +35,10 @@ $role = $_SESSION['role'] ?? '';
|
||||
<li class="nav-item"><a class="nav-link <?php echo ($current_page == 'timetable.php') ? 'active' : ''; ?>" href="/timetable.php">Class Timetable</a></li>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($role === 'admin'): ?>
|
||||
<li class="nav-item"><a class="nav-link <?php echo ($current_page == 'teacher_timetable.php') ? 'active' : ''; ?>" href="/teacher_timetable.php">Teacher Timetable</a></li>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($role === 'teacher'): ?>
|
||||
<?php if (!empty($_SESSION['can_edit_workload'])): ?>
|
||||
<li class="nav-item"><a class="nav-link <?php echo ($current_page == 'teacher_workload.php') ? 'active' : ''; ?>" href="/teacher_workload.php">My Workload</a></li>
|
||||
|
||||
33
index.php
33
index.php
@ -12,38 +12,7 @@
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<nav class="navbar navbar-expand-lg navbar-light bg-white sticky-top shadow-sm">
|
||||
<div class="container">
|
||||
<a class="navbar-brand fw-bold" href="/">Haki Schedule</a>
|
||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
|
||||
<span class="navbar-toggler-icon"></span>
|
||||
</button>
|
||||
<div class="collapse navbar-collapse" id="navbarNav">
|
||||
<ul class="navbar-nav ms-auto">
|
||||
<li class="nav-item"><a class="nav-link active" href="/">Home</a></li>
|
||||
<?php if (isset($_SESSION['user_id'])): ?>
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="manageDropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
|
||||
Manage
|
||||
</a>
|
||||
<ul class="dropdown-menu" aria-labelledby="manageDropdown">
|
||||
<li><a class="dropdown-item" href="/admin_classes.php">Classes</a></li>
|
||||
<li><a class="dropdown-item" href="/admin_subjects.php">Subjects</a></li>
|
||||
<li><a class="dropdown-item" href="/admin_teachers.php">Teachers</a></li>
|
||||
<li><a class="dropdown-item" href="/admin_workloads.php">Workloads</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-item"><a class="nav-link" href="/timetable.php">Timetable</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="/logout.php">Logout</a></li>
|
||||
<?php else: ?>
|
||||
<li class="nav-item"><a class="nav-link" href="/demo.php">Demo</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="/login.php">Login</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="/register.php">Register</a></li>
|
||||
<?php endif; ?>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
<?php require_once __DIR__ . '/includes/navbar.php'; ?>
|
||||
|
||||
<header class="hero-section text-white text-center">
|
||||
<div class="container">
|
||||
|
||||
@ -125,42 +125,7 @@ foreach ($teacher_schedule_raw as $lesson) {
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<nav class="navbar navbar-expand-lg navbar-light bg-white sticky-top shadow-sm">
|
||||
<div class="container">
|
||||
<a class="navbar-brand fw-bold" href="/">Haki Schedule</a>
|
||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
|
||||
<span class="navbar-toggler-icon"></span>
|
||||
</button>
|
||||
<div class="collapse navbar-collapse" id="navbarNav">
|
||||
<ul class="navbar-nav ms-auto">
|
||||
<li class="nav-item"><a class="nav-link" href="/">Home</a></li>
|
||||
<?php if (isset($_SESSION['user_id'])): ?>
|
||||
<?php if ($role === 'admin'): ?>
|
||||
<li class="nav-item dropdown">
|
||||
<a class="nav-link dropdown-toggle" href="#" id="manageDropdown" role="button" data-bs-toggle="dropdown" aria-expanded="false">
|
||||
Manage
|
||||
</a>
|
||||
<ul class="dropdown-menu" aria-labelledby="manageDropdown">
|
||||
<li><a class="dropdown-item" href="/admin_classes.php">Classes</a></li>
|
||||
<li><a class="dropdown-item" href="/admin_subjects.php">Subjects</a></li>
|
||||
<li><a class="dropdown-item" href="/admin_teachers.php">Teachers</a></li>
|
||||
<li><a class="dropdown-item" href="/admin_workloads.php">Workloads</a></li>
|
||||
<li><a class="dropdown-item" href="/admin_timeslots.php">Timeslots</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="nav-item"><a class="nav-link" href="/timetable.php">Class Timetable</a></li>
|
||||
<?php endif; ?>
|
||||
<li class="nav-item"><a class="nav-link active" href="/teacher_timetable.php">Teacher Timetable</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="/logout.php">Logout</a></li>
|
||||
<?php else: ?>
|
||||
<li class="nav-item"><a class="nav-link" href="/demo.php">Demo</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="/login.php">Login</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="/register.php">Register</a></li>
|
||||
<?php endif; ?>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
<?php require_once 'includes/navbar.php'; ?>
|
||||
|
||||
<div class="container mt-4">
|
||||
<div class="d-flex justify-content-between align-items-center mb-4">
|
||||
|
||||
@ -94,12 +94,12 @@ try {
|
||||
$workloads = [];
|
||||
try {
|
||||
$workloads_stmt = $pdo->prepare("
|
||||
SELECT w.id, c.name as class_name, s.name as subject_name, w.lessons_per_week, w.created_at, w.class_id, w.subject_id
|
||||
SELECT w.id, c.name as class_name, s.name as subject_name, w.lessons_per_week, w.class_id, w.subject_id
|
||||
FROM workloads w
|
||||
JOIN classes c ON w.class_id = c.id
|
||||
JOIN subjects s ON w.subject_id = s.id
|
||||
WHERE w.teacher_id = ? AND w.school_id = ?
|
||||
ORDER BY w.created_at DESC
|
||||
ORDER BY c.name, s.name
|
||||
");
|
||||
$workloads_stmt->execute([$teacher_id, $school_id]);
|
||||
$workloads = $workloads_stmt->fetchAll(PDO::FETCH_ASSOC);
|
||||
@ -120,22 +120,7 @@ try {
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<nav class="navbar navbar-expand-lg navbar-light bg-white sticky-top shadow-sm">
|
||||
<div class="container">
|
||||
<a class="navbar-brand fw-bold" href="dashboard.php">Haki Schedule</a>
|
||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
|
||||
<span class="navbar-toggler-icon"></span>
|
||||
</button>
|
||||
<div class="collapse navbar-collapse" id="navbarNav">
|
||||
<ul class="navbar-nav ms-auto">
|
||||
<li class="nav-item"><a class="nav-link" href="dashboard.php">Dashboard</a></li>
|
||||
<li class="nav-item"><a class="nav-link active" href="teacher_workload.php">My Workload</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="teacher_timetable.php">My Timetable</a></li>
|
||||
<li class="nav-item"><a class="nav-link" href="logout.php">Logout</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
<?php require_once __DIR__ . '/includes/navbar.php'; ?>
|
||||
|
||||
<main class="container py-5">
|
||||
<div class="row justify-content-center">
|
||||
|
||||
@ -204,8 +204,8 @@ function save_timetable($pdo, $class_timetables, $timeslots) {
|
||||
try {
|
||||
$pdo->beginTransaction();
|
||||
$pdo->exec('SET FOREIGN_KEY_CHECKS=0');
|
||||
$pdo->exec('TRUNCATE TABLE schedule_teachers');
|
||||
$pdo->exec('TRUNCATE TABLE schedules');
|
||||
$pdo->exec('DELETE FROM schedule_teachers');
|
||||
$pdo->exec('DELETE FROM schedules');
|
||||
$pdo->exec('SET FOREIGN_KEY_CHECKS=1');
|
||||
|
||||
$stmt = $pdo->prepare(
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user