How mohammedsamisagheer-code/schedules works
Class Schedule Portal supports public weekly and exam timetable viewing, plus authenticated administration and teacher access. The main workflow is administrators maintaining academic data, generating or editing weekly schedules under scheduling constraints, and publishing those schedules for students and teachers; exam scheduling is a separate domain stage. Role and permission checks govern restricted administration, while teachers can view their own timetable. Relationships reflect the README and sampled PHP pages; several admin modules and authentication details are represented at directory-level paths because their implementation was not sampled.
Main entry points: class_schedule_20260614_1644.sql Schedule database · auth_check.php Session and roles · dashboard.php Admin dashboard · schedule.php Weekly timetable
Components 20
Public schedules
- Landing page
index.php - Weekly timetable
schedule.php - Exam timetable
exams.php - Public navigation
includes/public_header.php
Identity and access
- User login
login.php - Teacher login
teacher_login.php - Session and roles
includes/auth_check.php - User permissions
includes/config.php
Administration
- Admin dashboard
Admin/dashboard.php - Account management
Admin/account.php - Academic data CRUD
Admin - Permissions and settings
Admin
Schedule operations
- Weekly schedule
Admin/view_schedule.php - Personal timetable
Admin/my_schedule.php - Exam scheduling
Admin/exam_schedule.php - Database configuration
includes/config.php
Other components
- Students
- Teachers
- Administrators
- Schedule database
includes/class_schedule_20260614_1644.sql
Connections 25
- Students → Landing page: open portal
- Landing page → Weekly timetable: open timetable
- Weekly timetable → Public navigation: renders navigation
- Exam timetable → Public navigation: renders navigation
- Weekly timetable → Schedule database: reads schedules
- Exam timetable → Schedule database: reads exams
- Teachers → Teacher login: sign in
- Administrators → User login: sign in
- User login → Session and roles: establishes session
- Teacher login → Session and roles: establishes session
- Session and roles → Admin dashboard: routes by role
- Session and roles → Personal timetable: checks access
- Session and roles → User permissions: checks grants
- Admin dashboard → Academic data CRUD: manages records
- Admin dashboard → Permissions and settings: manages access
- Admin dashboard → Weekly schedule: opens schedules
- Admin dashboard → Exam scheduling: opens exams
- Academic data CRUD → Schedule database: reads and writes
- Permissions and settings → Schedule database: updates settings
- Weekly schedule → Database configuration: uses settings
- Weekly schedule → Schedule database: generates and edits
- Personal timetable → Schedule database: reads personal schedule
- Exam scheduling → Schedule database: generates and edits exams
- Account management → Session and roles: checks account access
- Account management → Schedule database: updates account