/home/techb158/workloadmatch.com/Teacher
NameSizeModeActions
Inc/-0755rm
accounting.php190670644editdlrm
accounting_bak.php.disabled221410644editdlrm
chat.php95680644editdlrm
chat_bak.php.disabled72200644editdlrm
dashboard.php141520644editdlrm
dashboard_BAK.php141670644editdlrm
dashboard_bak.php.disabled26840644editdlrm
dashboard_bak1.php130840644editdlrm
footer.php166120644editdlrm
getlang.php3190644editdlrm
main-header-inc.php19370644editdlrm
main-header.php127850644editdlrm
profile.php146320644editdlrm
profile_bak.php.disabled180840644editdlrm
reference_reports.php169870644editdlrm
reference_reports_bak.php.disabled98520644editdlrm
secretarial.php189870644editdlrm
secretarial_bak.php.disabled220070644editdlrm
selectTransactionType.php6030644editdlrm
teacher_absence.php109960644editdlrm
Transaction_Type.php13710644editdlrm
unavailability.php104860644editdlrm
Edit: /home/techb158/workloadmatch.com/Teacher/dashboard.php (14152B)
prepare(" SELECT trv.page_name, trv.is_visible FROM teacher_report_visibility trv JOIN teacher_profile tp ON tp.Manager_ID = trv.Manager_ID WHERE tp.Teacher_ID = ? "); if ($stmt) { $stmt->bind_param("s", $Teacher_ID); $stmt->execute(); $res = $stmt->get_result(); while ($row = $res->fetch_assoc()) { switch ($row['page_name']) { case 'dashboard_welcome': $showWelcome = (int)$row['is_visible'] === 1; break; case 'dashboard_box_accounting': $showAcctBox = (int)$row['is_visible'] === 1; break; case 'dashboard_box_secretarial': $showSecBox = (int)$row['is_visible'] === 1; break; case 'dashboard_upcoming_sessions': $showSessions = (int)$row['is_visible'] === 1; break; } } $stmt->close(); } // Semester years that have data for this teacher $availYears = []; $stmt = $mysqli->prepare("SELECT DISTINCT YEAR(Start_Date) AS Yr, MONTH(Start_Date) AS Mo FROM teacher_course_assignments WHERE Teacher_ID = ? ORDER BY Start_Date DESC"); $stmt->bind_param("s", $Teacher_ID); $stmt->execute(); $res = $stmt->get_result(); while ($row = $res->fetch_assoc()) { $sy = (int)$row['Yr']; $mo = (int)$row['Mo']; $semYr = ($mo >= 8) ? $sy : $sy - 1; if (!in_array($semYr, $availYears)) $availYears[] = $semYr; } $stmt->close(); // Selected semester (from GET, or auto-detect) $currentMonth = (int)date('m'); $currentYear = (int)date('Y'); $defaultYear = ($currentMonth >= 8) ? $currentYear : $currentYear - 1; $semesterYear = isset($_GET['semester_year']) ? (int)$_GET['semester_year'] : $defaultYear; if (!in_array($semesterYear, $availYears) && !empty($availYears)) $semesterYear = $availYears[0]; $augustFirst = new DateTime("$semesterYear-08-01"); $dayOfWeek = (int)$augustFirst->format('N'); $daysUntilMonday = ($dayOfWeek === 1) ? 0 : (8 - $dayOfWeek) % 7; $semesterStart = clone $augustFirst; $semesterStart->modify("+$daysUntilMonday days"); $semesterEnd = new DateTime(($semesterYear + 1) . '-06-30'); $semStartStr = $semesterStart->format('Y-m-d'); $semEndStr = $semesterEnd->format('Y-m-d'); // Teacher profile data $stmt = $mysqli->prepare("SELECT First_Name, Last_Name, User_Img, Load_Hours, Profile_Status FROM teacher_profile WHERE Teacher_ID = ?"); $stmt->bind_param("s", $Teacher_ID); $stmt->execute(); $stmt->bind_result($tFirstName, $tLastName, $tImg, $tLoadHours, $tStatus); $stmt->fetch(); $stmt->close(); $tFullName = $tFirstName . ' ' . $tLastName; $tImg = $tImg ?: 'avatar.png'; // Status badge $statusBadge = ''; $statusIcon = ''; switch ($tStatus) { case 'Online': $statusBadge = 'label-success'; $statusIcon = 'fa-check-circle'; break; case 'Busy': $statusBadge = 'label-warning'; $statusIcon = 'fa-clock-o'; break; case 'Unavailable': $statusBadge = 'label-default'; $statusIcon = 'fa-minus-circle'; break; default: $statusBadge = 'label-danger'; $statusIcon = 'fa-ban'; } // Preferences count per program $prefCounts = [1 => 0, 2 => 0]; $stmt = $mysqli->prepare("SELECT Program_ID, COUNT(*) AS cnt FROM teacher_course_preferences WHERE Teacher_ID = ? GROUP BY Program_ID"); $stmt->bind_param("s", $Teacher_ID); $stmt->execute(); $res = $stmt->get_result(); while ($row = $res->fetch_assoc()) { $prefCounts[(int)$row['Program_ID']] = (int)$row['cnt']; } $stmt->close(); // Program names $progNames = []; $res = $mysqli->query("SELECT Program_ID, Program_Name FROM Programs"); while ($row = $res->fetch_assoc()) { $progNames[(int)$row['Program_ID']] = $row['Program_Name']; } // Active assignments count (current semester) $stmt = $mysqli->prepare("SELECT COUNT(*) FROM teacher_course_assignments WHERE Teacher_ID = ? AND Start_Date >= ? AND End_Date <= ?"); $stmt->bind_param("sss", $Teacher_ID, $semStartStr, $semEndStr); $stmt->execute(); $stmt->bind_result($totalAssignments); $stmt->fetch(); $stmt->close(); // Upcoming sessions (only if enabled) $upcomingSessions = []; if ($showSessions) { $stmt = $mysqli->prepare(" SELECT c.Course_Name, tca.Start_Date, tca.Time_Slot, cgs.Start_Time, cgs.End_Time, g.Group_Name, p.Program_Name FROM teacher_course_assignments tca JOIN course_group_schedule_main cgs ON tca.Schedule_ID = cgs.Schedule_ID JOIN Courses c ON cgs.Course_ID = c.Course_ID JOIN manager_group_name g ON cgs.Group_ID = g.Group_ID JOIN Programs p ON cgs.Program_ID = p.Program_ID WHERE tca.Teacher_ID = ? AND tca.Start_Date >= CURDATE() ORDER BY tca.Start_Date ASC LIMIT 10 "); $stmt->bind_param("s", $Teacher_ID); $stmt->execute(); $res = $stmt->get_result(); while ($row = $res->fetch_assoc()) { $upcomingSessions[] = $row; } $stmt->close(); } // Total assigned hours (current semester) $stmt = $mysqli->prepare(" SELECT COALESCE(SUM(cgs.Course_Hours), 0) AS AssignedHours FROM teacher_course_assignments tca JOIN course_group_schedule_main cgs ON tca.Schedule_ID = cgs.Schedule_ID WHERE tca.Teacher_ID = ? AND tca.Start_Date >= ? AND tca.End_Date <= ? "); $stmt->bind_param("sss", $Teacher_ID, $semStartStr, $semEndStr); $stmt->execute(); $stmt->bind_result($assignedHours); $stmt->fetch(); $stmt->close(); ?> CMS | Dashboard

Dashboard Welcome back,

Photo

· Current Hours: · -
Current Hours
Preferences

Accounting Preferences

Manage

Secretarial Preferences

Manage

Upcoming Sessions

No upcoming sessions scheduled.