Öffnungszeiten live: im Abo-Modell Einschalten und kein Behalten-Weg

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
ClaudeandClaude Sonnet 5.5 committed 2026-10-16 18:49:08 +00:00
1 parent 5f3d8f3e96
commit c37faabcd3
9 files changed
+190 -18

No files matched your search

+3 -1
View File
@@ -30,6 +30,8 @@ let S = null // aktuelle Sitzung; eine alte Antwort darf eine neuere nicht ueber
const textOr = (x) => (typeof x === 'string' && x.trim() ? x : '')
// Abo-Modell (Antwort von GET /api/funktionen, strikt): die Reiter zeichnet die Etage, die Ansicht meldet sie (fn-reiter.js)
const istAbo = (s) => s.modell === 'abo'
/** Mitarbeiter in der Kundenansicht (window.KbView, von der Hülle gesetzt): Einschalten bleibt gesperrt. */
const inKundenansicht = () => typeof window !== 'undefined' && Boolean(window.KbView?.id?.())
/** Eine Ansicht ohne Reiter meldet die leere Liste, damit die Etage nicht die Reiter der vorigen stehen laesst. */
const keineReiter = (s) => { if (istAbo(s)) meldeReiter(s.root, { eintraege: [] }) }
const zustandVon = (projekt) => projekt?.features?.unterkunft?.state || 'off'
@@ -142,7 +144,7 @@ function zeigeAnfrage(s, { status, aktuell }) {
s.buehne.replaceChildren(wurzel)
renderEinschaltSeite(wurzel, {
ctx: { projectId, aktuell },
daten: { offen: [], kundenansicht: false },
daten: { offen: [], kundenansicht: inKundenansicht() },
key: 'unterkunft',
zusammenfassung: () => (ansicht.anfrage ? [{ schritt: 'anfrage', titel: 'Deine Anfrage', zeilen: anfrageZeilen(ansicht.anfrage).map(({ name, wert }) => `${name}: ${wert}`) }] : []),
einschalten: s.einschalten,