School Reference Public

Screen, Route & Data Reference

The quick-reference for ERPat School: every staff page with its route and base permission, the two portals, the full permission list, the status vocabularies (application, grade release, attendance, support, visitor), the audited actions, and the settings keys.

Guide version: r1 Module version: 0.2.0 Updated: 2026-07-22 Estimated time: 8 min 3 views
REFERENCE

Screen, Route & Data Reference

One dense page you can keep open in another tab: every School screen with its route and gating permission, the two portals, the complete permission list, the status words each screen uses, the audited actions, the settings keys, and the seeded reference data. Every value here is copied from the live module — see Research & Evidence Base for the files it came from.

????
Routes are shown as text (e.g. school/grades) — they are ERPat app URLs, not links in this guide. The slug is school, screens live under the /school prefix, and the module is turned on with the module_school setting. This is version 0.2.0.

Staff back-office pages

The staff sidebar carries a single School group (graduation-cap icon, in the Academics category) with one permission-gated child per page. Each row shows the menu label, the app route, the controller class that serves it, and the base permission that must be granted for the page to appear at all.

Menu labelRouteControllerBase permissionNotes
DashboardschoolSchoolschoolPermission-filtered quick-link cards to the pages below.
Enrollment & Admissionsschool/enrollmentSchool_enrollmentschool_enrollmentApplications, requirements checklist, approve → roster. See Enrollment.
Learnersschool/learnersSchool_learnersschool_learnersLearner master index (LRN + PII). See Learners & Guardians.
Parents & Guardiansschool/guardiansSchool_guardiansschool_guardiansDirectory + the verified learner↔guardian link.
Personnel & Teachersschool/personnelSchool_personnelschool_personnelMarks which staff users are school personnel.
Academic Structureschool/academicsSchool_academicsschool_academicsYears, terms, sections, subjects, rooms. See Academic Structure.
LMS Bridgeschool/lms_bridgeSchool_lmsschool_lmsMenu also gated by module_courses (Learn). See LMS & Communication.
Attendanceschool/attendanceSchool_attendanceschool_attendanceLearner attendance — separate from HR/biometric attendance.
Grades & Report Cardsschool/gradesSchool_gradesschool_gradesClass record + release governance. See Grading Engine.
↳ Report Cardsschool/report_cardsSchool_report_cardsschool_gradesSF9-style cards; shares the Grades page/permission. See Report Cards.
Communicationschool/communicationSchool_communicationschool_communicationLauncher into core Announcements / Messages / Events.
Student Supportschool/supportSchool_supportschool_supportGuidance / behavioral / attendance cases.
↳ Safeguardingschool/safeguardingSchool_safeguardingschool_child_protectionConfidential child-protection sibling; segregated + audited. See Data Privacy.
Visitor Passschool/visitorsSchool_visitorsschool_visitorsMenu gated by school_visitor_pass_enabled. See Gate playbook.
Facilities & Roomsschool/facilitiesSchool_facilitiesschool_facilitiesRoom summary; reuses Helpdesk for facility tickets (fail-safe).
Reports & Complianceschool/reportsSchool_reportsschool_reportsSummary, LIS validator, SF1-style export. See Compliance.
School Settingsschool/settingsSchool_settingsschool_settingsPortal toggles + default grading policy; saving is audited.

The Report Cards and Safeguarding rows (marked ↳) are not top-level menu entries in their own right — Report Cards lives alongside Grades, and Safeguarding is the confidential surface reached only by holders of school_child_protection.

Public portals

The two portals are not in the staff sidebar. They are reached by customer accounts (parents and students are customer users distinguished by school_guardians.user_id / school_learners.user_id) and reuse the core customer sign-in, so they also depend on the core allow_customer_signin being enabled.

PortalRouteControllerGate settingsWhat it shows
Parent portal school/parent
dispatcher school/portal
School_parent_portal module_school='1' AND school_parent_portal_enabled='1' Only the parent's verified children, and only released grades, plus each child's attendance summary and active enrollment. IDOR-proof — the child set comes strictly from the session user's verified guardian links, never a URL id.
Student portal school/student School_student_portal module_school='1' AND school_student_portal_enabled='1' The learner resolved from school_learners.user_id (session user only): own released grades, attendance summary, active enrollment. Unlinked account → a "no record" page.

Permissions

Every School permission is registered in the Roles editor. The base permission is school; each page has an on/off "Enabled" enabler, most pages add CRUD children, and a small set of restricted / segregation-of-duties permits gate the sensitive actions.

Base & per-page enablers

Permission keyUnlocks
schoolBase access to the module and the Dashboard.
school_enrollmentEnrollment & Admissions page.
school_learnersLearners page.
school_guardiansParents & Guardians page.
school_personnelPersonnel & Teachers page.
school_academicsAcademic Structure page.
school_lmsLMS Bridge page.
school_attendanceAttendance page.
school_gradesGrades & Report Cards page.
school_communicationCommunication launcher page.
school_supportStudent Support page.
school_visitorsVisitor Pass page (also needs school_visitor_pass_enabled).
school_facilitiesFacilities & Rooms page.
school_reportsReports & Compliance page.
school_settingsSchool Settings page.

CRUD children

ScreenCreateUpdateDelete
Enrollmentschool_enrollment_createschool_enrollment_updateschool_enrollment_delete
Learnersschool_learners_createschool_learners_updateschool_learners_delete
Guardiansschool_guardians_createschool_guardians_updateschool_guardians_delete
Personnelschool_personnel_createschool_personnel_updateschool_personnel_delete
Academicsschool_academics_createschool_academics_updateschool_academics_delete
Attendanceschool_attendance_update
Gradesschool_grades_update
Supportschool_support_createschool_support_update
Visitorsschool_visitors_create
Facilitiesschool_facilities_createschool_facilities_updateschool_facilities_delete

Attendance and Grades expose only an _update child (marking a register / encoding a class record); Support has no delete; Visitors expose only _create (issuing and scanning passes).

Restricted & segregation-of-duties

Permission keyLabelPurpose
school_grade_releaseSubmit Grades for ReleaseThe teacher/encoder submits a class record for release. Must be a different person from the approver.
school_grade_approveApprove / Publish Grades & CardsThe school head approves & releases grades and generates report cards. No self-publishing.
school_healthLearner Health / Medical (view)Restricted view of learner health/medical data; audited on view (view_health, critical).
school_child_protection
+ _create / _update
Child Protection / SafeguardingRestricted, segregated confidential cases; audited on read (view_safeguarding, critical). Also reveals the guarded Safeguarding link on the Support page.
school_exportExport / Compliance DownloadsRun the SF1-style masterlist export (audited, export).
⚠️
Never give school_grade_release and school_grade_approve to the same person. Segregation of duties on grades is enforced in code — the encoder cannot approve their own grades. See Data Privacy & Safeguarding and Roles & Access Map.

Status vocabularies

Each screen uses a fixed set of status words. Colours below are only a reading aid for this guide, not colours guaranteed in the app.

Enrollment application

StatusMeaning
draftBeing prepared; editable. The document checklist is copied in on create.
submittedSent for decision (from draft or a rejected application).
for_approvalAwaiting the registrar's approve/reject decision.
approvedAccepted; the roster enrollment is materialised. Audited (approve_enrollment).
rejectedDeclined; a decision record is written. Audited (reject_enrollment, warning).
withdrawnPulled out of the pipeline.

Requirements checklist

pending
Awaiting the documentDefault state on create
submitted
Document receivedNot yet verified
verified
Checked & acceptedSatisfies a mandatory requirement
waived
Requirement waivedAlso satisfies the approval gate

Grade release governance

draft
Encoding; editable
submitted
school_grade_release
approved
school_grade_approve
released
Locked, visible, audited

Ordered, no skipping: submit_classapprove_classrelease_class. Releasing is audited (release_grades, critical) and locks the grades; only released grades reach report cards and portals.

Learner attendance

present
PresentIn class
absent
AbsentChoose a reason
late
LateEnter a time-in
excused
ExcusedChoose a reason

Support case

StatusMeaning
openNewly created (case number SC-yymmdd-XXXX auto-generated).
investigatingBeing worked; progress notes added.
resolvedConcluded successfully.
referredHanded to another party/service.
closedFinalised.

Case severity is one of low medium high critical.

Visitor pass

issued
Pass code generated
active
Checked in (scan_visitor)
used
Checked out
expired
expiredValidity window passed
revoked
revokedCancelled by staff

Other vocabularies

FieldValues
Learner statusactive inactive graduated transferred_out
Enrollment typenew, re_enrollment, transferee, balik_aral, moved_in
School year statusplanning active closed (plus the is_current flag)
Term typequarter, trimester, semester
Room typeclassroom, laboratory, library, gym, clinic, office
Roster enrollmentenrolled (materialised on approval)
Report-card remarkPromoted (GA ≥ 75) · Retained

Audited actions

These sensitive actions write a dedicated entry to the audit trail (registered in config/system_logs.php). Ordinary create/update/delete is captured by the base activity log. See Data Privacy & Safeguarding.

ActionWhereSeverity
approve_enrollmentEnrollment — application approvedinfo
reject_enrollmentEnrollment — application rejectedwarning
verify_guardianGuardians — guardian↔learner link verifiedcritical
view_healthLearner health/medical record viewedcritical
release_gradesGrades released / report card generatedcritical
view_safeguardingSafeguarding case readcritical
scan_visitorVisitor checked in at the gateinfo
exportMasterlist / compliance downloadinfo
update_settingsSchool Settings savedinfo

Settings keys

Set on the School Settings page (school/settings); saving is audited (update_settings). See Administration, Settings & Portals.

Setting keyValuesEffect
school_parent_portal_enabledon / offTurns the parent portal on or off independently.
school_student_portal_enabledon / offTurns the student portal on or off independently.
school_visitor_pass_enabledon / offShows or hides the Visitor Pass page.
school_default_grading_policydo8_2015 (default) · matatag_do10_2024The default grading policy new schemes follow.
????️
The current school year is NOT a setting. It is set in Academic Structure by marking one School Year as current (the is_current flag), which drives every "current SY" query. Separately, the portals also require the core allow_customer_signin to be enabled, and the module itself is turned on by module_school in Settings → Manage Modules.

Seeded reference data

The Reference tab in Academic Structure exposes read-only DepEd reference data that ships with the module — you don't edit it. See Grading Engine for how the weight buckets are used.

Grade levels & SHS tracks

Grade levels
The DepEd K to 12 structure, Kinder through Grade 12 (RA 10533).
SHS tracks & strands
Senior High School tracks and their strands, used on sections and subjects for Grades 11–12.

DepEd Order 8, s.2015 — subject-group weight buckets (WW / PT / QA)

Subject groupWritten WorkPerformance TaskQuarterly Assessment
Languages · AP · EsP30%50%20%
Science · Math40%40%20%
MAPEH · EPP · TLE20%60%20%

MATATAG (DepEd Order 010, s.2024) uses a uniform 25 / 50 / 25 across all subject groups with a floor-60 linear transmutation and an elementary trimester, phased in by grade and school year. Weights are data, not code — resolved from seeded config per subject group + grade level + school year.

Grade descriptors

Final gradeDescriptor
90 – 100Outstanding
85 – 89Very Satisfactory
80 – 84Satisfactory
75 – 79Fairly Satisfactory
Below 75Did Not Meet Expectations

Final grades are whole numbers, floored at 60 and capped at 100. Passing = 75.


See also

Was this guide helpful?

Report a content problem