# Küchen- und Service-Update · 03.10.2026

Das aktuelle **438cloud-FTP-AutoVersand-Update-2026-10-03.zip** enthält diese Funktionen ebenfalls. Es ersetzt das unten genannte vorherige Paket und ergänzt die sichere App-Wiederholung; siehe **APP-AUTOMATISCHER-VERSAND.md**.

## Einspielen

**438cloud-FTP-Kuechen-Update-2026-10-03.zip** entpacken. Den Inhalt direkt in deinen bisherigen ALL-INKL-Website-Ordner hochladen und vorhandene Dateien überschreiben. Bei Tests in dist dort hochladen, nicht in einen neuen Paket-Unterordner.

Vorher Website und private Datenbank sichern. kitchen-config.php, contact-config.php und kitchen.sqlite bleiben unverändert; sie sind nicht im ZIP. Die Bilder liegen im vorhandenen assets-Unterordner. Keine App und kein Mac-/Node-Server im FTP-Paket. Nohra wurde nicht verändert.

Danach im Browser vollständig neu laden (⌘⇧R). Bestehende Mitarbeiterzugänge funktionieren weiter; keine neue Einrichtung nötig. Die SQLite-Einstellungen werden automatisch ergänzt.

## 1. Ein-Klick-Ausverkauft

Mit **Küche** oder **Verwaltung** im Web-Küchenterminal anmelden. Oben unter **Gerichte verfügbar / ausverkauft** ein Gericht anklicken:

- „Verfügbar — sperren“ setzt es auf ausverkauft.
- „Ausverkauft — freigeben“ macht es wieder auswählbar.

Diese Aktion ändert nur die Verfügbarkeit, nicht Name oder Preis. Service darf den Schalter nicht bedienen. Bereits angenommene Bestellungen werden nicht storniert.

**Sperren bleiben bis zur manuellen Freigabe bestehen — auch am nächsten Tag.** Es gibt keinen unsichtbaren automatischen Tagesreset. Website aktualisiert im Vordergrund ungefähr alle 10 Sekunden, App und Küchensteuerung ungefähr alle 4 Sekunden. Keine Push-Aktualisierung bei geschlossenem Browser/App.

## 2. Neue Live-Küchenansicht

**Live** zeigt Neu, In Arbeit und Bereit als getrennte Bereiche. Auf großen Displays nebeneinander, auf kleinen Displays untereinander. Mit den Filtern kannst du nur einen Bereich oder abgeschlossene Tickets ansehen.

Große Nummern, deutlichere Sonderwünsche und markierte überfällige Timer helfen am Pass. Status zurücknehmen, Pause/Fortsetzen und individuelle Timer bleiben erhalten. „Live“ zählt die noch zuzubereitenden Tickets, nicht die bereits bereiten.

Sonderwünsche sind keine geprüften Allergiehinweise. Eine Auswahl „ohne“ garantiert keine Allergenfreiheit; die Demo-Allergenhinweise bleiben unverifiziert.

## 3. Zubereitungszeit zentral einstellen

Im Bereich **Service-Steuerung** die Minuten (1–120) eintragen und **Minuten übernehmen** drücken.

- Neue, danach angenommene Tickets starten mit dieser Zeit.
- Bereits angenommene Tickets behalten ihre bisherigen Timer.
- Website und App zeigen „ca. … Minuten Zubereitung“. Das ist keine garantierte Abholzeit und keine berechnete Position in einer Warteschlange.
- Anfangswert bleibt der bisherige Standard, normalerweise 15 Minuten.

Wenn ein anderes Gerät gleichzeitig speichert, wird ein veralteter Stand abgelehnt. Aktuellen Stand laden und neu entscheiden. Bei Verbindungsverlust werden die Schalter gesperrt, nicht still lokal gespeichert.

## 4. Bestellannahme pausieren

**Bestellannahme pausieren** drücken und bestätigen. Website und App zeigen die Pause; neue Serverbestellungen werden abgelehnt. Der Warenkorb bleibt beim normalen Bestellversuch erhalten.

Die Küche arbeitet bereits bestätigte Tickets weiter ab. Eine offene, eventuell schon bestätigte Übertragung lässt sich mit derselben Vorgangskennung prüfen — dabei wird keine Doppelbestellung erzeugt. Noch nicht angenommene Entwürfe können während der Pause abgelehnt werden; diese nach Freigabe bewusst neu zusammenstellen.

Zum Wiederöffnen **Bestellannahme fortsetzen** drücken. Die Pause bleibt auch nach Neuladen oder am nächsten Tag bestehen, bis du sie beendest. Es gibt bewusst keinen automatischen Öffnungszeitplan.

Die öffentliche Demo bleibt eine Simulation ohne echte Bestellübertragung und lässt sich weiterhin ausprobieren. Die Pause gilt für Server-Tickets im angemeldeten Team-Modus sowie in der verbundenen App. Keine Zahlung oder Fiskalkasse.

## 5. Aktualisierte App

Das vorhandene **smash-ios/SmashDemo.xcodeproj** auf dem Rechner mit Xcode öffnen und über ⌘R auf dem iPhone/iPad neu installieren. Es wurde direkt aktualisiert und gehört nicht auf den FTP-Server.

In **Küche** öffnet das Schieberegler-Symbol die Service-Steuerung. Alternativ **Betrieb → Bestellpause, Wartezeit & Ausverkauft**. Küche und Verwaltung nutzen dieselben Server-Schalter wie im Browser. Deine bestehende ALL-INKL-Adresse beibehalten, einschließlich dist falls verwendet.

## Prüfstatus

Geprüft in einer isolierten PHP-8.3-Testumgebung: Rechte, Validierung, Versionskonflikte, Ausverkauft, Bestellpause, Erhalt vorhandener Tickets, unveränderte alte Timer, neue Wartezeit und Wiederholungen bestätigter Übertragungen. Zusätzlich DOM-Tests und Webansicht mit fiktiven Tickets auf großen und kleinen Viewports. App-Build und Modell-/Speicherprüfungen separat.

Kein automatischer FTP-Upload, keine echten Bestellungen und keine echten Mitarbeiteränderungen auf deinem Server. Ein gemeinsamer Zwei-Geräte-Test auf deinem ALL-INKL-Hosting und auf dem realen iPad bleibt vor Betrieb nötig.
