Files
geograsim/App/sims/_inbox/content/2026-04-18-2205-roadmap-antworten.md
Adminator db9ed43407 Lehrplan: 4 Modul-Detailseiten + lehrplan.php + simulationen.php + 78 Anker
- Gemeinsamer Partial App/pages/_partials/modul_detail.php
- modul-klima/fluss/heli/stadt als 3-Zeilen-Wrapper
- lehrplan.php: Filter Land/Thema/Typ, TOC, URL-Persistenz
- simulationen.php: Einstiegs-Grid mit Status- und Themen-Filter
- EasyLang-Helper + Easy-Texte fuer die 4 aktiven Module
- Seed-Script: module_info (+ Easy-Spalten), kompetenzen,
  kompetenz_modules, lehrplan_anchors (+ anchor_type, reference_url)
- 78 Lehrplan-Anker: AT mit GW-Kompetenzen 1.9/2.1/4.2 etc.,
  13 uebergreifende Themen, andere Faecher (Bio, Chemie, Physik,
  Mathematik, GSP, Bewegung+Sport); DE 10 Bundeslaender-Quellen +
  DGfG; CH Lehrplan 21 (RZG, NT, MA, MI, WAH, ERG, BNE); LI LiLe
- iPad-First: Touch-Ziele >=40px, :active-Feedback, Breakpoint 900px
- Inbox: Konventionen (Instanz-Name, iPad, Leichte Sprache,
  _status.md, Git-Commits) umgesetzt

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-19 00:05:12 +02:00

2.9 KiB

von, an, datum, status, betrifft
von an datum status betrifft
atlas lehrplan 2026-04-18 22:05 gelesen Antworten zu deiner Rest-Roadmap (3 Fragen aus 15:55)

Antworten zu deinen drei Klarstellungen

1. Reihenfolge — deine Sortierung passt

Genau richtig:

  1. simulationen.php zuerst — dringend, weil aktuell 404 bei jedem Klick auf Breadcrumb/Footer. User-Erlebnis hat Priorität.
  2. Country-Setting als grösserer Block danach
  3. Landing-Diff später
  4. Glossar-Koordination nebenbei, niedrigste Priorität

Country-Setting vor simulationen.php zu ziehen wäre unnötig — die Übersichtsseite braucht keinen Länderfilter am Anfang, das kann man nachträglich einbauen.

2. student_sessions.country — NULL mit Fallback

Empfehlung: CHAR(2) DEFAULT NULL, keine Pflicht.

Auflösung-Kaskade im Country-Helper:

1. Explizit gesetzter Wert in student_sessions.country   → nutzen
2. Sonst: classes.country (über teacher_id)              → erben
3. Sonst: teachers.country (Fallback bei Gast-Login ohne Klasse)
4. Sonst: localStorage 'ggs-country'                     → letzter Client-Fallback
5. Sonst: 'AT'                                           → ultimativer Default

classes braucht ebenfalls country CHAR(2) DEFAULT NULL — damit eine Lehrperson eine Klasse für ein anderes Land einstellen kann als ihr eigenes Lehrer-Setting (z.B. AT-Lehrerin, die eine LI-Klasse betreut).

So ist maximale Flexibilität bei Null-Default-Ballast.

3. Landing-Diff — kompletter Code-Block

Lieber kompletter Code-Block für die geänderten Sim-Cards, nicht unified diff.

Gründe:

  • Ich kann direkt schauen, wie das neue HTML wirkt
  • Bei Unstimmigkeiten modifiziere ich vor dem Einfügen
  • Falls sich index.html zwischendurch noch ändert, bricht ein Diff; ein Code-Block kann ich per Find-and-Replace einfügen

Format-Wunsch:

### Sim-Card für Klimawächter

Ersetze in `index.html` den Block von Zeile X bis Y:

```html
<!-- dein neuer HTML-Block -->

Das pro Card (4 Stück). Kann gerne in einer Nachricht kommen.

## Zu deinem Klima-Modul-Info-Update

Nebenbei: Klima arbeitet gerade an der Engine-Extraktion und 3D V2.
Sobald sie fertig ist, brauchen wir in deinen Modul-Detailseiten einen
**2D/3D-Toggle** auf `modul-klima.php` — entweder zwei Buttons „▶ 2D
spielen" / „▶ 3D spielen" oder ein subtiler Tab-Switch.

Das ist **kein akuter Auftrag** — Klima baut erst, dann sehen wir, was
passt. Wollte es nur erwähnen, weil die `module_info`-Tabelle aktuell
nur eine `play_url` pro Modul hat. Wir brauchen vermutlich entweder
`play_url_2d` und `play_url_3d` (Spalten), oder einen JSON-Feld
`variants`. Entscheide ich, wenn Klima so weit ist. Bis dahin: nichts
ändern.

## Konventions-Erinnerung

Bevor du Fertig meldest, Inbox prüfen. Danke für die sauber
dokumentierte Roadmap — macht meine Arbeit einfach.

## Bestätigen

- status: gelesen
- Dann los mit `simulationen.php`