diff --git a/04_Tablet-Quiz/app/index.html b/04_Tablet-Quiz/app/index.html index 9aa465c..6aa7075 100644 --- a/04_Tablet-Quiz/app/index.html +++ b/04_Tablet-Quiz/app/index.html @@ -1270,7 +1270,9 @@ function renderMainIntro(){ $("#startRun").onclick=()=>{ seedAkte(recIndex); enterStation(recIndex); S.view="run"; save(); draw(); }; } -/* ---------- Schritt 2+3: Change-Art bestimmen (retry bis richtig) -------- */ +/* ---------- Aufgabe 1 (Bonus): Change-Art-Begründung -------------------- * + * Der Typ steht auf der Bonus-Karte → kein Rate-Quiz; es wird direkt die + * Begründung gezeigt (classifyDone wird beim Kartenklick auf true gesetzt). */ function renderClassify(){ const correct = S.change; const card = acard(S.service,S.change); @@ -1303,12 +1305,13 @@ function renderClassify(){ $("#backDeck").onclick=()=>{ S.view="bonusPick"; save(); draw(); }; } else { $("#panel").innerHTML = ` -
Aufgabe 1 · Change-Art ✓
+
Aufgabe 1 · Change-Art & Begründung
${cardBig}
-
✓ Richtig: ${CHANGE_TYPES[correct]}
-

Warum?

+
Change-Art: ${CHANGE_TYPES[correct]}
+

Die Karte ist als ${CHANGE_TYPES[correct]} ausgewiesen — besprecht gemeinsam, warum das so ist.

+

Warum ist es ein ${CHANGE_TYPES[correct]}?

${CHANGE_LEGEND[correct].idee}

${CHANGE_LEGEND[correct].bed.map(b=>`
${b}
`).join("")}

Beispiel: ${CHANGE_LEGEND[correct].bsp}

@@ -1459,7 +1462,7 @@ function renderBonusPick(){
`; $("#panel").querySelectorAll(".bonusCard").forEach(el=>{ el.onclick=()=>{ S.change=+el.dataset.c; S.mode="bonus"; - S.classifyDone=false; S.classifyWrong=null; + S.classifyDone=true; S.classifyWrong=null; // Typ ist auf der Karte ausgewiesen → nur Begründung, kein Quiz S.freigabeDone=false; S.freigabeWrong=null; S.entryDone=false; S.entryWrong=null; S.bonusReveal=false; S.view="classify"; save(); draw(); }; diff --git a/04_Tablet-Quiz/app/sw.js b/04_Tablet-Quiz/app/sw.js index 3a0baba..bca3813 100644 --- a/04_Tablet-Quiz/app/sw.js +++ b/04_Tablet-Quiz/app/sw.js @@ -1,5 +1,5 @@ /* Service Worker — SLC-Workshop Companion (App-Shell, offline-first) */ -const CACHE = "slc-companion-v20"; +const CACHE = "slc-companion-v21"; const SHELL = ["./", "index.html", "manifest.webmanifest", "icon.svg"]; // Action-Card-Grafiken (cards/s-c.png) fuer Offline vorab cachen (alle 30). const CARDS = []; diff --git a/PROJEKTSTAND.md b/PROJEKTSTAND.md index 1555fa9..1de3a5b 100644 --- a/PROJEKTSTAND.md +++ b/PROJEKTSTAND.md @@ -55,10 +55,11 @@ Operations/Service-Owner/Support. Mix aus **Vermittlung** (Lifecycle + Stationen (= Major je Service). **Main** ziehen → kurze **Orientierung** (Major, Service wird neu eingeführt, voller Lifecycle ab Design — **kein Einordnungs-Quiz**, der Typ ist bekannt) → **voller Stationen-Durchlauf** (Freigaben live an den Gates) → Abschluss → **Bonus-Auswahl** -(die 3 Varianten dieses Service: Standard/Emergency/Normal). **Bonus-Karte:** hier sind -**3 Aufgaben** sinnvoll (Typ unbekannt) — 1. Change-Art · 2. **Freigabe-Stelle** (SOR/DPM/MB · -SO · keine[Standard] · keine[Emergency]) · 3. Einstieg-Phase (je „nochmal" bis richtig) → -**Kurz-Auflösung** „welche Phasen sind noch relevant / fallen weg" (**kein voller Walk**, +(die 3 Varianten dieses Service: Standard/Emergency/Normal). **Bonus-Karte:** 3 Aufgaben — +1. **Change-Art-Begründung** (der Typ steht auf der Karte → **kein Rate-Quiz**, nur „warum +ist es ein X?") · 2. **Freigabe-Stelle** (Quiz: SOR/DPM/MB · SO · keine[Standard] · +keine[Emergency]) · 3. **Einstieg-Phase** (Quiz) → **Kurz-Auflösung** „welche Phasen sind +noch relevant / fallen weg" (**kein voller Walk**, Service gilt als bereits eingeführt) → zurück zur Bonus-Auswahl → „Service abschließen" → nächster Service (gespielte Services im Deck als ✓ markiert). > Hintergrund: Nur der **Major** rechtfertigt den vollen SLC; die anderen Change-Arten