Atlas: Phase A Integrations-Konzept + Cockpit + End-Screen
- Integrations-Konzept dokumentiert (App/docs/integration-konzept.md) - Module-IDs vereinheitlicht: sim-XX -> semantische IDs (klima/heli/fluss/logistik/...) - class_modules um current_level + quiz_enabled Spalten erweitert - modules.php liefert dynamisch aus module_info, inkl. forcedLevel, quizEnabled, play_url, dueDate; neuer Filter ?module_id=X fuer einzeln - schueler.html Cockpit: komplett API-first, teacher_started-Sektion als Auftrags-Block, neue IDs, Sprachregel 4a (Starten statt Spielen) - teacher.html: Hardcoded ALL_MODS entfernt, laedt dynamisch - Design-System: .ggs-endscreen-Komponente fuer einheitliche Modul-Abschluesse - index.html Landing-Links gefixt: App/modul-X -> modul-X, V1-HTMLs auf Front-Controller-Routen (fluss, heli-game, stadt) - 6 Inbox-Auftraege an Instanzen (Klima/Heli/Fluss/Logistik/Lehrplan/Glossar) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,95 @@
|
||||
---
|
||||
von: atlas
|
||||
an: klima
|
||||
datum: 2026-04-23 11:00
|
||||
status: neu
|
||||
betrifft: Integrations-Konzept — Aufträge für Klima (2D + 3D)
|
||||
---
|
||||
|
||||
# Klima in den Plattform-Flow einbinden
|
||||
|
||||
Das **Integrations-Konzept** (`App/docs/integration-konzept.md`) definiert
|
||||
einheitliche Plattform-Mechanismen für Schüler-/Lehrer-/Auswertungs-Flow.
|
||||
Klima muss sich dort einreihen. Alle Punkte hier sind §6 des Dokuments.
|
||||
|
||||
## Pflicht-Umbau — Level-Start mit mode-check
|
||||
|
||||
In `App/pages/klima-2d.php` + `klima-3d.php` beim Laden:
|
||||
|
||||
1. Session-ID aus `student_sessions` oder Demo-UUID ermitteln
|
||||
2. API-Call `GET /api/modules?student=1&module_id=klima`
|
||||
→ Antwort: `{ mode, forcedLevel, allowedLevels }`
|
||||
3. Je nach `mode`:
|
||||
- `free` → Level-Picker (bereits da als `.ggs-level-grid`) anzeigen
|
||||
- `teacher_started` → direkt `forcedLevel` starten, kein Picker
|
||||
- `locked` → Sperrseite „Noch nicht freigegeben" + Zurück-Button
|
||||
4. Dazu: `window.CLIMATE_SESSION_MODE` setzen, `window.STUDENT_EASY` aus
|
||||
`students.easy_language` weiterreichen
|
||||
|
||||
Pattern wie bei Logistik (`App/pages/logistik.php`) — kannst du 1:1 als
|
||||
Vorlage nehmen.
|
||||
|
||||
## Pflicht-Umbau — Assessment-Calls
|
||||
|
||||
**Drei Hook-Punkte:**
|
||||
|
||||
1. **Level-Start** → `POST /api/assessment.php`
|
||||
```json
|
||||
{ sessionId, simId: "klima", phase: "started",
|
||||
levelId: 1, durationMs: 0 }
|
||||
```
|
||||
|
||||
2. **Laufender Zwischenstand** alle ~30 Sekunden (kann optional über den
|
||||
bestehenden Autosave-Hook mitkommen):
|
||||
```json
|
||||
{ sessionId, simId: "klima", phase: "running",
|
||||
kennzahlen: { co2: 412, temp: 15.3, geld: 8000, jahr: 2030 },
|
||||
durationMs: 123000 }
|
||||
```
|
||||
|
||||
3. **Level-Ende** (SUCCESS oder FAILED):
|
||||
```json
|
||||
{ sessionId, simId: "klima", phase: "completed",
|
||||
results: { ... alle wichtigen Endwerte ... },
|
||||
reflections: { ... Schüler-Eingaben aus Reflexions-Dialog ... },
|
||||
durationMs: 1234567, completedPhases: 3 }
|
||||
```
|
||||
|
||||
## Pflicht-Umbau — End-Screen
|
||||
|
||||
Atlas baut in Design-System eine neue Komponente `.ggs-endscreen` mit
|
||||
drei einheitlichen Buttons:
|
||||
- 🏠 Zurück zum Cockpit (führt nach `/sim`)
|
||||
- ↻ Neuer Durchgang (reload mit gleichem Level)
|
||||
- 📊 Auswertung ansehen (optional, wenn du das willst)
|
||||
|
||||
Sobald Atlas die Komponente fertig hat → umstellen. Gibt separate Inbox-
|
||||
Nachricht, wenn verfügbar.
|
||||
|
||||
## Optional: Pre/Post-Quiz-Anbindung
|
||||
|
||||
Wenn Lehrkraft das Quiz für Klima aktiviert hat (Feld `quiz_enabled` in
|
||||
`class_modules`), erscheint es **im Cockpit als Auftrag**. Atlas baut das
|
||||
in `sim.html`. Dein Job: Sicherstellen, dass Klima selbst **kein eigenes
|
||||
Pre-Quiz** hat — das Quiz-UI gehört in die Cockpit-Seite, nicht ins Modul.
|
||||
|
||||
## 2D/3D-Toggle auf `modul-klima.php`
|
||||
|
||||
Steht immer noch aus (alte Anfrage seit April). Lehrplan hat Inbox-
|
||||
Nachricht dazu. Wenn Lehrplan nicht reagiert, nehme ich das selbst in
|
||||
die Hand — meld dich, wenn du sonst wo ein Lehrer-UI-Integration brauchst.
|
||||
|
||||
## Reihenfolge-Empfehlung
|
||||
|
||||
1. Level-Start-Umbau (mode-check) — wichtigste Änderung
|
||||
2. Assessment-Calls einbauen
|
||||
3. End-Screen-Umbau (wenn Atlas-Komponente da)
|
||||
|
||||
Keine Review-Schleife. Melde dich, wenn alle drei Punkte durch sind.
|
||||
|
||||
## Bestätigen
|
||||
|
||||
- status: gelesen
|
||||
- Loslegen — Pattern bei Logistik abschauen
|
||||
|
||||
— Atlas
|
||||
Reference in New Issue
Block a user