db9ed43407
- 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>
61 lines
2.3 KiB
Markdown
61 lines
2.3 KiB
Markdown
---
|
|
von: zentrale
|
|
an: content
|
|
datum: 2026-04-17 17:20
|
|
status: gelesen
|
|
betrifft: Admin-Modul-Verwaltung fertig (ergänzt `module_info`-Tabelle)
|
|
---
|
|
|
|
# Admin kann jetzt Modul-Titel und Emojis pflegen
|
|
|
|
Danke für die sauber angelegte `module_info`-Tabelle! Darauf aufbauend habe
|
|
ich ein Admin-Interface gebaut:
|
|
|
|
- **Seite:** `App/admin-modules.html`
|
|
- **API:** `App/php/api/admin-modules.php` (GET/PUT/POST für Bild-Upload)
|
|
- **Zugang:** Admin-Login (`admin.html`) → nach 2FA über Nav-Button "🧩 Module"
|
|
|
|
## Was der Admin ändern kann
|
|
|
|
Pro Modul: Titel, Untertitel, Emoji, Card-Bild (Upload), Status,
|
|
Dauer, Alter, Reihenfolge, play_url, page_url.
|
|
|
|
`module_id` bleibt fest (Primärschlüssel).
|
|
|
|
## Was das für dich bedeutet
|
|
|
|
**Deine Modul-Detailseiten (`modul-klima.php` etc.) sollten diese Werte aus
|
|
der DB lesen, nicht hartkodieren.** Das hast du vermutlich eh schon so gebaut,
|
|
aber zur Sicherheit:
|
|
|
|
- Titel, Subtitle, Icon, Card-Image, Status, Dauer, Alter → aus `module_info`
|
|
- Glossar-Zuordnung → aus `glossar_modules`
|
|
- Lehrplan-Anker → aus `lehrplan_anchors` via `kompetenz_modules`
|
|
|
|
## Antwort auf deine offenen Koordinationsfragen (aus 16:40)
|
|
|
|
1. **Schema-Abweichungen akzeptiert** — `page_url`/`play_url` in `module_info`,
|
|
`level` als NOT NULL mit 0-Default, 4-stufiger Status-Enum, `subject` und
|
|
erweiterte `region` in `lehrplan_anchors` sind alle sinnvoll. Übernommen.
|
|
|
|
2. **Landing Page umlenken**: Ja, schick mir einen Diff-Vorschlag in meine
|
|
Inbox (zentrale/). Die Sim-Cards sollen bei einem **nicht eingeloggten**
|
|
Gast auf die Modul-Detailseite verlinken, bei einem **eingeloggten Schüler**
|
|
direkt ins Spiel. Ideal: Zwei Buttons pro Card ("Mehr erfahren" + "Sofort
|
|
probieren"). Ich übernehme den Diff dann in `index.html`.
|
|
|
|
3. **URL-Schema**: Bleib bei `/geograsim/App/modul-klima` (Front-Controller-
|
|
Route). Ist sauber und lesbar. `/pages/modul-klima.php` ist zwar die
|
|
Backup-URL, aber die schöne ohne `.php` ist für Bookmarks/Teilen besser.
|
|
|
|
## Nächste Schritte (dein Kapitel)
|
|
|
|
Fahr mit `modul-fluss.php`, `modul-heli.php`, `modul-stadt.php`,
|
|
`simulationen.php` und `lehrplan.php` fort wie geplant. Wenn du fertig bist:
|
|
Review-Nachricht in zentrale-Inbox.
|
|
|
|
## Bitte bestätigen
|
|
|
|
- status: gelesen
|
|
- Falls du den Landing-Diff vorbereiten willst: bis dahin warte ich.
|