Admin Experience
Administrators run the conservatory from the portal. Their menu is
[Schedule] [Calendar] [Students] [Teachers] [Leads] [Admin] [Semester selector] [Profile photo] — most admin pages operate in the context of the
selected semester.
When there are no semesters yet (a fresh install), the admin is walked through a bootstrap: confirm locations, upload teachers by CSV, then create the first semester through the wizard. Once at least one semester exists, the system resolves a default: the semester containing today, else the next future one, else the most recent past one (test semesters are ignored unless nothing else exists).
The key flows
Each operational flow has its own detailed page:
| Flow | What it covers |
|---|---|
| Create a Semester | The wizard, the six CSV imports, pre-populating from a previous semester |
| View the Semester Schedule | The weekly grid, cell colors, confirming reservations (lessons + charges), drag-to-move |
| View the Calendar & a Week | The semester date list and the weekly grid of real lessons |
| View a Student | The student page — parents, reservations, charges, notes, and Edit Profile |
| Process Leads & Uncompleted Forms | The queues, statuses, append-only notes, account invites |
| Convert a Lead to a Family | Creating people, placing reservations, moving held payments |
| Accept a Check & Other Ledger Entries | Manual payments, scholarships, custom adjustments |
| Move a Lesson’s Time | Standing-slot moves vs. one-week reschedules |
| Change a Lesson’s Duration | One-week changes, and standing changes with pro-rata accounting |
| Assign a Substitute Teacher | Covering one lesson, and what changes for everyone |
| Cancellations & One-Off Changes | Cancelling, attendance, room changes, ad hoc lessons |
The main pages
Schedule — the semester’s weekly grid; the admin landing page. Covered in View the Semester Schedule.
Calendar — the semester’s class dates as a chronological list (class days green, holidays purple), and a weekly view of real lessons. Covered in View the Calendar & a Week.
Students and Teachers — filterable lists with the same pattern: a
keyword filter doing prefix-token search over names, phone numbers, and
address lines (for students, parent names too), with extra filters — by
teacher and by instrument — under a [+]. The students list shows Name /
Parent(s) (name on one line, phone + email on the next, per parent) /
Actions; the teachers list shows Name / Contact / Actions. Add buttons sit
top-right.
The Student page — where every student link lands
(View a Student): parents with big
copy-friendly contact info, this semester’s lesson reservations (instrument
in parentheses) with a lesson-notes summary, Charges and Payments (the
balance, the line-item breakdown, and — if those don’t reconcile — the
earlier entries that explain it; from here an admin records
payments and adjustments), and read-only
student details. Edit Profile (top right) opens the form for the basic
fields and the demographic; deleting flags is_deleted after a
confirmation; nothing is actually removed.
Demographics is a single code — B, L, W, AAPI, or O, plus “Not
recorded” — kept for the conservatory’s own reporting. It is edited as a
field on the Edit Profile form, shown as one line on the student page, and
appears nowhere else: the accessors behind it require an admin, and the
column is absent from every query a parent, student, or teacher page runs. The
Students & Parents CSV import has a matching optional Demographic column,
so a roster can be loaded with the codes already in it; a blank cell leaves
whatever is on file alone.
Edit Teacher — photo, basic info, this semester’s students (linked), a Schedule Days card for adding or removing the teacher’s (location, day) columns on the semester schedule, and soft delete.
Edit Parent — photo, basic info, children with an Add Child dialog offering two paths: Add New Child (name, suffix, preferred name, class of) or Link Existing Child (typeahead + Link Child). Soft delete.
Leads — sits in the top bar rather than the Admin submenu, because working the queue is daily work. Covered in Process Leads.
Admin menu
The [Admin] menu collects the back-office pages: Semesters (the creation
wizard, imports, and carry-forward), Locations, Announcements, Email
Templates, and Settings.
Maintenance (developers only)
Visible only to users with both is_admin and is_developer: the email
log, the activity log, server logs (paths configured via ADMIN_LOG_FILES),
database migrations (Admin › Migrations, enabled where MIGRATIONS_DIR
is configured), and the Installment Fee Sweep — a dry-run preview of the
daily job that charges the installment plan fee to unpaid accounts, with a
run-now button (see
Accept a Check).
