You control accounts, access, and the academic structure everything else hangs off.
1. Three concepts to keep apart
| Programme semester |
Where a student is in the syllabus — Year 1 Semester 2 and so
on. Each owns its procedure list. Same structure every year. |
| Academic session |
The calendar term teaching runs in — 20262, 20263 (short),
20264. Assessments are stamped with the session covering their date. |
| Intake |
The cohort a student belongs to — “Mac 2026”. |
A student from intake Mac 2026 sits in programme semester Year 1 Semester 2
during session 20262.
2. Creating accounts
Registration is invitation-only; there is no public sign-up.
- Invite Codes — enter a role and the person's email. They receive an
activation link immediately, bound to that address so forwarding it is useless.
Use Resend if it is missed and Revoke to cancel.
- Users → Import — bulk-create from CSV with
name, email, roles and optional password, student_id, intake,
semester. Bad rows are reported and skipped; the rest import.
- Users → Add User — one at a time.
Google sign-in never creates accounts. Someone with a valid UiTM address but no
{{ \App\Models\Setting::get('system_short_name', 'TRACE') }} account cannot get in until you invite them.
3. Managing users
- Filter by role, semester, intake or status. “No semester set” finds students the import
left unplaced.
- Tick rows for bulk actions: activate, deactivate, add or remove a role, set semester,
set intake, archive. Your own account is always skipped.
- Archive is a soft delete — assessments and reports are preserved and the
account can be restored.
- View as (the eye icon) signs you in as that user so you can see exactly
what they see. An amber bar returns you to your own account.
4. Moving students between semesters
Cohorts handles progression.
- Pick an intake and press Preview — it shows exactly who moves and from
where, before anything changes.
- Advance moves each student forward one semester. Students already in the
final semester are left alone; students with no semester are skipped.
- Set to a specific semester places a freshly imported group directly.
Intakes are managed on the same page. Renaming one updates every student holding it, so the
list and the students never drift apart.
5. Academic structure
- Programme Semesters — add, rename, renumber or reorder. The order defines
what “advance to the next semester” means. A semester holding procedures or students
cannot be deleted.
- Academic Sessions — record each term with its code and dates. A short
semester overlapping a regular one takes precedence for stamping, because its window is
narrower. Use Match them to sessions by date to stamp assessments recorded
before the session existed.
6. Roles and permissions
Access is driven by permissions, not role names, so a role you create works immediately.
The four built-in roles cannot be renamed or deleted, but their permissions are editable.
Superadmin always holds every permission.
Guards prevent lockout: you cannot deactivate your own account, remove your own admin
access, or strip the role from the last remaining superadmin.
7. CI assignments
Assignment decides who writes the Clinical Performance Report — not who may
assess. Choose a semester, then set an instructor per student. Saving applies to the page you
are on, so save before changing page.
8. Settings and audit
- Settings — system names, footer, support email, registration mode,
permitted Google domains, and the password sign-in fallback.
- Audit Logs — every login, assessment, role change, impersonation and
settings edit, filterable by action, person and date.