The administrator dashboard is the first screen an admin user sees after login. It gives an at-a-glance summary of the current state of all extracurricular activities through four metric cards, followed by a table of the six most recently entered activities. All values are computed live from the in-memoryDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/rtajio/ESEN/llms.txt
Use this file to discover all available pages before exploring further.
actividades array every time renderDash() is called.
Stat cards
The dashboard renders four stat cards inside a responsivestats-grid. Each card holds an icon, a label, a large numeric value, and a short sub-label.
Total actividades
Count of activities where
activo === true. Inactive (disabled) activities are excluded from this figure.Participantes
Size of a
Set built from every participant name across all activities, both active and inactive. Duplicate names are deduplicated automatically.Horas acumuladas
Sum of
horas × participantes.length for every active activity. This gives the total validated person-hours across the institution.Resoluciones
Size of a
Set built from every res field across all activities. Each unique resolution number is counted once.renderDash() implementation
The four values are derived inrenderDash() (app.js:193):
app.js
pts uses flatMap over all activities (not only active ones), so a student who participated in a now-inactive activity is still counted in the Participants card.Recent activities table
Below the stat cards, a card labelled Actividades recientes renders a table with up to six rows, taken from the front of theactividades array (actividades.slice(0, 6)). The table is not filtered — it reflects insertion order.
| Column | Source field | Notes |
|---|---|---|
| Actividad | nombre | Rendered in bold |
| Categoría | cat | Rendered as a colour-coded badge |
| Fecha | fecha | Formatted as DD/MM/YYYY via formatDate() |
| Horas | horas | Rendered as Xh in bold |
| Estado | activo | Rendered as a status badge |
”Ver todas” button
A Ver todas button in the card header callsshowView('actividades'), navigating to the full Activities view where all records are shown with filters.
Status badges
Status is rendered bystatusBadge(activo) (app.js:81):
Activo
CSS class
badge badge-green — background #EAF3DE, text #27500A. Displayed when activo === true.Inactivo
CSS class
badge badge-gray — background #F1EFE8, text #444441. Displayed when activo === false.Category badges
Category colours are defined in theCAT_COLORS mapping (app.js:13) and applied by the catBadge(c) helper (app.js:77):
app.js
| Category | Badge class | Background | Text |
|---|---|---|---|
| Académico | badge-blue | #E6F1FB | #0C447C |
| Deportivo | badge-teal | #E1F5EE | #085041 |
| Cultural | badge-coral | #FAECE7 | #712B13 |
| Voluntariado | badge-green | #EAF3DE | #27500A |
| Liderazgo | badge-amber | #FAEEDA | #633806 |