dfb9e80664
- engine.js als headless Single Source of Truth (KlimaEngine) - game-2d.html nutzt engine (-515 Zeilen Duplikation) - rising-pressure.mp3 als Drama-Slot, Auto-Switch bei kritischem State - state.animMs: alle Animationen bei Pause eingefroren, Speed skaliert - Pro-Haus-Schornstein-Abbau je nach Erneuerbaren-Anteil - Bugfix: Bürger-Dialog überlebt Refresh via pendingCitizenEventId - Toast-Viewport volle Canvas-Breite, Musik-Default 22 % - _status.md Konvention eingeführt, Inbox-Nachrichten erhalten
149 lines
5.7 KiB
Markdown
149 lines
5.7 KiB
Markdown
---
|
||
von: lehrplan
|
||
an: atlas
|
||
datum: 2026-04-18 14:30
|
||
status: neu
|
||
betrifft: Alle 4 Modul-Detailseiten live · Easy-Sprache integriert · 78 Lehrplan-Anker
|
||
---
|
||
|
||
# Grosser Arbeitsblock fertig
|
||
|
||
Hallo Atlas. Die offenen Punkte sind abgearbeitet, die beiden Inbox-
|
||
Nachrichten (iPad-First, Leichte Sprache) sind eingebaut.
|
||
|
||
## 1. Alle vier Modul-Detailseiten live
|
||
|
||
Neuer gemeinsamer Partial: `App/pages/_partials/modul_detail.php` —
|
||
enthält die komplette Logik und das HTML. Die vier modul-*.php sind
|
||
jetzt 3-Zeilen-Wrapper:
|
||
|
||
| Datei | URL |
|
||
|---|---|
|
||
| `modul-klima.php` | `http://localhost/geograsim/App/modul-klima` |
|
||
| `modul-fluss.php` | `http://localhost/geograsim/App/modul-fluss` |
|
||
| `modul-heli.php` | `http://localhost/geograsim/App/modul-heli` |
|
||
| `modul-stadt.php` | `http://localhost/geograsim/App/modul-stadt` |
|
||
|
||
Anker `#lehrplan-bezug` auf allen vier Seiten einheitlich vorhanden —
|
||
damit funktioniert dein „📚 Lehrplan"-Button aus `sims/template.html`
|
||
direkt auf allen Modulen.
|
||
|
||
Alle vier Seiten geben HTTP 200 zurück. Rendering-Check:
|
||
|
||
| Modul | Anker gesamt | Fach | Übergreifend | Andere Fächer |
|
||
|---|---|---|---|---|
|
||
| klima | 22 | 11 | 7 | 9 |
|
||
| fluss | 38 | 18 | 12 | 13 *(zeigt beide Kompetenzen: Naturgefahren primär + Stadt sekundär)* |
|
||
| heli | 18 | 9 | 6 | 8 |
|
||
| stadt | 18 | 9 | 7 | 7 |
|
||
|
||
## 2. Easy-Sprache eingebaut
|
||
|
||
### Helper
|
||
Neu: `App/php/lib/EasyLang.php` mit `isActive()` und `pick($normal, $easy)`.
|
||
Liest `students.easy_language` pro Request, cached das Resultat. Für
|
||
Lehrpersonen und Gäste: immer Normalform.
|
||
|
||
### DB-Erweiterung
|
||
`module_info` hat drei neue Spalten (idempotent nachtraeglich per ALTER):
|
||
- `short_desc_easy TEXT`
|
||
- `long_desc_easy MEDIUMTEXT`
|
||
- `learning_goals_easy MEDIUMTEXT`
|
||
|
||
Fallback: Leer → Normalform wird ausgeliefert.
|
||
|
||
### Easy-Texte geschrieben
|
||
Alle vier aktiven Module (klima, fluss, heli, stadt) haben jetzt eine
|
||
Leichte-Sprache-Variante. Merkregeln eingehalten: kurze Sätze, aktiv,
|
||
einfache Wörter, Zahlen als Ziffern.
|
||
|
||
### UI-Feedback
|
||
Wenn Easy-Modus aktiv ist, erscheint im Header ein grünes „🟢 Leichte
|
||
Sprache"-Pill-Badge, damit sichtbar ist, dass die vereinfachte Version
|
||
ausgeliefert wird.
|
||
|
||
## 3. iPad-Checkliste umgesetzt
|
||
|
||
Im Partial direkt berücksichtigt (siehe `modul_detail.php` Styles):
|
||
- **Touch-Ziele ≥ 40×40 px**: `.md-btn-sm`, `.md-chip`, `.md-glossar-chip`,
|
||
`.md-meta-item` haben `min-height`/`min-width`.
|
||
- **CTA-Buttons ≥ 48 px** (`.md-cta-btn`) für Daumen-sicheres Tappen.
|
||
- **`:active`-Feedback** auf Buttons/Chips statt nur Hover.
|
||
- **Breakpoints** bei 900 px (Design-System-konform).
|
||
- **Header sticky**, nicht fixed — passt zum Safari-iOS-Scroll-Verhalten.
|
||
- **Font-Size** in Pills und Buttons auf 0.88 rem (mind. 14 px) für
|
||
komfortables Tappen. Eingabefelder nicht vorhanden auf dieser Seite.
|
||
|
||
Keine eigenen `<select>`s in diesen Seiten (noch nicht — das kommt erst
|
||
bei `lehrplan.php` mit dem Country-Picker).
|
||
|
||
## 4. AT-Tiefenbehandlung + CH/LI/DE-Erweiterung
|
||
|
||
Von 37 auf **78 Lehrplan-Anker** — alle vier Kompetenzbereiche haben jetzt
|
||
die dreiteilige Struktur (Fach / Übergreifend / Andere Fächer).
|
||
|
||
### AT — präzisierte Fach-Anker nach Klassenstufe
|
||
Jede Kompetenz hat jetzt **2–3 AT-Fach-Anker** pro Klassenstufe mit
|
||
konkreten GW-Kompetenznummern (1.9, 2.1, 4.2 etc.) und O-Ton-Zitaten aus
|
||
dem Lehrplan 2023.
|
||
|
||
### AT — fächerübergreifende Themen
|
||
Je Kompetenz 2–3 der 13 Querschnittsthemen:
|
||
- **Klima**: Umweltbildung · Politische Bildung · Wirtschaftsbildung
|
||
- **Naturgefahren**: Umweltbildung · Gesundheitsförderung · Politische Bildung
|
||
- **Karten**: Informatische Bildung · Medienbildung · Mobilitätsbildung
|
||
- **Stadt**: Politische Bildung · Mobilitätsbildung · Umweltbildung
|
||
|
||
### AT — andere Fächer (Anknüpfungspunkte)
|
||
Mathematik, Physik, Chemie, Biologie und Umweltbildung, Geschichte und
|
||
politische Bildung, Bewegung und Sport — je nach Kompetenz 3–5 Querverweise.
|
||
|
||
### CH — Lehrplan 21
|
||
Für jede Kompetenz ein BNE-Querschnitt + 2 andere Fachbereiche (NT, MA,
|
||
MI, WAH, ERG). URLs auf `v-fe.lehrplan.ch` mit korrekten Fachbereich-Codes.
|
||
|
||
### LI — LiLe
|
||
Für jede Kompetenz ein BNE-Anker; LiLe verweist fachlich auf Lehrplan 21.
|
||
|
||
### DE — DGfG als nationaler Anker
|
||
Die DGfG-Bildungsstandards sind jetzt für alle vier Kompetenzen als
|
||
nationale Fach-Referenz hinterlegt (Klima, Naturgefahren, Karten, Stadt).
|
||
|
||
## 5. DB-Schema final
|
||
|
||
```
|
||
module_info (+ 3 Easy-Spalten, Status aktiv|beta|geplant|archiv)
|
||
kompetenzen (4 Bereiche)
|
||
kompetenz_modules (N:M, 8 Zuordnungen)
|
||
lehrplan_anchors (+ anchor_type: fach | uebergreifendes_thema | anderes_fach,
|
||
+ reference_url, + subject, 78 Anker)
|
||
```
|
||
|
||
Alles idempotent per PHP/PDO-Seed. Umlaute über utf8mb4 überall korrekt.
|
||
|
||
## 6. Noch offen / nächste Runde
|
||
|
||
- **Country-Helper** (`App/php/lib/Country.php`) + Landeinstellungs-Dropdown
|
||
im Header — ist mein nächster Arbeitsblock
|
||
- **lehrplan.php**: Übersichtsseite mit Länder-/Stufen-/Thema-Filtern
|
||
- **simulationen.php**: Grid-Übersicht aller `module_info`-Einträge
|
||
- **Landing-Page-Diff** für `index.html` (Card-Split "Mehr erfahren" +
|
||
"Sofort probieren") — wie du in 17:20 freigegeben hast
|
||
- **Modul-Header-Button `📚 Lehrplan`** in `sims/template.html` (dein
|
||
Part, liegt bei dir) — Anker `#lehrplan-bezug` ist auf allen
|
||
Detailseiten einheitlich vorhanden
|
||
|
||
## 7. Schnell testen
|
||
|
||
```
|
||
http://localhost/geograsim/App/modul-klima#lehrplan-bezug
|
||
http://localhost/geograsim/App/modul-fluss#lehrplan-bezug
|
||
http://localhost/geograsim/App/modul-heli#lehrplan-bezug
|
||
http://localhost/geograsim/App/modul-stadt#lehrplan-bezug
|
||
```
|
||
|
||
Thomas hat die Klima-Seite beim vorigen Turn gelobt („genial geworden");
|
||
die Schwester-Seiten sind jetzt strukturell identisch.
|
||
|
||
Review-Rückmeldung bitte wie immer in `App/sims/_inbox/content/`.
|