7.5 KiB
Roosterwijs — Roadmap / backlog
Geplande verbeteringen, gegroepeerd. [ ] = nog te doen, [x] = klaar.
Afgeronde fases (0–5) staan in README.md. Dit bestand bevat het werk dat nog
volgt.
Fase 6 — Rooster bewerken (snel & overzichtelijk)
- Blokken kopiëren naar andere tijden en dagen (via het bewerkpaneel naar meerdere tijdsloten tegelijk).
- Blok aanpassen bij klik: klik op een blok in de Roostermaker opent een bewerkpaneel.
- Snelle inline-aanpassing per blok: vak/activiteit, locatie, doelgroep
(groep/subgroep/leerling), begeleiders en opmerking wijzigen in het paneel.
- Vanuit de Roostermaker (tab Indeling) direct subgroepen aanmaken onder een hoofdgroep, met verantwoordelijke(n) — kolomsgewijs overzicht van subgroepen, vakken en wie verantwoordelijk is.
- Sneltoetsen in de Roostermaker: N (nieuw blok), ←/→ (week terug/vooruit), T (deze week), Esc (paneel/sluiten); met hint.
- Rol van een begeleider zichtbaar in de Roostermaker: afkorting (LK/PO/KO) bij de begeleider in een blok en de volledige rol bij het toewijzen.
- Vak-wizard (module
blokwizard, default uit; verschijnt als tab in de Roostermaker): stap-voor-stap vak → voor wie → wanneer/waar (+periode) → begeleiders → controle → inplannen. - Personen-wizard + import (module
personenwizard, default uit; tab onder Personen): leerling/medewerker enkel toevoegen óf in bulk via plakken/CSV (komma, puntkomma of tab; koprij optioneel) met preview; endpoint /api/personen-import/.
Fase 6 — Overzicht & navigatie
- [~] Alle klassen verwerkbaar in het rooster, overzichtelijk gemaakt — een scope-filter (per klas/leerplein/leerling/personeel) is toegevoegd in Rooster en Roostermaker; een vast per-leerplein-overzicht kan nog volgen.
- Snelmenu per klas én per bovenliggende groep (chips in Rooster én Roostermaker) om direct dat rooster te tonen.
- Schooljaar uit het hoofdmenu halen en onder Rooster plaatsen (tab "Schooljaar") met snelle invoer + kalenderbeheer.
- Instellingenmenu (subtiel onderaan de zijbalk) waaronder Gebruikers en Modulebeheer verdwijnen.
- De hint "Menu's verschijnen alleen voor ingeschakelde modules." uit de zijbalk verwijderd.
Vakken
- Per vak automatisch een passend icoon (afgeleid van de naam) — getoond
in het rooster en bij Activiteiten/vakken.
- Optioneel: een icoon handmatig kunnen kiezen/overschrijven (
icoon-veld op Activiteit + migratie core 0007; leeg = automatisch op naam).
- Optioneel: een icoon handmatig kunnen kiezen/overschrijven (
Stage-module — uitbreidingen
- Aparte (stage)locaties kunnen toevoegen, los van de gewone lokalen.
- Een begeleider aan meerdere stages koppelen, maar niet tegelijk aan
een theorievak (conflict wordt voorkomen bij opslaan + gesignaleerd via
/api/stage-conflicten/). - Een leerling verdwijnt op een stagedag(deel) uit de klas in het rooster (in het weekrooster gemarkeerd "Op stage" bij de betreffende blokken).
- Stage instelbaar per blok, per dagdeel of per dag.
Lokalen & dubbele boekingen
- Lokalen als apart roomsysteem (naast de vrije Locaties), met capaciteit; gedeeld door lessen en interne stages.
- Dubbele-boekingcheck per tijdslot: gemeld in het conflicten-overzicht; per school instelbaar om opslaan hard te blokkeren (Lokalen-scherm).
- Interne stages gebruiken nu een lokaal (de aparte stagelocatie-lijst is vervallen) en tellen mee in de dubbele-boekingcheck.
Groepsindeling
- Eén sleep-overzicht: bovenliggende groep → groep → subgroep genest, met een zijbalk "nog niet ingedeeld". Personen naar elk niveau slepen; × haalt ze weer weg. Leerlingen licht gekleurd, personeel donker; duidelijke gekleurde structuur per niveau. Inline aanmaken/hernoemen.
- Toon-filter (Allen / Leerlingen / Personeel) en multi-select: meerdere personen aanvinken en in één keer in een gekozen groep plaatsen (of de selectie samen slepen).
Koppelingen & inzetregels
- Personeel koppelen aan leerplein en subgroep (personeelsformulier: stamgroep, subgroep-begeleiding én leerpleinen).
- Theorievakken automatisch beschikbaar voor leerkrachten (een leerkracht mag altijd op een theorievak ingezet worden; daarnaast worden theorievakken bij het aanmaken automatisch gekoppeld).
- Inzetregel begeleider ↔ vak: leerkracht/praktijkondersteuner alleen op gekoppelde vakken (leerkracht bovendien altijd op theorievakken); klassenondersteuner overal.
- Hiërarchie vastgelegd: subgroep → groep (Subgroep.groep) en groep → leerplein (Leerplein.groepen).
Toegang & gebruikers
- Login + gebruikersbeheer gebundeld in de accounts-module; inloggen ook met e-mailadres.
- Wachtwoordreset: beheerder genereert/zet wachtwoord én self-service via e-maillink (SMTP via .env; standaard console-log).
- Bulk-import van gebruikers met automatisch gegenereerde wachtwoorden, persoon koppelen/aanmaken en een voorstel op naamgelijkenis.
Module: Urenoverzicht
- Module die berekent hoeveel uur een groep per vak krijgt. (module
uren, default uit; endpoint /api/urenoverzicht/) - Optie om dit per leerling te tonen, inclusief stage-uren.
- Filters op de uren-tabellen (per groep, per vak, zoek op leerling).
- Geschiedenis per leerling: momentopnames opslaan (model UrenMomentopname) en een tabel leerling × datum met totaal-uren.
- Vrije dagen tellen niet mee in deze urenberekening.
Roostermaker — vrije dagen & blok vervallen
-
Vak met geldigheidsperiode: een blok kan gelden van/tot een datum (leeg = altijd).
geldig_van == geldig_tot= eenmalig op die dag. -
Dag leegmaken + eenmalig alternatief: per dag knop 🧹 (alle blokken díe dag laten vervallen, blijft lesdag) en ➕ (eenmalig blok op die dag), zonder gevolgen voor andere dagen.
-
Vrije/vakantie-/studiedagen niet bruikbaar in de Roostermaker: een blok slepen naar een vrije dag wordt geweigerd; vrije dagkolommen zijn gearceerd; dag-acties (leegmaken/eenmalig) verschijnen niet op vrije dagen.
-
De actie heet nu "dit vak laten vervallen" (per blok, juiste tekst).
-
Een hele dag laten vervallen kan direct in het weekrooster (knop in de dagkop; maakt een vrije dag aan, met "weer lesdag" om te herstellen).
Pictogrammen & leerlingweergave (ZML)
- Pictogram per vak uploaden (afbeelding) en tonen in het rooster.
- Grote leerlingweergave (één dag, groot pictogram + vakkleur) en ouderweergave (weekoverzicht), per leerling of groep.
- Vakkleur duidelijk gebruikt in de weergaven.
- Dagdeel-indeling (Ochtend/Middag) met koppen + scheidingslijn in de leerling- en ouderweergave (grens 12:00).
- Later: pictogrammen ook per losse activiteit/stap binnen een dagdeel.
Later
-
Auto-rooster slimmer: voorkeuren — vak liever ochtend/middag (zachte voorkeur met fallback), bepaalde dagen vrijhouden, en max. blokken per dag per groep.
-
Auto-rooster voor meerdere klassen tegelijk: kies meerdere klassen; een vak (bv. gym/atelier) kan voor meerdere klassen gelden, met gedeelde bewaking van begeleider en lokaal over alle klassen heen.
-
Algemene visuele opfris (UX/uiterlijk).
-
Module: automatisch rooster genereren. De gebruiker ge