diff --git a/01_3D-Druck/gemini/Puck_Entscheidung_gemini.svg b/01_3D-Druck/gemini/Puck_Entscheidung_gemini.svg new file mode 100644 index 0000000..c74de7e --- /dev/null +++ b/01_3D-Druck/gemini/Puck_Entscheidung_gemini.svg @@ -0,0 +1,61 @@ + + \ No newline at end of file diff --git a/01_3D-Druck/gemini/Puck_design_gemini.svg b/01_3D-Druck/gemini/Puck_design_gemini.svg new file mode 100644 index 0000000..e9c04eb --- /dev/null +++ b/01_3D-Druck/gemini/Puck_design_gemini.svg @@ -0,0 +1,72 @@ + + \ No newline at end of file diff --git a/01_3D-Druck/gemini/Puck_operation_gemini.svg b/01_3D-Druck/gemini/Puck_operation_gemini.svg new file mode 100644 index 0000000..ddf2f42 --- /dev/null +++ b/01_3D-Druck/gemini/Puck_operation_gemini.svg @@ -0,0 +1,75 @@ + + \ No newline at end of file diff --git a/01_3D-Druck/gemini/Puck_review_gemini.svg b/01_3D-Druck/gemini/Puck_review_gemini.svg new file mode 100644 index 0000000..4ff2d68 --- /dev/null +++ b/01_3D-Druck/gemini/Puck_review_gemini.svg @@ -0,0 +1,72 @@ + + \ No newline at end of file diff --git a/01_3D-Druck/gemini/Puck_support_gemini.svg b/01_3D-Druck/gemini/Puck_support_gemini.svg new file mode 100644 index 0000000..c731d39 --- /dev/null +++ b/01_3D-Druck/gemini/Puck_support_gemini.svg @@ -0,0 +1,73 @@ + + \ No newline at end of file diff --git a/01_3D-Druck/gemini/Puck_transition_gemini.svg b/01_3D-Druck/gemini/Puck_transition_gemini.svg new file mode 100644 index 0000000..b46ebe4 --- /dev/null +++ b/01_3D-Druck/gemini/Puck_transition_gemini.svg @@ -0,0 +1,76 @@ + + \ No newline at end of file diff --git a/04_Tablet-Quiz/app/index.html b/04_Tablet-Quiz/app/index.html index a6745a7..2db2360 100644 --- a/04_Tablet-Quiz/app/index.html +++ b/04_Tablet-Quiz/app/index.html @@ -1294,7 +1294,7 @@ function stationTiefe(id){ return BEARBEITET.has(id) ? "bearbeitet" : "entwurf"; function tiefeBadge(id){ const t = stationTiefe(id); return t==="bearbeitet" - ? `● Bearbeitet` + ? `● Ausgearbeitet` : `○ Entwurf`; } /* Dokumente mit eigenem Detail-Feedback (Frank): Gate 1/2/3 + Service Review. */ @@ -1325,7 +1325,7 @@ function defaultState(){ freigabeDone:false, freigabeWrong:null, entryDone:false, entryWrong:null, bonusReveal:false, bonusDone:{}, servicesDone:{}, akteFlash:null, svcModalSel:null, - index:0, stage:"discuss", quizIndex:0, gateDeciderDone:false, gateCrit:0, gate1Approval:null, + index:0, stage:"discuss", quizIndex:0, gateDeciderDone:false, gateCrit:0, gateCritDone:false, gate1Approval:null, feedback:{}, feedbackSaved:{}, feedbackQueue:[], actStep:0, actReveal:false, actDone:false, arteWrong:null, picks:{}, done:{}, akte:{}, @@ -1820,7 +1820,7 @@ function enterStation(idx){ } S.index = idx; S.stage = STATIONEN[idx].typ==="gate" ? "gate" : "act"; - S.gatePick = null; S.quizIndex = 0; S.gateDeciderDone = false; S.gateCrit = 0; S.gate1Approval = null; + S.gatePick = null; S.quizIndex = 0; S.gateDeciderDone = false; S.gateCrit = 0; S.gateCritDone = false; S.gate1Approval = null; S.actStep = 0; S.actReveal = false; S.actDone = false; S.arteWrong = null; S.akteFlash = null; document.body.classList.remove("akteOpen"); } @@ -2071,6 +2071,25 @@ function renderGate(st){
Alle Kriterien geprüft. Geforderte Artefakte in der Akte (siehe oben)? Pflicht-Figuren am Gate-Puck?
`:``}` : ``; + // ---- Schritt 2: Prüf-Kriterien (eigener Screen) ---- + if(pruef.length && !S.gateCritDone){ + return ` + ${revisitNote} + ${zielLine} +Entscheidet: ${roleLabel(keeper)}
+ ${reqLine} + ${critWrap} +Entscheidet: ${roleLabel(keeper)}
`; + // Zweistufiges Gate (Gate 1): erst Freigabe-Entscheidung, dann Build-/Konfig-Routing. if(st.freigabe){ if(S.gate1Approval==null){ @@ -2078,12 +2097,12 @@ function renderGate(st){ ``).join(""); return ` ${revisitNote} - ${zielLine} -Entscheidet: ${roleLabel(keeper)}
+ ${critRecap} ${reqLine} - ${critWrap}Entscheidet: ${roleLabel(keeper)}
+ ${critRecap} ${reqLine} - ${critWrap} -