This is the Salvation Army's E-Learning platform used for theological education across multiple countries including Kenya, Rwanda, Burundi, Zimbabwe, and others. The platform supports the full educational lifecycle: student enrollment, curriculum management, online examinations, assignment submission and grading, reading material distribution, certificate generation, and inter-user communication.
As an Administrator, you hold the highest authority on the platform and are responsible for overseeing all operations, approving students and exams, configuring system settings, managing users, and ensuring data integrity.
1.2 System Requirements
To use the Web Admin panel, you need a modern web browser with JavaScript enabled.
Browser
Minimum Version
Google Chrome
120 or later
Mozilla Firefox
120 or later
Apple Safari
17 or later
Microsoft Edge
120 or later
Additional requirements:
Stable internet connection
Screen resolution of 1280x720 or higher recommended (the interface is responsive but works best on desktop)
Pop-up blockers should allow the platform domain for file downloads
1.3 Accessing the Web Admin
To access the website, open your browser and navigate to:
https://app.saltcollegeandresourcecentre.com
If you are not logged in, you will be redirected to the login page.
1.4 Logging In
The platform uses a three-step authentication flow for security. Follow these steps to log in:
Step 1: Enter Credentials
On the login page, you will see the College branding on the left and the login form on the right.
In the Username field, enter the username provided to you by the system administrator. For admin users, this is typically your assigned username (not a registration number).
In the Password field, enter your password. You can click the eye icon to toggle password visibility.
Optionally, check Remember Me to persist your session.
Click the Login button.
If credentials are valid, the system advances to Step 2. If invalid, an error message appears in a red banner above the form.
Step 2: Verify Access Code (OTP)
After successful credential verification, an access code (OTP) is sent to your registered phone number via SMS and/or email, depending on the system notification channel configuration.
A blue information banner displays a message confirming the code was sent.
Enter the access code in the large centered input field. The code is typically 6 digits (configurable in System Settings).
Click Verify Access Code.
If the code is incorrect or expired, an error message is displayed. You can click Resend Access Code to receive a new one.
Note: The OTP expiry period is configurable (default: 5 minutes). If your code expires, request a new one using the Resend button.
Step 3: Change Password (if required)
If the system requires you to change your password, you will be presented with a password change form instead of being logged in directly.
An amber warning banner states: "Your password must be changed before you can continue."
Enter your Current Password.
Enter a New Password that meets the following requirements:
At least 8 characters long
Contains at least 1 letter, 1 number, and 1 special character
Re-enter your new password in the Confirm New Password field.
Click Change Password.
On success, you will see a confirmation message and be redirected to log in with your new credentials.
Step Indicator: A progress bar at the top of the form shows three segments. Each lights up as you advance through the authentication steps.
1.5 Navigation
After logging in, you are directed to the Admin Dashboard. The interface consists of:
Sidebar (left): A fixed navigation panel with the College logo at the top, menu items in the middle, and your user profile (name and role) at the bottom. The sidebar has a dark navy background with white text. The currently active page is highlighted in blue.
The sidebar menu items for administrators are:
Dashboard
Users
Students
Grading
Billing
Certificates
Suspensions
Intake Config
Sessions
Achievements
Subjects
Exam Dates
Exam Approvals
Student Exams
Reports
Announcements
Countries
Territories
System Logs
SMS Log
Chat
Schema
Settings
Main Content (right): The main content area to the right of the sidebar displays the active page. Each page has a Page Header at the top showing the page title, a subtitle, and optional action buttons (e.g., "Add Session", "Export Excel").
Theme: The interface supports both light and dark themes. Dark mode adjusts backgrounds, text colors, and card styles for comfortable viewing in low-light environments.
Responsive Layout: On smaller screens, the sidebar collapses and the layout adjusts to single-column views.
1.6 Logging Out
To log out of the platform:
Use the logout option available in the user profile area or the application header.
After logging out, your login session will end and you will be redirected to the login page.
Sessions expire automatically based on the configured token expiry time in System Settings.
Security Note: Always log out when using a shared or public computer. Do not share your credentials or OTP codes with anyone.
2. Dashboard
The Admin Dashboard provides an at-a-glance overview of the platform's operational status. When you log in, this is the first page you see.
2.1 Statistics Cards
The dashboard displays 6 statistic cards arranged in a responsive grid (3 columns on desktop, 2 on tablet, 1 on mobile):
Card
Icon
Color
Description
Total Students
Academic Cap
Blue
The total number of student records in the system
Pending Approvals
User Group
Yellow
Students awaiting approval
Active Subjects
Clipboard
Green
The total number of subjects/courses currently configured
Suspended Students
Shield
Red
The number of currently suspended students
Active Sessions
Document
Purple
The number of academic sessions configured in the system
Total Billing
Currency
Green
Summary total of billing amounts across the platform
While the dashboard is loading data, placeholder cards with a pulsing animation are shown.
2.2 Recent Activity & Quick Actions
Below the statistics cards, two panels appear side by side:
Recent Activity: Displays a feed of recent platform activity as activity occurs.
Quick Actions: Provides shortcut buttons to commonly used admin pages:
Manage Students -- navigates to the Students page
Grading Config -- navigates to the Grading page
Billing -- navigates to the Billing page
Reports -- navigates to the Reports page
3. User Management
This page allows you to view and manage all system users, including administrators, ETOs (Education Training Officers), tutors, and students.
3.1 Viewing All Users
The Users page presents a table with built-in search, sorting, and pagination. The table displays the following columns:
Column
Description
ID
The system-generated user ID
Name
Full name (first name + surname + last name)
Email
User's email address
Contact
Phone number
Role
The user's role (Admin, Tutor, ETO, or Student)
Territory
The Salvation Army territory the user belongs to
Status
Account status, displayed as a colored badge
Searching: Use the search bar at the top of the table (placeholder: "Search users...") to filter users by any visible field. The search provides fast results.
Sorting: Click any column header to sort the table by that column. Click again to toggle between ascending and descending order.
3.2 Creating a New User
To create a new non-student user (Admin, ETO, or Tutor):
Navigate to Users in the sidebar.
Click the Add User button (if available in the page header).
Fill in the required fields:
First Name, Surname, Last Name
Email Address
Contact (Phone Number)
Role -- select from Admin, ETO, or Tutor
Territory -- select the territory this user belongs to
Click Save or Create.
The new user will receive their login credentials via the configured notification channel.
Important: Students are NOT created through this page. Students register themselves through the mobile app or are imported via bulk upload in the Student Management section.
3.3 Modifying User Details
Locate the user in the table using the search bar.
Click on the user row or the Edit action button.
Update the necessary fields.
Click Save to apply changes.
3.4 Resetting User Passwords
If a user is locked out or has forgotten their password:
Find the user in the Users table.
Select the Reset Password action.
The system will generate a temporary password and the user will be required to change their password on next login.
3.5 Locking/Unlocking Accounts
User accounts can be locked (status change) to prevent login:
Find the user in the Users table.
Use the Lock or Unlock action as needed.
A locked user will see an error when attempting to log in.
3.6 User Roles
The platform has four user roles:
Role
Description
Admin
Full platform management -- can access all features, approve all items, configure settings, and manage all users
Tutor
Subject teaching responsibilities -- can create exams, upload assignments and reading materials, mark student work
ETO
Education Training Officer -- provides territory-level oversight, performs first-level approval of student registrations
Student
Learning activities -- can enroll in subjects, take exams, submit assignments, view materials
4. Student Management
This section covers the management of student records, approvals, and data imports.
4.1 Student List
The Students page displays a table with the following columns:
Column
Description
Admission No
The student's unique admission/registration number
Name
Full name (first, surname, last)
Email
Student's email address
Contact
Phone number
Territory
The territory the student belongs to
Level
Current academic level
Status
Admission status, displayed as a colored badge
Applied
Application/registration date
Searching: Use the search bar (placeholder: "Search by name, admission no...") to filter students across all visible fields.
4.2 Student Detail View
Clicking on a student row navigates to a detailed view showing:
Personal information (name, email, phone, territory, rank)
Academic history (enrolled levels, subjects, grades)
Assignment submissions and marks
Exam history and scores
Billing records
Achievement records
Suspension history (if any)
4.3 Bulk Upload of Admission Numbers
To import multiple student admission numbers at once:
Prepare a CSV file with a single column containing admission numbers. The file should have a header row.
Example CSV:
admission_no
2026001
2026002
2026003
Navigate to the Students page.
Click the Bulk Upload button.
Select your CSV file.
Click Upload.
The system processes the file and creates student records with an "Uploaded" status.
A summary of successful imports and any errors is displayed.
4.4 Two-Level Approval Workflow
Student registration follows a multi-step approval workflow. Understanding each status is essential:
Status
Description
Uploaded
Student record was imported via bulk CSV upload
New
Student has self-registered or been newly created
ETO Pending
Awaiting ETO (territory-level) review and approval
Pending Admin
ETO has approved; now awaiting final Admin approval
Approved
Fully approved -- student can access the platform
Rejected
Application was rejected at any stage
Approval Flow
A student record begins as either Uploaded or New.
It moves to ETO Pending, where the territory ETO reviews it.
Once the ETO approves, it moves to Pending Admin.
The Administrator gives final approval, moving the student to Approved status. The student is now active and can use the platform.
As an Admin, to approve students:
Navigate to Students.
Filter or search for students with a "Pending Admin" status.
Review the student's details (name, territory, admission number).
Click Approve to move the student to "Approved" status, or Reject with a reason.
Note: ETOs handle the first level of approval (moving from "ETO Pending" to "Pending Admin"). You perform the second and final approval (moving from "Pending Admin" to "Approved").
4.5 Rank-Based Learning Level Assignment
The system automatically assigns each new student's starting learning level based on their Salvation Army rank. This assignment is enforced during registration and cannot be overridden by administrators.
Student Rank
Starting Level
Progression Path
Soldier
Foundation
Foundation → Certificate → Diploma
Any other rank (Officer, Envoy, etc.)
Certificate
Certificate → Diploma
How It Works
When a student registers (or is imported), the system checks their rank.
Students with the rank of Soldier are automatically placed at the Foundation level. Upon completion of all Foundation subjects, they may apply to progress to the Certificate level, and subsequently to the Diploma level.
Students with any rank other than Soldier (e.g., Officer, Envoy, Captain, Major) are automatically placed at the Certificate level. They skip Foundation entirely and may proceed to the Diploma level after completing Certificate.
This rule is enforced by the system and cannot be overridden by administrators. Soldiers are always forced to start at Foundation, and non-Soldiers always start at Certificate.
Note: If a student's rank is incorrect, the rank itself must be corrected in the student's record. Changing the rank does not retroactively change a student's already-assigned learning level.
4.6 Updating Student Email
Open the student's detail view.
Locate the email field.
Enter the new email address.
Save changes.
Note: Email changes should be verified carefully, as the email is used for OTP delivery and communications.
4.7 Restoring Legacy Student Data
For importing full student records from legacy systems, a 17-column CSV format is supported:
The CSV must include columns for: admission number, first name, surname, last name, email, contact, territory, rank, gender, date of birth, corps/church, appointment date, and additional demographic fields.
Prepare the CSV file following the required column order.
Navigate to the Students page.
Use the Import Legacy Data option.
Upload the CSV file.
Review the import summary for any errors.
5. Subject Management
Subjects (also called courses) are the core units of study in the platform. Each subject belongs to a learning level and has associated costs, pass marks, and exam/assignment configurations.
5.1 Subject List
The Subjects page displays a table with the following columns:
Column
Description
Code
The subject code (see conventions below)
Subject Name
The full name of the subject
Level
The learning level (Foundation, Certificate, or Diploma)
Pass Mark
The minimum score required to pass this subject
Cost
The fee for enrolling in this subject (displayed in currency format)
Status
Active or inactive status, displayed as a colored badge
Searching: Use the search bar (placeholder: "Search subjects...") to filter by subject name, code, or level.
5.2 Creating Subjects
Click the Add Subject button in the page header.
Fill in the required fields:
Subject Code -- must follow the naming conventions described below
Subject Name -- the full descriptive name
Learning Level -- select Foundation, Certificate, or Diploma
Pass Mark -- the minimum passing score (typically 50)
Subject Cost -- the fee charged for this subject
Click Create to save the new subject.
5.3 Modifying Subjects
Find the subject in the table.
Click the Edit action.
Update any fields as needed.
Click Save.
Caution: Changing a subject code or pass mark after students have enrolled may affect their existing records. Make such changes carefully.
5.4 Subject Code Conventions
Subject codes follow a structured format that encodes the learning level, language, and subject area:
Format:[Level][Language][SubjectArea][Number]
Level Prefix:
Prefix
Level
F
Foundation
C
Certificate
D
Diploma
Language Code (optional):
Code
Language
(none)
English (default)
K
Kiswahili
F
French
P
Portuguese
Examples:
Code
Meaning
FPNT01
Foundation, Portuguese, New Testament, subject 01
CF104
Certificate, French, subject 104
CKOT101
Certificate, Kiswahili, Old Testament, subject 101
DD206
Diploma, (English), Doctrine, subject 206
5.5 Approving Student Subject Selections
When students enroll in subjects, their selections may require admin approval:
Review incoming subject selection requests.
Verify the student meets prerequisites for the selected subject and level.
Approve or reject the selection.
5.6 Subject Progression by Level
Subjects are organized into learning levels (Foundation, Certificate, Diploma), and students must complete all subjects in one level before they can access subjects in the next level.
How Progression Works
The administrator configures how many subjects each learning level contains (e.g., 11 subjects in Foundation).
A student must pass all subjects in their current level before the system makes subjects in the next level visible to them.
For example, if Foundation has 11 subjects, all 11 must be completed and passed before Certificate-level subjects become available.
The same rule applies when moving from Certificate to Diploma.
What Administrators Should Know
The number of subjects per level is determined by the subjects you create and assign to each learning level.
Progression is automatic -- when a student passes the last remaining subject in their current level, the next level's subjects become visible in their subject registration list.
Students cannot manually skip levels or register for subjects above their current level.
If you add new subjects to a level, students who have already completed that level are not affected.
Important: Ensure all subjects for each level are properly assigned to their correct learning level. A misconfigured subject could block student progression or allow premature access to higher-level content.
6. Exam Management
Exam management involves three separate pages for different aspects of the exam lifecycle: paper approvals, date scheduling, and student exam application approvals.
6.1 Exam Paper Approvals
When tutors create exam papers, they require administrative approval before becoming available to students.
The approval table displays the following columns:
Column
Description
Paper ID
System-generated exam paper identifier
Subject
The subject this paper belongs to
Exam Title
The name/title of the exam paper
Exam Type
The type of exam (e.g., MCQ, Essay)
Max Score
The maximum possible score for this paper
Tutor
The tutor who created the paper
Status
Current paper status (badge)
Actions
Approve button
To approve an exam paper:
Navigate to Exam Approvals in the sidebar.
The page header shows the count of papers pending approval (e.g., "5 papers pending approval").
Review the paper details -- subject, title, type, max score, and the creating tutor.
Click the Approve button on the row. The button shows "Approving..." while processing.
Once approved, the paper is removed from the pending list and becomes available for exam scheduling.
Note: If no papers are pending, the table displays "No exam papers pending approval".
6.2 Exam Scheduling
This page manages the schedule of when exams are available to students.
The exam dates table displays:
Column
Description
ID
Exam date record identifier
Subject
The subject for this exam date
Exam Date
The scheduled date
Start Time
When the exam window opens
End Time
When the exam window closes
Status
Active (green badge) or inactive
Actions
Delete button
To create a new exam date:
Click the Add Exam Date button in the page header.
A modal dialog appears with four fields:
Subject -- select from a dropdown of all available subjects (shown as "Code - Name")
Exam Date -- select using the date picker
Start Time -- select the exam start time
End Time -- select the exam end time
Click Create. The modal closes and the table refreshes with the new entry.
To delete an exam date:
Click the Delete button on the row you wish to remove.
A confirmation dialog appears: "Are you sure you want to delete this exam date?"
Click OK to confirm or Cancel to abort.
6.3 Student Exam Approvals
When students apply to sit for an exam, their applications require administrative approval.
The table displays:
Column
Description
Selection ID
The student-subject selection identifier
Student Name
The student's full name
Admission No
The student's admission number
Subject
The subject they wish to take the exam in
Exam Title
The specific exam paper title
Status
Current selection status (badge)
Actions
Approve and Reject buttons
To approve a student's exam application:
Review the student's name, admission number, and the exam they wish to take.
Click the Approve button. It shows "Processing..." while the request completes.
To reject a student's exam application:
Click the Reject button on the relevant row.
A modal dialog appears with the title "Reject Student Exam Selection".
You MUST provide a reason for rejection in the text area. The rejection reason is required -- the Reject button remains disabled until comments are entered.
Click Reject to confirm.
6.4 Uploading Downloadable Exams
For exams that are distributed as PDF documents (rather than taken online):
Navigate to the exam paper management area.
Select the relevant exam paper.
Upload a PDF file containing the exam.
Set the download deadline if applicable.
Students can then download the exam paper within the allowed timeframe.
6.5 Manual Exam Marking
For essay-type exams, manual marking by tutors or administrators is required:
Access the exam paper's submissions.
Review each student's essay response.
Enter the score and any marking comments.
Save the marks.
6.6 Awarding Final Scores
The final course score is calculated using the formula:
Final Score = (Assignment Average x Assignment Weight%) + (Exam Score x Exam Weight%)
By default, both weights are 50%. These weights are configurable in System Settings.
6.7 Viewing Exam Performance
Use the Reports section to download comprehensive exam performance data, including scores, pass rates, and retake counts.
7. Assignment Management
Assignments are uploaded by tutors as reading materials with submission requirements. Administrators oversee the assignment lifecycle, including approval of tutor-marked assignments and handling exceptions.
7.1 Uploading Assignments
Navigate to the relevant subject's assignment area.
Click Upload Assignment.
Select the file (PDF or Word document).
Select the language for this assignment (English, French, Kiswahili, or Portuguese). Students will only see assignments that match their preferred language.
Set the due date for the assignment.
Click Upload to publish.
Note: Maximum file upload size is 100MB. Supported formats include PDF and Microsoft Word documents.
7.2 Configurable Assignment Minimum
Each subject has a configurable minimum number of assignments that must be available per learning period. This setting controls both uploading and exam eligibility:
The default minimum is 10 assignments per subject.
Administrators can change this value in System Settings (see Section 18: System Settings) under the Min Assignments / Subject setting.
Tutors and Admins can upload up to this configured limit per subject per learning period.
Students must complete all assignments for a subject before they can apply for an exam in that subject. If the minimum is set to 10, students must submit and receive marks for all 10 assignments.
Important: Changing this setting affects all subjects platform-wide. Increasing the minimum after students have already started may require them to complete additional assignments before they can sit for exams.
7.3 Viewing Pending/Unmarked Assignments
Use the assignment management interface to view all submitted assignments.
Filter by status (unmarked, pending review, marked).
Assignments awaiting tutor marking are highlighted.
7.4 Approving Tutor-Marked Assignments
After tutors mark assignments, administrators can review and approve the marks:
View assignments that have been marked by tutors.
Review the score and any marking comments.
Approve the mark to finalize it, or send it back for re-marking with comments.
7.5 Manual Assignment Marking (Override)
Administrators can override assignment marks:
Navigate to the specific assignment submission.
Enter the corrected score.
Provide a justification comment for the override.
Save the override. The original mark and the override are both recorded in the audit trail.
7.6 Allowing Late Submissions
If a student has a valid reason for a late submission:
Find the student's assignment record.
Use the option to extend the deadline or accept the late submission.
Document the reason for the exception.
7.7 Uploading Reading Materials
Reading materials are supplementary documents made available to students:
Navigate to the materials section for the relevant subject.
Click Upload Material.
Select the file (PDF, Word, or other supported formats).
Provide a title and description.
Click Upload to make the material available to enrolled students.
7.8 Language-Based Content Filtering
The platform supports language-based filtering for assignments, reading materials, and exams. This ensures that students only see content in their preferred language.
How It Works
When a tutor or admin uploads an assignment or reading material, they must select the language (English, French, Kiswahili, or Portuguese).
Students who enrolled in a subject with English as their preference will only see English assignments and materials.
Students who enrolled with Kiswahili will only see Kiswahili assignments and materials.
The same applies for French and Portuguese.
Materials uploaded without a language tag are visible to all students regardless of their language preference. This maintains backward compatibility with older content.
Exam Filtering
The same language filtering applies to exams. Exam papers are filtered by the student's preferred language, so students only see exam papers that match the language they selected during subject enrollment.
Student Language Preference
A student's language preference is set during subject enrollment. When a student registers for a subject, they choose their preferred language. This choice determines which assignments, materials, and exams are shown to them for that subject.
Note: To ensure all students have access to content, tutors should upload assignments and materials in all four supported languages, or leave the language tag empty to make the content universally visible.
8. Grading Configuration
The Grading Configuration page allows you to view and modify the grade thresholds used across the entire platform.
8.1 Viewing Current Configuration
The page displays a table with four columns:
Column
Description
Grade
The grade name (e.g., "High Distinction")
Min Score
The minimum score to achieve this grade
Max Score
The maximum score for this grade range
Display Order
The order in which grades appear in reports and transcripts
8.2 Six-Tier Grading Scale
The default grading configuration consists of 6 tiers:
Grade
Min Score
Max Score
Display Order
High Distinction
85.00
100.00
1
Distinction
75.00
84.99
2
Credit
65.00
74.99
3
Merit
55.00
64.99
4
Pass
50.00
54.99
5
Fail
0.00
49.99
6
8.3 Modifying Grade Boundaries
To edit the grading configuration:
Click the Edit Configuration button in the page header.
The table switches to edit mode -- all cells become editable input fields.
Modify any grade name, minimum score, maximum score, or display order as needed.
Click Save Changes to apply. The button shows "Saving..." while processing.
Click Cancel at any time to discard your changes and revert to the saved values.
Important: Ensure that grade ranges do not overlap and collectively cover the full 0-100 range. Gaps or overlaps in ranges will cause inconsistent grading results.
If saving fails, an error message is displayed in a red banner above the table with the error description.
8.4 Grading Formula
The final grade for a subject is determined by combining assignment and exam performance:
Final Score = (Assignment Average x Assignment Weight%) + (Exam Score x Exam Weight%)
Default weights:
Assignment Average: 50%
Exam Score: 50%
These weights are configurable in System Settings (see Section 18). The weights must sum to exactly 100%.
The Assignment Average is the mean score of all graded assignments for the subject. The Exam Score is the student's score on the final exam for the subject.
8.5 Editing Final Scores (Admin Override)
As an administrator, you can override a student's final score when necessary (e.g., to correct grading errors or apply special considerations):
Navigate to the student's subject record.
Locate the final score field.
Enter the corrected score.
Provide an administrative comment explaining the reason for the override.
Save the change. The system records both the original calculated score and the admin override in the audit trail.
9. Billing
The Billing page allows you to calculate, view, and export student billing information.
9.1 Calculating Student Billing
To calculate billing for a specific student:
In the Calculate Student Billing card, enter the Student ID (the numeric ID of the student).
Click the Calculate button. The button shows "Calculating..." while processing.
The results appear in the Billing Result card below, displaying:
Student Name
Total Amount -- the full billing amount, displayed prominently in green
Student Type -- "New Student" or "Continuing" (first-time vs. returning)
Billing Date -- when the billing was calculated
Line Items -- a table showing each subject enrolled and its individual cost
9.2 Viewing Billing History
After calculating billing for a student, the Billing History section automatically loads below the result, showing a table of all previous billing records for that student:
Column
Description
Date
The billing date
Level
The academic level for the billing period
Amount
The total billed amount
Type
"New" or "Continuing"
9.3 Exporting to Excel
To download a billing report as an Excel spreadsheet:
Click the Export Excel button in the page header.
If a Student ID is entered in the input field, the export is filtered to that student.
If no Student ID is entered, the export includes all billing records.
The file downloads automatically as billing_report.xlsx.
10. Certificates & Transcripts
This page provides two functions side by side: generating certificates and verifying existing ones.
10.1 Generating Certificates
The Generate Certificate card on the left side allows you to create certificates for students who have completed a learning level.
Enter the Student ID (numeric ID).
Enter the Academic Level ID (the ID of the learning level the student completed, e.g., Foundation, Certificate, or Diploma).
Click Generate Certificate. The button shows "Generating..." while processing.
The result is displayed below the form, showing the certificate details including the serial number, student name, level, generation date, and file location.
Prerequisite: The student must have passed all required subjects at the specified academic level before a certificate can be generated. The system validates this automatically.
10.2 Certificate Features
Generated certificates include:
PDF Format: Professional document layout with the Salvation Army and College branding
QR Code: Each certificate contains a unique QR code that links to a public verification page
Serial Number: A unique serial number for identification and verification
10.3 Downloading Certificates
After generating a certificate, the PDF file can be downloaded:
Use the download link provided in the generation result.
The PDF is retrieved from the file storage system.
10.4 QR Code Verification
Anyone can verify a certificate's authenticity without logging in:
Scan the QR code on the printed certificate, or
Enter the certificate serial number in the Verify Certificate card on the right side of the Certificates page.
Click Verify.
The verification result displays the certificate details if valid, or an error message ("Certificate not found") if the serial number is invalid.
Note: Certificate verification is a public feature -- no login is required. This allows employers and institutions to verify certificates independently.
10.5 Generating Transcripts
Transcripts include a comprehensive record of all subjects taken by a student, including:
Subject codes and names
Scores for each component (assignments, exams)
Final scores and grades
Pass/fail status
Overall GPA or classification
11. Academic Sessions
Academic sessions represent distinct academic periods or terms within the platform.
11.1 Creating Sessions
Click the Add Session button in the page header.
A modal dialog appears with a single input field for Session name.
Enter a descriptive session name (e.g., "2026 Term 1", "January 2026 Intake").
Click Create. The button shows "Creating..." while processing.
The new session appears in the list.
11.2 Viewing and Searching Sessions
The Sessions page displays a table with three columns:
Column
Description
ID
The session's identifier
Session Name
The descriptive name of the session
Status
Active or inactive, displayed as a colored badge
The page header shows the total count (e.g., "12 sessions configured").
Searching: Use the search bar above the table (placeholder: "Search sessions...") to filter sessions by name. The filtering is performed in real-time as you type.
11.3 Updating Session Status
Sessions can be activated or deactivated to control which session is currently in use for student enrollment and academic activities.
12. Intake Management
Intake periods define when new student enrollments are accepted. This page shows the current intake status and configured intake periods.
12.1 Current Intake Status
At the top of the page, a status banner indicates whether an intake period is currently active:
Green banner: "Intake period is currently ACTIVE" -- enrollments are being accepted
Yellow banner: "No active intake period" -- enrollments may be restricted
The behavior setting is also displayed as a badge (e.g., "WARNING" or "BLOCK").
12.2 Intake Period Table
The table displays all configured intake periods with the following columns:
Column
Description
Month
The intake month (displayed as Jan, Feb, Mar, etc.)
Year
The specific year, or "Every Year" for recurring intakes
Start Date
When the intake period begins
End Date
When the intake period ends
Behavior
What happens outside intake periods -- "WARNING" (allows with warning) or "BLOCK" (prevents enrollment)
Status
Active or inactive badge
12.3 Intake Behavior Settings
The intake behavior setting (configured in System Settings) determines what happens when a student tries to enroll outside an active intake period:
Behavior
Effect
WARNING
The student is warned that enrollment is outside the intake period but is allowed to continue
BLOCK
The student is prevented from enrolling entirely
13. Suspension Management
The Suspension Management page allows you to view and manage student suspensions.
13.1 How Suspension Works
Students can be automatically suspended after 3 failed exam attempts on the same subject. When suspended:
The student is blocked from retaking the exam for that subject.
A suspension record is created with the date and subject information.
The student (or their ETO) can appeal the suspension.
Only an Administrator can lift or decline a suspension.
13.2 Viewing Suspended Students
The suspension table displays:
Column
Description
Student
The suspended student's name
Admission No
Their admission number
Subject
The subject for which they are suspended
Suspended Since
The date the suspension took effect
Status
Current suspension status (badge)
Actions
Lift and Decline buttons
If no students are currently suspended, the table displays "No suspended students".
13.3 Lifting Suspensions
To lift a suspension and allow the student to continue:
Click the Lift button (green) on the relevant row.
A modal dialog appears titled "Lift Suspension".
Enter admin comments in the text area explaining why the suspension is being lifted. Comments are required -- the Confirm button is disabled until comments are provided.
Click Confirm. The button shows "Processing..." while the request completes.
The student is removed from the suspension list and can resume their studies for that subject.
13.4 Declining Appeals
To decline a suspension appeal and keep the student suspended:
Click the Decline button (red) on the relevant row.
A modal dialog appears titled "Decline Suspension".
Enter admin comments explaining the reason for declining. Comments are required.
Click Confirm.
The suspension remains in effect.
14. Achievements
The Achievements page allows you to manage student achievement records -- special recognitions, awards, or notable accomplishments.
14.1 Viewing and Adding Achievements
To view a student's achievements:
Enter the Student ID in the input field.
Click View Achievements. The button shows "Loading..." while fetching data.
Achievement cards appear below, each showing:
The achievement description
The date it was recorded
Who added the record (e.g., "Added by Admin")
A Delete link on the right
To add a new achievement:
Enter a Student ID first (the "Add Achievement" button only appears after a Student ID is entered).
Click the Add Achievement button (green).
A modal dialog appears with two fields:
Achievement description -- a text area for the description (e.g., "Awarded Best Student in Theology 2026")
Achievement date -- a date picker
Click Add. The button shows "Adding..." while processing.
The achievement list refreshes to include the new entry.
14.2 Deleting Achievements
Find the achievement in the student's achievement list.
Click the Delete link on the right side of the achievement card.
A confirmation dialog appears: "Delete this achievement?"
Click OK to confirm deletion, or Cancel to keep it.
15. Announcements
Announcements are platform-wide messages visible to all users. This page displays and manages system announcements.
15.1 Viewing Active Announcements
The page displays announcements as individual cards, each showing:
Title -- the announcement headline (bold text)
Message -- the full announcement text
Timestamp -- when the announcement was created (displayed on the right side in small gray text, formatted as date and time)
If no announcements exist, the message "No announcements" is displayed.
15.2 Creating Platform-Wide Announcements
To create a new announcement:
Use the announcement creation interface (accessible from the page header or a dedicated form).
Enter a Title for the announcement.
Enter the Message body.
Click Create or Publish.
The announcement is immediately visible to all platform users.
16. Countries & Territories
16.1 Managing Countries
The Countries page manages the list of countries in which the platform operates.
Viewing Countries
The table displays:
Column
Description
ID
Country identifier
Country Name
The name of the country (e.g., "Kenya")
Phone Code
The international dialing code (e.g., "+254")
Flag
Country flag indicator
Actions
Edit and Delete buttons
Adding a Country
Click the Add Country button in the page header.
A modal appears with two fields:
Country Name -- e.g., "Kenya"
Phone Code -- e.g., "+254"
Click Create. Both fields are required.
Editing a Country
Click the Edit button on the country row.
The same modal opens with pre-filled values.
Modify the name or phone code.
Click Update.
Deleting a Country
Click the Delete button on the country row.
A confirmation modal appears: "Are you sure you want to delete this country? This action cannot be undone."
Click Delete to confirm, or Cancel to abort.
Caution: Deleting a country will affect all territories and users associated with it. Ensure no active data depends on the country before deleting.
16.2 Managing Territories
Territories represent Salvation Army territorial divisions within countries.
Viewing Territories
The table displays:
Column
Description
ID
Territory identifier
Territory
Territory name (e.g., "Kenya Territory")
Country
The parent country name
Territory Code
The territory code (typically the international phone code, e.g., "+254")
Actions
Edit button
Searching: Use the search bar (placeholder: "Search territories...") to filter by territory name, code, or country name.
Adding a Territory
Click the Add Territory button in the page header.
A modal appears with three fields:
Territory Name -- e.g., "Kenya Territory"
Territory Code -- e.g., "+254"
Country -- select from a dropdown of configured countries
All three fields are required. Click Create to save.
Editing a Territory
Click the Edit button on the territory row.
The modal opens with pre-filled values.
Modify any field and click Update.
16.3 Territory Code Conventions
Territory codes typically use international phone country codes:
Code
Country
+254
Kenya
+255
Tanzania
+250
Rwanda
+257
Burundi
+263
Zimbabwe
+27
South Africa
SALT-College
Internal admin territory (special case)
Note: The SALT-College code is a special territory used for institution-level administrative functions and is not associated with a specific country.
17. Reports
The Reports page provides downloadable Excel reports for various aspects of the platform. Reports are displayed as cards in a responsive grid layout (3 columns on desktop, 2 on tablet, 1 on mobile).
17.1 Available Report Types
Report
Description
Assignment Report
All students with marked/unmarked assignments, scores, and marking status per subject
Exam Report
All students with exam scores, assignment averages, final totals, pass marks, and retake counts
Marking Comments
Tutor and admin remarks on marked assignments and exams -- serves as the marking scheme reference
Pending Students
Downloadable list of students awaiting approval -- admission numbers, names, contact, territory, and entry type
Billing Report
Student billing records with line items, amounts, and billing dates
Each report card shows:
An icon (color-coded by report type)
The report title
A description of what data the report contains
A Download Excel button
17.2 Generating Reports
To download a report:
Navigate to Reports in the sidebar.
Locate the desired report card.
Click the Download Excel button. A download icon appears next to the text.
The button shows "Downloading..." while the server generates the report.
The Excel file (.xlsx) downloads automatically to your browser's download folder.
Downloaded file names:
Report
File Name
Assignment Report
assignment_report.xlsx
Exam Report
exam_report.xlsx
Marking Comments
marking_comments.xlsx
Pending Students
pending_students.xlsx
Billing Report
billing_report.xlsx
18. System Settings
The System Settings page allows you to configure platform-wide behavior. Settings are organized into three sections.
18.1 Grading Weights
This section controls how assignment and exam scores are weighted in the final grade calculation.
Setting
Default
Range
Description
Assignment Weight (%)
50
0-100
Percentage weight given to the assignment average
Exam Weight (%)
50
0-100
Percentage weight given to the exam score
Validation: If the two weights do not sum to exactly 100%, a red warning message appears: "Weights must sum to 100%". You cannot save settings while this validation error is present.
18.2 OTP Configuration
Controls the behavior of the access code (OTP) used during login:
Setting
Default
Range
Description
OTP Expiry (minutes)
5
1-30
How many minutes the OTP remains valid after being sent
How notifications (OTPs, announcements, etc.) are delivered to users
Intake Behavior
Warning Only
Warning Only, Block Enrollment
What happens when a student tries to enroll outside an intake period
Min Assignments / Subject
10
1-20
The minimum number of assignments per subject per learning period. Tutors and Admins can upload up to this limit per subject. Students must complete all assignments before they are eligible to apply for an exam in that subject.
Max Assignments / Month
3
1-10
The maximum number of assignments a tutor can upload per subject per month
18.4 Saving Settings
Modify any settings as needed across all three sections.
Click the Save Changes button in the page header.
The button shows "Saving..." while the request processes.
On success, the button briefly shows "Saved!" with a green checkmark for 3 seconds.
Note: Settings changes take effect immediately across the platform. Exercise caution when modifying grading weights or notification channels, as they affect all active students and operations.
19. Logs & Monitoring
19.1 System Logs
The System Logs page provides access to two types of logs via tabbed navigation:
Login Logs Tab
Tracks all login attempts across the platform.
Column
Description
ID
Log entry identifier
Username
The username that attempted login
Login Date
Date and time of the attempt (formatted as date + time)
IP Address
The IP address of the login attempt
Status
Success or failure, displayed as a colored badge
Event Logs Tab
Tracks system events and administrative actions.
Column
Description
ID
Log entry identifier
Event Type
Category of the event (displayed as a blue badge)
Description
Details of what occurred (truncated for long descriptions; hover to see full text)
User
The user who triggered the event
Timestamp
When the event occurred
Features:
Tab switching: Click "Login Logs" or "Event Logs" tab to switch views. Each tab shows a count badge (e.g., "Login Logs 245").
Search: A search bar filters the active tab's data. For login logs, search by username, IP, or status. For event logs, search by event type, description, or user.
19.2 SMS Log
The SMS Log page provides a record of all SMS messages sent by the platform (OTPs, notifications, announcements).
Column
Description
ID
SMS log entry identifier
Recipient
The name of the recipient
Phone Number
The recipient's phone number
Message
The SMS message content (truncated; hover to see full text)
Status
Delivery status -- color-coded badges: SENT (green), FAILED (red), PENDING (yellow)
Sent Date
When the SMS was sent (date + time format)
The page header shows the total count (e.g., "1,234 messages").
Searching: Use the search bar (placeholder: "Search by recipient, phone, message, status...") to filter SMS records.
19.3 Schema Management
The Schema Management page is a powerful administration tool that provides integrity checking, backup, and data quality functions.
Status Dashboard
Four status cards appear at the top of the page:
Card
Description
Version
The current system version with description
Tables
Total number of data tables
Active Students
Count of active student records
Issues
Count of unresolved integrity issues (shown with a warning icon if any exist, or a green check if none)
Data Integrity Check
Click Run Integrity Check in the "Data Integrity Check" card.
The system scans for:
Duplicate admission numbers
Duplicate email addresses
Orphaned records
Status inconsistencies
Results are displayed showing counts of duplicates and total issues found.
Fix Duplicates
Click Fix All Duplicates in the "Fix Duplicates" card.
A confirmation dialog appears: "This will auto-resolve all detected duplicate student records. Continue?"
Click OK to proceed. The system keeps the most recent record and removes older duplicates.
A result message is displayed upon completion.
Caution: The Fix Duplicates operation modifies data. Always run an integrity check first to understand the scope of changes.
Data Backup & Export
Three export buttons are available:
Export
File Name
Description
Export Students
students_backup.xlsx
All student records as an Excel file
Export Users
users_backup.xlsx
All user records as an Excel file
Full Backup (ZIP)
salt_backup_{timestamp}.zip
Complete data export as a ZIP archive
Click any export button to initiate the download. The button shows "Downloading..." while the file is being generated.
Table Row Counts
A detailed table showing every data table and its current row count, sorted by count (largest first). This helps identify the most active areas and verify data volumes.
Integrity Log
A table at the bottom of the page displays all recorded integrity issues with:
Column
Description
Type
The type of integrity check (e.g., "Duplicate Admission", "Orphan Record")
Severity
Error (red), Warning (amber), or Info (green) badge
Details
Description of the specific issue (truncated; hover for full text)
Date
When the issue was first detected
Status
"Resolved" (green check) or "Open" (amber warning)
Click Refresh to reload the integrity log.
20. Chat
The Chat page provides a real-time messaging interface for communicating with ETOs, tutors, and students.
20.1 Chat Interface
The chat interface consists of:
Contact List (left panel): Shows a list of users you can message, including their name, role, unread message count, and a preview of the last message.
Message Area (right panel): Displays the conversation with the selected contact.
Connection Status: A badge at the top indicates your connection status:
Connected (green) -- real-time messaging is active
Connecting... (yellow) -- establishing connection
Disconnected (red) -- not connected; a reconnect button is available
Error (red) -- connection error occurred
20.2 Sending Messages
Select a contact from the contact list on the left.
Type your message in the input field at the bottom of the message area.
Click the Send button (paper airplane icon) or press Enter.
Messages appear in real-time for both you and the recipient.
Note: If you see a "Disconnected" status, click the reconnect button to re-establish the connection.
21. Troubleshooting
Common Login Issues
Problem
Cause
Solution
"Invalid credentials" error
Wrong username or password
Double-check your username and password. Remember that usernames are case-sensitive.
OTP not received
SMS/email delivery delay or incorrect contact info
Wait 1-2 minutes, then click "Resend Access Code". If the issue persists, verify your registered phone/email in the user management system.
OTP expired
Took too long to enter the code
Click "Resend Access Code" to get a fresh OTP. The default expiry is 5 minutes (configurable in Settings).
Account locked after multiple failed attempts
Security protection triggered
Wait 15-30 minutes for the lockout to expire, or contact another administrator to unlock your account.
"Must change password" prompt appears
The system requires you to change your password
Follow the password change form. Enter your current password, then set a new password meeting the complexity requirements (8+ characters, letters, numbers, special characters).
Session expired
Your session has expired due to inactivity
Log in again. Consider adjusting the token expiry time in System Settings if sessions expire too frequently.
File Upload Errors
Problem
Cause
Solution
"File too large" error
File exceeds the 100MB upload limit
Compress or split the file to bring it under 100MB.
"Invalid file format" error
Unsupported file type
Use supported formats: PDF, DOC, DOCX for assignments and materials.
Upload hangs or fails
Network timeout or server issue
Check your internet connection. Try a smaller file first. If the problem persists, check the server status.
File not appearing after upload
Storage issue
Check the Schema Management page to verify the system is healthy.
Permission Errors
Problem
Cause
Solution
"Access denied" or "Forbidden"
Your role does not have permission for this action
Verify you are logged in with an Admin account. Check the User Management page to confirm your role.
Cannot approve students
Logged in as ETO instead of Admin
ETOs can only perform first-level approval. Final approval requires Admin access.
Cannot modify system settings
Session issue
Log out and log back in. If the issue persists, verify your user record has the Admin role.
Data and Display Issues
Problem
Cause
Solution
Dashboard shows all zeros
Connection issue or fresh installation
Check that the website is accessible. Check your internet connection.
Table shows no data
No matching records or connection error
Try removing search filters. Refresh the page. Verify your internet connection is stable.
Grading weights warning "must sum to 100%"
Assignment and exam weights do not total 100
Adjust the weights so they add up to exactly 100 (e.g., 50 + 50, 40 + 60, 60 + 40).
Certificate generation fails
Student has not completed all required subjects
Verify the student has passing grades in all subjects at the specified academic level before attempting certificate generation.
Export downloads empty file
No data matches the export criteria
Verify that data exists for the selected parameters (date range, student ID, etc.).
Browser-Specific Issues
Problem
Solution
Page not loading or blank screen
Clear browser cache and cookies for the platform domain. Try opening in an incognito/private window.
Dark mode looks broken
Toggle the theme to light mode and back. Clear browser local storage if the issue persists.
Downloads blocked
Allow downloads and pop-ups for the platform domain in your browser settings.
Getting Support
If you encounter issues not covered in this guide:
Check the System Logs for related error entries.
Check the SMS Log if notification delivery is the issue.
Run a Schema Integrity Check if data-related issues are suspected.
Contact the technical support team with:
A clear description of the problem
The steps you took before the error occurred
Any error messages displayed (screenshots are helpful)
Your browser type and version
The date and time the issue occurred
22. Student Record Management
The Student Record Management page provides administrators with powerful diagnostic and repair tools for individual student records. This feature is accessible from the admin sidebar under Student Records. It allows you to search for a student by email or admission number, view full diagnostic information about their account state, and perform a range of corrective actions.
22.1 Searching for a Student
To look up a student record:
Navigate to Student Records in the admin sidebar.
Enter the student's email address or admission number in the search field.
Click Search. The button shows "Searching..." while the request completes.
If found, the student's full diagnostic information is displayed, including their name, admission number, email, admission status, user enabled flag, academic level, territory, MCP status, and subject selection summary.
If not found, a message "No student found with that email or admission number" is displayed.
Tip: You can search by either email or admission number. The system checks both fields and returns the matching student record.
22.2 Clear Email
Use this action when a new student has entered the wrong email address during registration and cannot re-register because the email is already in the system.
Search for the student by their current (incorrect) email or admission number.
Click the Clear Email button (blue).
A confirmation dialog appears showing the current email and a warning that this will clear the email field.
Click Confirm to proceed.
The student's email is reset to blank, allowing them to re-register with the correct email.
When to use: Only for new students who have not yet progressed in the system. For continuing students, use Soft Reset instead.
22.3 Soft Reset
Use this action for continuing students who need their registration data reset while preserving all previous academic performance records (exam scores, assignment marks, grades).
Search for the student by email or admission number.
Click the Soft Reset button (teal).
A confirmation dialog displays what will be reset and what will be preserved:
Preserved: Exam scores, assignment marks, grades, academic history
Click Confirm to execute the reset.
The student can then re-register with updated information while retaining their academic progress.
Important: This is a partial reset. The student will need to go through the registration flow again, but their historical performance data remains intact.
22.4 Fix Academic Level Approval
Use this action when a student's academic level is stuck in the approval pipeline -- typically when the ETO or Admin approval step has not been completed or is in an inconsistent state.
Search for the affected student.
Click the Fix Acad. Approval button (purple).
The system displays the current approval state of the student's academic levels.
Click Confirm to fix the approval flags.
The academic level approval is corrected, allowing the student to proceed with subject selections and exams.
22.5 Modify Admission Number
Use this action to change a student's admission number (registration number). This updates the admission number across all related records.
Search for the student whose admission number needs changing.
Click the Modify Adm. No button (dark teal).
A dialog appears with the current admission number and a field for the new admission number.
Enter the new admission number. The system validates the format and checks for duplicates.
Click Confirm to apply the change.
Caution: Changing an admission number affects all references across the system (student record, user record, subject selections, etc.). Ensure the new number follows the correct format conventions.
22.6 Repair Record
This is a comprehensive fix for students who cannot login or whose account is in an inconsistent state. The repair action checks and corrects all critical flags simultaneously.
The repair operation fixes the following:
Flag / Field
What Gets Fixed
Admission Status
Set to the correct status based on the student's registration stage
User Enabled
Ensures the user account is enabled so the student can log in
Validation Flag
Corrects the validation state if it is stuck or inconsistent
Academic Level Approval
Fixes ETO and Admin approval flags for all enrolled academic levels
Subject Selections
Repairs subject selection statuses that are stuck in intermediate states
Search for the student who cannot log in or access their account.
Click the Repair Record button (green).
A summary of all flags that will be corrected is displayed.
Click Confirm to apply all fixes.
The student should now be able to log in and access their account normally.
Recommended first step: When a student reports login issues, try Repair Record first before attempting individual fixes. It addresses all common causes at once.
22.7 Force Approve
Use this action to push a student through the entire approval pipeline in one step. This bypasses the normal ETO-then-Admin two-step approval flow and immediately approves the student at all levels.
Search for the student who needs immediate approval.
Click the Force Approve button (amber).
A confirmation dialog shows the student's current approval state and explains that all pending approvals will be completed.
Click Confirm to force-approve the student.
The student's admission status, academic level approvals, and subject selections are all set to approved status.
Use case: This is useful for students who have been waiting too long for ETO approval, or when an ETO is unavailable and the student needs to proceed urgently.
22.8 Purge Record
This is a destructive operation that permanently deletes a student record from the system. All associated data is removed, including academic levels, subject selections, exam attempts, assignment submissions, and billing records.
Search for the student whose record needs to be completely removed.
Click the Purge Record button (red).
A two-step confirmation dialog appears:
Step 1: Displays the student's full name and admission number and asks you to confirm.
Step 2: Requires you to type the student's admission number to confirm deletion.
Click Delete Permanently to execute the purge.
DANGER: This action cannot be undone. All student data, performance records, exam results, and enrollment history will be permanently deleted. Only use this as a last resort for records that should never have been created (e.g., duplicate records, test accounts).
23. Reports V2
Reports V2 is a comprehensive reporting dashboard that provides in-depth analytics across four key areas: enrollment, academic performance, billing, and graduation. This feature is accessible from the admin sidebar under Reports V2. Each report can be filtered by territory, learning level, and academic session, and can be exported to Excel.
23.1 Enrollment Summary
The Enrollment tab provides a detailed breakdown of student enrollment across the platform.
The report displays the following summary metrics at the top:
Metric
Description
Total Students
Total number of enrolled students matching the selected filters
New Students
Students who registered in the current session
Continuing
Students who were already enrolled in a previous session
Pending Approval
Students awaiting ETO or Admin approval
Below the summary cards, a detailed table shows enrollment grouped by territory, with columns for new, continuing, approved, pending, and total counts. You can also view enrollment by learning level (Foundation, Certificate, Diploma) by scrolling down the page.
The approval status breakdown includes:
Approved (D) -- Students who have been fully approved and can access their courses
Pending ETO (EP) -- Students awaiting ETO-level approval
Pending Admin (P) -- Students approved by ETO, awaiting final Admin approval
New (N) -- Newly registered students not yet in the approval pipeline
23.2 Academic Performance
The Performance tab displays academic performance analytics including pass/fail rates and average scores.
Key metrics displayed:
Metric
Description
Overall Pass Rate
Percentage of students with a final grade of 50% or above
Average Score
Mean score across all students and subjects for the selected filters
Highest Average Subject
The subject with the highest average student score
Lowest Average Subject
The subject with the lowest average student score
The performance data is broken down by:
Per Subject: Average score, pass rate, number of students, highest and lowest individual scores
Per Learning Level: Aggregate performance for Foundation, Certificate, and Diploma students
Note: Performance data is calculated based on final grades (weighted combination of exam and assignment scores as configured in System Settings).
23.3 Billing Summary
The Billing tab provides a financial overview of student billing across territories and learning levels.
Summary metrics include:
Metric
Description
Total Cost
Total fees owed by all students matching the selected filters
Paid Amount
Total amount that has been paid
Outstanding Balance
Total amount still owed (Total Cost minus Paid Amount)
Collection Rate
Percentage of total cost that has been collected
The detailed table shows billing grouped by territory and learning level, making it easy to identify which regions or programs have the highest outstanding balances.
23.4 Graduation Summary
The Graduation tab tracks student progress toward completion and certificate issuance.
Key metrics displayed:
Metric
Description
Completed Levels
Number of students who have completed all subjects in a learning level
Certificates Issued
Number of certificates that have been generated and issued
In Progress
Number of students currently working through their subjects
Completion Rate
Percentage of enrolled students who have completed their level
The detailed table shows graduation data grouped by learning level (Foundation, Certificate, Diploma) and territory.
23.5 Exporting Reports
All Reports V2 can be exported to Excel:
Select the desired report tab (Enrollment, Performance, Billing, or Graduation).
Apply any filters (territory, learning level, session) to narrow the data.
Click the Excel button (green) in the filter bar.
The Excel file downloads automatically with the report data matching the current view and filters.
Downloaded file names:
Report
File Name
Enrollment Summary
enrollment_summary_report.xlsx
Academic Performance
performance_report.xlsx
Billing Summary
billing_summary_report.xlsx
Graduation Summary
graduation_summary_report.xlsx
24. CSV Upload with Preview
The CSV Upload with Preview feature allows administrators to upload previous student performance data via CSV files using a guided three-step process. This feature is accessible from the admin sidebar under CSV Upload. The upload process includes data preview and selective inclusion, ensuring data accuracy before committing to the database.
24.1 Step 1: Upload CSV File
The first step is to select and upload a CSV file containing previous student performance data.
Navigate to CSV Upload in the admin sidebar.
Click the Choose File button or drag and drop a CSV file into the upload area.
The file must be in CSV format (.csv) and follow the required column structure.
Click Upload & Preview. The button shows "Processing..." while the file is parsed.
The system parses the CSV and displays a preview of the data, including a count of students and academic levels found in the file.
Required CSV columns:
Column
Description
Example
admission_no
Student admission number
2024089
student_name
Student full name
John Kamau
learning_level
Academic level name
Foundation
subject_code
Subject code
CF104
subject_name
Subject name
Old Testament Survey
score
Final score (0-100)
72
File validation: The system validates the CSV structure before proceeding. If required columns are missing or the file is malformed, an error message is displayed with details about which columns are missing or what rows have issues.
24.2 Step 2: Review and Select
After the CSV is parsed, the data is displayed in a review table grouped by student and academic level. This allows you to selectively include or exclude specific academic levels before uploading.
Review the parsed data. Each row shows a student name, admission number, academic level, and the number of subjects found for that level.
Use the toggle switch in the "Include" column to include or exclude specific academic levels:
Green toggle (ON) -- This academic level will be included in the upload
Gray toggle (OFF) -- This academic level will be skipped
The summary bar at the bottom shows how many academic levels and students are selected.
Click Continue to Step 3 to proceed, or Back to return to the file upload step.
Tip: By default, all academic levels are toggled ON. Toggle OFF any levels that already exist in the system or that you do not wish to import at this time.
24.3 Step 3: Confirm and Upload
The final step presents a summary of the data that will be uploaded and asks for confirmation.
Review the upload summary:
Number of students to be processed
Number of academic levels to be created or updated
Total subject records to be inserted
Click Confirm Upload to commit the data to the database. The button shows "Uploading..." with a progress indicator.
Upon completion, a success message displays with a summary of records created:
Number of academic levels created
Number of subject selections inserted
Number of records skipped (duplicates or errors)
Click Upload Another to start a new upload, or navigate to another page.
Important: The upload process is transactional. If an error occurs during processing, all changes are rolled back and no partial data is saved. You will see an error message with details about what went wrong, and can retry after correcting the CSV file.
This document is the official Administrator User Guide for the College E-Learning.