⚙️ System Administration
The Administration module groups all the configuration and maintenance tools for the SGA. From here you can manage base catalogs, security (roles, users, permissions), translations, email templates, and server monitoring.
Access: Sidebar Menu → System
1. Catalogs
Catalogs are the reference tables that feed the selectors and options throughout the entire system. They are managed from a unified interface with vertical tabs on the left and content on the right.
Access: System → Categories
Permission: Requires Administrator profile (category management)
Catalog List
The SGA includes 18 configurable catalogs, each with its own tab and record counter:
| # | Catalog | Description | Main Fields |
|---|---|---|---|
| 1 | Countries | Available nationalities for people | Name, Active, System |
| 2 | Genders | Gender options | Name, Active, System |
| 3 | Teaching Positions | Position types (Principal, Coordinator, Teacher...) | Name, Active, System |
| 4 | Enrollment Statuses | Enrollment lifecycle (Active, Suspended, Withdrawn...) | Name, Color, Text Color, Active, System |
| 5 | Attendance Statuses | Attendance categories (Present, Absent, Late...) | Name, Color, Text Color, Active, System |
| 6 | Teacher Statuses | Teaching staff status | Name, Color, Text Color, Active, System |
| 7 | Incident Statuses | Disciplinary incident lifecycle | Name, Color, Text Color, Active, System |
| 8 | Subjects | Subject catalog (Mathematics, Spanish, Sciences...) | Name, Active |
| 9 | Classrooms | Physical classrooms in the school | Name |
| 10 | Levels | Educational levels (Preschool, Primary, Secondary) | Name, Active, System |
| 11 | Grades | Grades by level (1st, 2nd, 3rd...) | Name, Level, Active |
| 12 | Relationships | Guardian-student relationships (Father, Mother, Uncle...) | Name, Active, System |
| 13 | Grading Scales | MINED scales by level and type | Name, Code, Type, Min. Score, Max. Score, Weight, Year, Level, Grade |
| 14 | Currencies | Billing currencies (NIO, USD) | Name, Code, Symbol, Rate, Percentage, Active, System |
| 15 | Payment Methods | Accepted payment forms (Cash, Transfer, Card...) | Name, Active, System |
| 16 | Payment Concepts | Billing items (Enrollment, Monthly Fee, Uniform, Transportation...) | Name, Active |
| 17 | Expense Types | Expense categories (Refund, Services, Purchases...) | Name, Active, System |
| 18 | Holidays | School year holiday calendar | Date, Year, Description |
Common Operations
Each catalog supports the same CRUD operations:
| Action | Description |
|---|---|
| Create | ➕ button to add a new record |
| Edit | Click on the row or edit icon |
| Delete | Only if the record is not referenced by other modules |
| Enable/Disable | Toggle to enable or disable without deleting |
System Records
Records marked as System (🔒) cannot be deleted. These are base SGA records that ensure the system functions correctly. Only their name can be edited.
Catalogs with Colors
The status catalogs (enrollment, attendance, teacher, incident) allow assigning a background color and a text color. These colors are used in system badges to visually identify the status of each record.
Grading Scales
This catalog is special: it defines the MINED scales by educational level and evaluation type.
| Field | Description |
|---|---|
| Name | Scale label (e.g., Advanced Learning) |
| Code | Abbreviation (e.g., AA, AS, AF, AI) |
| Type | Qualitative or Quantitative |
| Min / Max Score | Numeric range (e.g., 90-100) |
| Weight | Scale weighting |
| School Year | Effective period |
| Level / Grade | Applicability by educational level |
2. Roles and Permissions
The SGA security system is based on roles that group permissions. Each user is assigned to one or more roles that determine which modules and actions they can access.
Access: System → Roles
Permission: Requires Administrator profile (role management)
Role List
The table displays all roles with their description and available actions.
Create / Edit a Role
When creating or editing a role, the following is presented:
| Field | Description |
|---|---|
| Description | Human-readable role name (e.g., "Cashier", "Teacher", "Principal") |
| Role Name | Automatically generated from the description (e.g., "cashier", "teacher") |
| Permissions | List of toggles with the system's 53 permissions |
Available Permissions (53 total)
Permissions are organized by functional module:
| Module | Permissions |
|---|---|
| Dashboard | View dashboard |
| Students | CRUD students, view students |
| Teachers | CRUD teachers, view teachers |
| Guardians | CRUD guardians, view guardians |
| Structure | CRUD terms, sections, courses, enrollments + view each |
| Virtual Classroom | CRUD schedule, attendance, incidents, activities, evaluations, grades, student record + view each |
| Billing | CRUD payments, view payments |
| Transportation | CRUD transportation, view transportation |
| Inventory | CRUD inventory, view inventory |
| Drive | CRUD drive, view drive |
| Notifications | CRUD notifications |
| System | CRUD categories, languages, roles, users, email templates, portal credentials, view activity, view system info |
Super Admin Role
The Super Admin role has full system access and is only visible to users with that same role. It cannot be deleted or disabled.
Protected Records
Roles marked as System cannot be deleted. It is recommended to create custom roles rather than modifying system roles.
3. Users
Management of SGA access accounts. Each user is linked to an existing person (teacher, student, or guardian) and has one or more roles assigned.
Access: System → Users
Permission: Requires Administrator profile (user management)
User List
| Column | Description |
|---|---|
| Name | Full name (inherited from the linked person) |
| Email address (unique in the system) | |
| Phone | Contact number |
| Active | Toggle to enable/disable access |
Create a User
The creation process follows these steps:
- Search for person: Select an existing person (teacher, student, or guardian). The search filters by person type.
- Assign roles: Activate the toggles for the roles the user will have.
- Save: The system automatically:
- Generates an 8-character temporary password
- Sends a welcome email with the credentials
- Activates the account
Requirements for Creating a User
- The person must have an email address registered in their profile
- The email must not be associated with another existing user
- Another user cannot already exist for the same person
Edit a User
When editing an existing user, you can:
- Enable/Disable the account (the toggle is also available in the list)
- Modify assigned roles
Name and Email
Name and email are read-only in the edit form — they are inherited from the linked person. To modify them, edit the person's profile (teacher, student, or guardian).
Personal Profile
Each user can access their own profile from the user menu (top right corner) to:
- View their personal data (name, email, date of birth, ID number, phone, address, gender, nationality, photo)
- Change their password (requires entering the current password)
4. Portal Credentials
Management of access accounts for the Parent/Guardian Portal. Each credential links a guardian with their access method (email and/or WhatsApp).
Access: System → Portal Credentials
Permission: Requires Administrator profile (portal credential management)
Credential List
| Column | Description |
|---|---|
| Guardian | Guardian's name and avatar |
| Portal access email | |
| Phone | Registered phone number |
| Opt-in toggle for WhatsApp access | |
| Enabled | Toggle to enable/disable access |
Available Actions
| Action | Description |
|---|---|
| Add | Search for a guardian and create their credential |
| WhatsApp opt-in | Enable/disable WhatsApp access |
| Enable/Disable | Activate or suspend portal access |
| Sync | Updates guardian data (email, phone) from their profile |
| Delete | Permanently revokes portal access |
5. System Languages (i18n)
The SGA supports three languages: Spanish, English, and French. All labels, messages, and interface texts are stored in the database and can be edited from this module.
Access: System → Languages
Permission: Requires Administrator profile (language management)
Translation List
| Column | Description |
|---|---|
| Key | Technical identifier for the translation (e.g., btn_save, msg_confirm_delete) |
| Spanish | Text in Spanish |
Edit a Translation
When editing a key, a form with three fields is displayed (one per language):
| Field | Description |
|---|---|
| Spanish (ES) | Text in Spanish |
| English (EN) | Text in English |
| French (FR) | Text in French |
The editor type depends on the key:
- Plain text: Standard input field
- HTML: Rich text editor (for formatted content)
Instant Update
When saving a translation, the language cache is automatically refreshed. Changes are reflected in the interface without needing to reload the page or restart the server.
6. Email Templates
The SGA sends automated emails for events such as user welcome, password recovery, and notifications. Each template is editable in all three languages.
Access: System → Email Templates
Permissions: Requires Administrator profile (email template management or viewing)
Template List
| Column | Description |
|---|---|
| Name | Template identifier |
| Last Updated | Date of the last change |
Edit a Template
The editor maximizes to full screen and shows three sections (one per language):
| Field | Description |
|---|---|
| Subject | Email subject line (e.g., "Welcome to the SGA") |
| Button Text | Action button caption (e.g., "Access the System") |
| Email Body | Rich HTML editor with the email content |
Trilingual Validation
All three language versions are required. The system validates that both the subject and the HTML body are complete in Spanish, English, and French before allowing save.
Protected Templates
Templates are system records — new ones cannot be created and existing ones cannot be deleted. Only their content can be edited.
7. Activity Log
Chronological record of all actions performed in the system. Allows auditing who did what, when, and from where.
Access: System → Activity Log
Permission: Requires system activity viewing permission
Activity Dashboard
The top section shows a visual summary with:
| Indicator | Description |
|---|---|
| Today | Number of actions recorded today |
| This Week | Actions in the last 7 days |
| This Month | Actions in the current month |
| This Year | Year-to-date total |
Charts:
- 15-Day Trend: Line chart with daily activity for the last 2 weeks
- By Action Type: Pie chart (Create, Edit, Delete, Login, etc.)
- By User: Pie chart with the most active users
Record List
| Column | Description |
|---|---|
| ID | Sequential record number |
| User | Who performed the action |
| Action | Operation type (CREATE, UPDATE, DELETE, LOGIN, etc.) |
| Workstation | IP or workstation name |
| Date | Date and time of the event |
Available Filters
| Filter | Description |
|---|---|
| User | User selector |
| Action | Operation type |
| Date Range | From / To |
| Workstation | IP or device name |
Record Details
Clicking on a record opens a dialog with the enriched properties of the event:
- Database fields are translated to readable names in Spanish (115+ translations)
- Foreign keys are automatically resolved to their readable names (e.g.,
country_id: 1→country_id: Nicaragua) - Yes/No values are displayed as Yes/No
- Dates are formatted in local format
- Audit fields are sorted at the end
Full Traceability
Every create, edit, or delete operation in any SGA module is automatically recorded with previous and new values. This meets audit requirements and allows tracing any change.
8. System Information
Real-time monitoring panel for the server where the SGA runs.
Access: System → System Information
Permission: Requires system information viewing permission
Hardware Indicators
Four gauge meters showing current usage:
| Meter | Description |
|---|---|
| CPU | Processor load percentage |
| RAM | Memory usage percentage |
| Disk | Storage usage percentage |
| Swap | Virtual memory usage percentage |
Real-Time Monitoring
- Line chart: Shows CPU (%) and RAM (%) evolution in real time
- Update interval: Every 5 seconds automatically
- History: Last 20 data points
Memory Details
| Metric | Description |
|---|---|
| Total | Total installed RAM |
| In Use | Actively used memory |
| Free | Available memory |
| Swap | Virtual memory usage (total/used/free) |
Disk Details
| Metric | Description |
|---|---|
| Total | Total disk capacity |
| Used | Used space |
| Available | Free space |
| Percentage | Usage expressed as percentage |
WhatsApp Status
Super Admin Only
This panel is only visible to users with the Super Admin role.
Shows the connection status with the WhatsApp microservice:
| Status | Description |
|---|---|
| Connected | ✅ The service is active and linked to a number |
| QR Available | 📱 Displays the QR code to link the WhatsApp number |
| Not Available | ❌ The microservice is not running |
The panel updates automatically every 10 seconds.
Module Navigation
| View | Description |
|---|---|
| Catalogs | 18 configuration tabs (requires Administrator profile) |
| Roles and Permissions | Role management (requires Administrator profile) |
| Users | Account management (requires Administrator profile) |
| Portal Credentials | Guardian portal access (requires Administrator profile) |
| System Languages | Interface translations (requires Administrator profile) |
| Email Templates | Automated email editing (requires Administrator profile) |
| Activity Log | Audit log (requires viewing permission) |
| System Information | Server monitoring (requires viewing permission) |
Frequently Asked Questions
| Question | Answer |
|---|---|
| Can I create new enrollment statuses? | Yes, from Catalogs → Enrollment Statuses. Assign a color to visually identify it throughout the system. |
| What happens if I delete a subject? | It can only be deleted if it is not assigned to any course. If it is in use, disable it instead. |
| How do I add a new payment method? | From Catalogs → Payment Methods → ➕ button. The new method will be available in all billing forms. |
| Can I create a custom role? | Yes. Create a new role, give it a description, and enable only the permissions needed for that profile. |
| How do I reset a user's password? | Delete the user and recreate them. The system will generate a new password and send the welcome email. You can also use the "Forgot my password" function from the login screen. |
| Do language changes require a restart? | No. The cache is automatically refreshed when saving. |
| Can I edit email templates in HTML? | Yes. The editor includes a rich text editor that generates HTML. You can insert formatting, tables, and images. |
| Who can view the activity log? | Only users with system activity viewing permission. Usually the Principal or System Administrator. |
| How often does system information update? | The gauges and CPU/RAM chart update every 5 seconds. WhatsApp status updates every 10 seconds. |
| How do I configure WhatsApp access? | From System Information (Super Admin), scan the QR code with the school's WhatsApp app to link the number. |

