All modules
Teaching

Schedule

The front desk sees a whole week at once instead of opening twenty groups one by one. Lessons move with the mouse, and what happened during them goes to the group journal.

DayWeekMonthTeachersRooms Lessons this week: 24
MonTueWedThuFri
16:0017:0018:0019:00
ANG-A1KONW B2NIEM-B2ANG-A2HISZ-A1ANG-C1 ANG-B1 16:30
auto the school week · five views of one dataset
Schedule

What this module does

5
views of the same classes in time
92 days
the longest range in one request
500
blocks drawn in a single view
1
table of its own: the school's days off

Five views, one data set

Day, week and month answer "when", while lanes of teachers and rooms answer "with whom and where". The view and the day live in the URL, so a link returns to the same place.

Substitution one lane away

In the teacher view, dragging a block onto the neighboring lane changes who runs the lesson, key included - so the substitution later counts toward the settlement.

Grab the block or edge

Grabbing the block changes day and time, grabbing the bottom edge changes duration. Saving is optimistic: a refusal rolls the change back and says what blocked it.

School days off

An entry such as "Winter break" cancels lessons across the whole range, and the series generator skips those days. Removing it restores only what it canceled itself.

Same calendar on the dashboard

The dashboard tile runs the same machinery as the full screen: same views, same gesture, same lesson dialog, so a time gets fixed without switching screens.

Who sees what

A module is a permission, and which records may be touched is settled on write, not in the menu.

RoleSeesChanges
OwnerThe whole school's classes in all five views, days off included.Any class: time, length, teacher, room, mode and cancellation. Days off as well.
MethodologistThe same as the owner: the whole school.The same as the owner, the calendar of days off included.
TeacherThe whole school, unfiltered - who teaches next door is visible. Days off read only.Their own classes and unstaffed ones in their group. Other blocks are locked.
StudentNothing. No access to this screen.Nothing. Their own lessons show in their own journal.

The details nobody asks about during a demo

The things that only surface in the third week of working with the module.

What this module does not do
  • classes of its own - everything on the grid belongs to Groups and is saved there
  • constant clash detection - the ghost turns red only during a gesture, and only on screen
  • a gesture in the month view - position means no hour there, so the window sets the date
  • a student's plan - the view cannot narrow to their groups, so they get no module

Grabbing the block changes the day and the time, grabbing its bottom edge changes the length, and a selection on empty space creates a new class. Arrow keys do the same, and Shift with an arrow changes the length. The save is optimistic: the block sits in its new place from the moment of the gesture, and a refusal visibly puts it back and says what got in the way.

From Groups. The Schedule has no field of its own beyond days off: it reads them in one request by date range and writes them back through the Groups routes. The name and the colour of a block belong to the group, the time and the staffing to the group's lesson. One request covers at most ninety-two days, because a month padded to whole weeks is forty-two.

In the Teachers view the lanes are people, so dragging a block one row over changes who runs the class. The lanes come from Team by membership KEY, not by name, so the substitution will later count towards pay. A name typed by hand, with no key, gets a lane of its own, marked out - that is a sign something needs fixing, not data.

It cancels every class in its range that is not cancelled yet, of any kind, in one transaction with the entry - and a new series or a published plan skips that day. A manual cancellation is a SEPARATE state, so removing the entry restores only what the entry itself cancelled. One entry spans at most 366 days, and a school keeps up to 366 of them.

They see the whole school, and that is deliberate: a staff room knows who teaches next door. They can move their own, meaning those carrying their key or unstaffed ones in a group they teach; the same query works that out row by row. Other blocks are drawn locked and the window opens them read only - a gesture the API would refuse must not even start.

The lane splits into bands, and a band has a floor, because a six-pixel block can be neither read nor grabbed. In horizontal lanes the row grows by another band; in day and week the column holds as many as fit and folds the rest into a “+N” link with a list to open. The view draws five hundred blocks and says how many stayed off screen.

The Schedule will not notice, and that is a recorded debt rather than an oversight. A room is plain text on the lesson, and the lanes of the Rooms view are built straight from that text, so a typo creates a new room. The room catalogue in Settings feeds the dropdown but does not bind a lesson to a place - to catch a clash, the room would have to be a key.

No. The calendar shows what already stands and lets it be moved one class at a time; the weekly series is created by the generator in Groups. The Schedule does create and delete single classes: a make-up, a mistake, an extra lesson.

See Cerium from the inside.

14 days on your groups and instalments. No card, no strings.