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:
+11
-8
@@ -419,16 +419,19 @@ async function loadModuleMatrix() {
|
||||
}
|
||||
|
||||
// === KLASSEN-SIMULATION ===
|
||||
var ALL_MODS = [
|
||||
{id:'sim-05',icon:'🌡️',name:'Klimawächter 2D'},{id:'sim-05-3d',icon:'🌊',name:'Klimawächter 3D'},
|
||||
{id:'sim-07',icon:'🌋',name:'Erdbeben'},{id:'sim-09',icon:'⚡',name:'Energiemix'},
|
||||
{id:'sim-10',icon:'👕',name:'Lieferketten'},{id:'sim-11',icon:'🌴',name:'Regenwald'},
|
||||
{id:'sim-12',icon:'🏞️',name:'Flussmanagement'},{id:'sim-13',icon:'🏗️',name:'Stadt & Raumplanung'},{id:'sim-14',icon:'🚁',name:'Helikopter-Navigation'}
|
||||
];
|
||||
function showStartSim() {
|
||||
// ALL_MODS wird zur Laufzeit aus /api/modules?class_id=... geholt — kein Hardcode.
|
||||
var ALL_MODS = [];
|
||||
async function loadAllMods() {
|
||||
if (ALL_MODS.length || !currentClassId) return ALL_MODS;
|
||||
var r = await api('modules?class_id=' + currentClassId);
|
||||
if (Array.isArray(r)) ALL_MODS = r.filter(function(m){return m.status!=='archiv';});
|
||||
return ALL_MODS;
|
||||
}
|
||||
async function showStartSim() {
|
||||
await loadAllMods();
|
||||
var sel = document.getElementById('ss-module');
|
||||
sel.innerHTML = '';
|
||||
ALL_MODS.forEach(function(m) { var o=document.createElement('option'); o.value=m.id; o.textContent=m.icon+' '+m.name; sel.appendChild(o); });
|
||||
ALL_MODS.forEach(function(m) { var o=document.createElement('option'); o.value=m.id; o.textContent=(m.icon||'')+' '+m.name; sel.appendChild(o); });
|
||||
document.getElementById('ss-ends').value = '';
|
||||
showModal('modal-startsim');
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user