Role & Permission System

Pre-defined Roles

RoleDisplay NameCore Permissions
campus_adminBranch HeadFull campus management (limited to assigned campus)
accountantAccountantFees, invoices, financial reports
teacherTeacherAttendance, gradebook, homework
operatorOperatorGradebook management
studentStudentRead-only (future portal access)
parentParentView child's grades, attendance, book meetings
receptionistReceptionistStudent inquiries, basic data entry
finance_managerFinance ManagerFull financial control (created dynamically)

Granular Capabilities

Finance Capabilities:

ik_manage_expenses       → Create/edit expenses
ik_approve_expenses → Approve/reject expenses
ik_view_expense_reports → View financial dashboards
ik_manage_budgets → Set budget limits
ik_view_profit_loss → Access P&L statements
ik_export_financial_data → Download CSV/PDF reports

Student Management:

ik_manage_students       → Full CRUD operations
ik_manage_admissions → Process new enrollments
ik_view_students → Read-only student list

Exam Management:

ik_manage_exam_types     → Create exam categories
ik_enter_exam_results → Input marks
ik_publish_exam_results → Make results visible to parents
ik_generate_report_cards → Create PDF report cards

How to Add Custom Roles

php

// Add a custom role
add_role('academic_coordinator', 'Academic Coordinator', [
'read' => true,
'ik_view_students' => true,
'ik_manage_exam_schedules' => true,
'ik_view_exam_analytics' => true
]);

// Assign to user
$user = get_user_by('login', 'jane.coordinator');
$user->add_role('academic_coordinator');

Comments are closed.

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}
💬 Ask Me Anything!