diff --git a/ROADMAP.md b/ROADMAP.md
index 9da0883..10dad47 100644
--- a/ROADMAP.md
+++ b/ROADMAP.md
@@ -19,9 +19,9 @@ volgt.
T (deze week), Esc (paneel/sluiten); met hint.
- [x] **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.
-- [x] **Vak-wizard** (module `blokwizard`, default uit): stap-voor-stap vak →
+- [x] **Vak-wizard** (module `blokwizard`, default uit; verschijnt als tab in de Roostermaker): stap-voor-stap vak →
voor wie → wanneer/waar (+periode) → begeleiders → controle → inplannen.
-- [x] **Personen-wizard + import** (module `personenwizard`, default uit):
+- [x] **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/.
@@ -30,7 +30,7 @@ volgt.
- [~] **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** om per klas of per leerplein direct het rooster te tonen.
+- [x] **Snelmenu** per klas én per bovenliggende groep (chips in Rooster én Roostermaker) om direct dat rooster te tonen.
- [x] **Schooljaar uit het hoofdmenu** halen en **onder Rooster** plaatsen
(tab "Schooljaar") met snelle invoer + kalenderbeheer.
- [x] **Instellingenmenu** (subtiel onderaan de zijbalk) waaronder **Gebruikers**
diff --git a/backend/modules/blokwizard/apps.py b/backend/modules/blokwizard/apps.py
index 92a85ad..2fa6cb4 100644
--- a/backend/modules/blokwizard/apps.py
+++ b/backend/modules/blokwizard/apps.py
@@ -22,8 +22,7 @@ class BlokwizardConfig(AppConfig):
category="Hulpmiddelen",
core=False,
default_enabled=False,
- menu_items=(
- MenuItem("Vak-wizard", "/vak-wizard", icon="puzzle", order=40),
- ),
+ # Geen eigen menu-item: de wizard verschijnt als tab in de Roostermaker.
+ menu_items=(),
)
)
diff --git a/backend/modules/personenwizard/apps.py b/backend/modules/personenwizard/apps.py
index eba63b6..80ff5e8 100644
--- a/backend/modules/personenwizard/apps.py
+++ b/backend/modules/personenwizard/apps.py
@@ -22,8 +22,7 @@ class PersonenwizardConfig(AppConfig):
category="Hulpmiddelen",
core=False,
default_enabled=False,
- menu_items=(
- MenuItem("Personen toevoegen", "/personen-wizard", icon="users", order=42),
- ),
+ # Geen eigen menu-item: verschijnt als tab onder Personen.
+ menu_items=(),
)
)
diff --git a/frontend/src/pages.jsx b/frontend/src/pages.jsx
index c924c90..37005cb 100644
--- a/frontend/src/pages.jsx
+++ b/frontend/src/pages.jsx
@@ -344,6 +344,8 @@ export function PersonenPage() {
const [editId, setEditId] = useState(null);
const [filter, setFilter] = useState("");
const [nieuweFunctie, setNieuweFunctie] = useState("");
+ const [wizardAan, setWizardAan] = useState(false);
+ const [importView, setImportView] = useState(false);
async function maakFunctie() {
const naam = nieuweFunctie.trim();
@@ -362,6 +364,7 @@ export function PersonenPage() {
listResource("activiteiten").then(setVakken).catch(() => {});
listResource("subgroepen").then(setSubgroepen).catch(() => {});
listResource("leerpleinen").then(setLeerpleinen).catch(() => setLeerpleinen([]));
+ getModules().then((ms) => setWizardAan(ms.some((m) => m.key === "personenwizard" && m.enabled))).catch(() => {});
}
useEffect(() => { laadHulplijsten(); }, []);
@@ -445,10 +448,13 @@ export function PersonenPage() {