How shimi1327/bmadojt works
OJT Route is a role-based OJT management application for students, instructors, and administrators. Students submit required documents and manage attendance; instructors review submissions and attendance-related requests; administrators manage users and operational settings. The map emphasizes those workflows and shared authentication, persistence, and notification layers. The README is empty, so capabilities are inferred from the file tree and source index; several feature implementations were not sampled, and their connections are omitted where not evidenced.
Main entry points: student Student Portal · admin Admin Portal · EmailService.php Email Notifications · instructor Instructor Portal
Components 32
Role Interfaces
- Student Portal
public/student - Instructor Portal
public/instructor - Admin Portal
public/admin - Instructor Navigation
public/instructor/navigation-header.php - Instructor Sidebar
public/instructor/teacher-sidebar.php - Student Sidebar
public/student/student-sidebar.php - Admin Sidebar
public/admin/sidebar.php
Identity and Admin
- Authentication
src/Services/AuthenticationService.php - Access Control
src/Middleware/AuthMiddleware.php - User Management
src/Controllers/UserController.php - User Operations
src/Services/UserService.php - User Records
src/Models/User.php
Document Workflow
- Student Documents
public/student/documents.php - Document Submission
src/Controllers/DocumentController.php - Document Operations
src/Services/DocumentService.php - Instructor Review
src/Controllers/InstructorDocumentController.php - Review Operations
src/Services/InstructorDocumentService.php - Document Records
src/Models/Document.php
Attendance and Requests
- Attendance Features
src/Services/AttendanceService.php - Attendance Reporting
src/Controllers/AdminAttendanceController.php - Timeout Requests
src/Controllers/ForgotTimeoutController.php - Request Review
src/Services/ForgotTimeoutReviewService.php
Shared Services
- Overdue Monitoring
src/Services/OverdueService.php - Email Notifications
src/Services/EmailService.php - Email Templates
src/Templates/EmailTemplates.php - Application Database
src/Utils/Database.php - Activity Logging
src/Utils/ActivityLogger.php - Admin Authorization
src/Utils/AdminAccess.php
Other components
- Student
- Instructor
- Administrator
- Mail System
Connections 34
- Student → Student Portal: uses portal
- Instructor → Instructor Portal: uses portal
- Administrator → Admin Portal: uses portal
- Student Portal → Student Documents: opens documents
public/student/documents.php - Student Documents → Document Operations: uses
public/student/documents.php - Instructor Portal → Instructor Review: reviews submissions
public/instructor/review_documents.php - Instructor Review → Review Operations: delegates to
src/Controllers/InstructorDocumentController.php - Instructor Review → Email Notifications: sends notices
src/Controllers/InstructorDocumentController.php - Document Submission → Document Operations: creates records
src/Controllers/DocumentController.php - Document Submission → Email Notifications: notifies users
src/Controllers/DocumentController.php - Document Submission → Access Control: checks access
src/Controllers/DocumentController.php - Document Operations → Document Records: uses records
src/Services/DocumentService.php - Review Operations → Document Records: uses records
src/Services/InstructorDocumentService.php - Access Control → Authentication: checks identity
src/Middleware/AuthMiddleware.php - Authentication → User Records: loads users
src/Services/AuthenticationService.php - Admin Portal → User Management: manages users
src/Controllers/UserController.php - User Management → User Operations: delegates to
src/Controllers/UserController.php - User Operations → User Records: uses records
src/Services/UserService.php - Admin Portal → Attendance Reporting: views reports
- Attendance Reporting → Attendance Features: requests reports
src/Controllers/AdminAttendanceController.php - Student Portal → Attendance Features: records attendance
- Student Portal → Timeout Requests: submits requests
- Timeout Requests → Request Review: uses review service
src/Controllers/ForgotTimeoutController.php - Overdue Monitoring → Email Notifications: sends summaries
cron/check_overdue_documents.php - Email Notifications → Email Templates: renders content
src/Services/EmailService.php - Email Notifications → Mail System: sends mail
- Student Portal → Student Sidebar: renders navigation
public/student/documents.php - Instructor Portal → Instructor Navigation: renders header
public/instructor/review_documents.php - Instructor Portal → Instructor Sidebar: renders navigation
public/instructor/review_documents.php - Admin Portal → Admin Sidebar: renders navigation
public/admin/users_view.php - Application Database → User Records: stores records
src/Models/User.php - Application Database → Overdue Monitoring: stores state
src/Services/OverdueService.php - Application Database → Activity Logging: stores logs
src/Utils/ActivityLogger.php - Admin Portal → Admin Authorization: checks privileges
public/admin/api/get_template_preview.php