# ALL-INKL-Update und Mitarbeiter-PINs

Der Server bleibt auf ALL-INKL. Du brauchst keinen laufenden Mac-Server. Die App läuft auf iPhone/iPad und verbindet sich mit deiner Website.

Aktuelles Folgepaket: **438cloud-FTP-AutoVersand-Update-2026-10-03.zip**. Es enthält ebenfalls die Mitarbeiterverwaltung und die Küchenverbesserungen; Upload-Schritte bleiben gleich. Siehe **KUECHE-SERVICE-UPDATE.md** und **APP-AUTOMATISCHER-VERSAND.md**. Bereits eingerichtete Mitarbeiter und Verwaltung nicht neu anlegen.

## 1. ZIP richtig einfügen

1. Vor dem Update den bisherigen Website-Ordner und die private kitchen.sqlite sichern.
2. **438cloud-FTP-Hosting-Update-2026-10-03.zip** entpacken.
3. Im FTP genau den bisherigen Website-Ordner öffnen, in dem index.htm und demo-smash.html liegen. Wenn du in /dist testest, diesen dist-Ordner verwenden.
4. Die Dateien und den assets-Ordner direkt dort hochladen. Bei vorhandenen Dateien **Ersetzen/Überschreiben** wählen.
5. Kein zusätzliches website-, Update- oder Paket-Verzeichnis anlegen. Eine ZIP nur hochzuladen ersetzt nichts. Beim Entpacken im Web-FTP muss die Funktion vorhandene Dateien ausdrücklich überschreiben; sonst auf dem Rechner entpacken und den Inhalt hochladen.
6. Die Website anschließend mit ⌘⇧R neu laden.

Im ZIP liegen index.htm, demo-smash.html, kueche.html, die anderen Website-Dateien und assets direkt auf oberster Ebene. Kein App-Projekt und kein Node-Server.
**kitchen-config.php, contact-config.php und private Datenbanken bleiben unverändert auf dem Server.** Sie sind bewusst nicht im ZIP. Deshalb ist dieses Paket ein Update einer bereits eingerichteten Website, keine Erstinstallation.

## 2. Verwaltung einmalig aktivieren

1. Öffne deine bestehende Küchenadresse: https://438cloud.com/kueche.html
   Beim Test in dist entsprechend https://438cloud.com/dist/kueche.html.
2. Mit der Rolle **Küche** und deinem bisherigen Küchenpasswort anmelden. Mitarbeitername leer lassen.
3. Im Bereich **Verwaltung einmalig aktivieren** das bisherige Küchenpasswort erneut eingeben.
4. Ein eigenes Verwaltungspasswort mit mindestens 12 Zeichen eingeben und wiederholen. Ein langes, einzigartiges Passwort verwenden und sicher speichern.
5. **Verwaltung aktivieren** anklicken. Du bist anschließend als Verwaltung angemeldet.

Die SQLite-Erweiterung wird automatisch in der bestehenden privaten Datenbank angelegt. Alte Bestellungen, Preise und Küchen-/Servicepasswörter bleiben erhalten. Du musst keine MySQL-Datenbank erstellen und keine Dateien mit PINs bearbeiten.

Nach der Aktivierung darf nur die Verwaltung Mitarbeiter und Speisekarte bearbeiten. Küche und Service behalten ihre Betriebsrechte.

## 3. Mitarbeiter anlegen

Unter **Team & Berechtigungen**:

1. Benutzername vergeben, z. B. lena: 3–32 Zeichen; kleine Buchstaben, Ziffern, Punkt, Bindestrich oder Unterstrich.
2. Anzeigenamen eintragen.
3. Berechtigung auswählen:
   - **Service:** Bestellungen erfassen und ansehen.
   - **Küche:** zusätzlich Ticketstatus und Timer ändern.
   - **Verwaltung:** zusätzlich Speisekarte und Mitarbeiter bearbeiten.
4. Persönliche PIN mit **6–8 Ziffern** vergeben. Alternativ ein Passwort mit mindestens 12 Zeichen.
5. **Zugang aktiv** angehakt lassen und **Mitarbeiter anlegen** drücken.

Jede Person bekommt einen eigenen Benutzernamen und einen eigenen PIN. Verwaltungszugänge besser mit langem Passwort absichern. PINs nicht öffentlich aushängen.

## 4. Mitarbeiter anmelden

Im Web-Terminal oder in der App den **Benutzernamen + PIN** eingeben. Die tatsächliche Rolle kommt vom Server; die Auswahl einer anderen Rolle gibt keine zusätzlichen Rechte.

Für den Haupt-Verwaltungszugang: Rolle **Verwaltung** wählen, Mitarbeitername leer lassen und das in Schritt 2 festgelegte Verwaltungspasswort eingeben.

## 5. App verbinden

Die App weiterhin über das bestehende SmashDemo.xcodeproj in Xcode auf deinem Gerät installieren. Das Projekt ist auf dem Rechner geblieben und wurde aktualisiert; es gehört nicht in den FTP-Ordner.

Unter **Betrieb → Verbindung** dieselbe Hosting-Adresse benutzen:
https://438cloud.com/kitchen-api.php
Bei dist: https://438cloud.com/dist/kitchen-api.php

Dann mit Mitarbeitername und PIN anmelden. Verwaltung kann auch in der App unter **Team → Mitarbeiter & Berechtigungen** Konten bearbeiten. Kein Start.command, localhost oder ständig laufender Mac erforderlich.

## 6. PIN ändern oder Zugang sperren

Als Verwaltung den Mitarbeiter auswählen:

- PIN-Feld leer: vorhandene PIN behalten.
- Neue PIN eingeben: PIN ersetzen.
- **Zugang aktiv** ausschalten: Konto sperren.

Speichern meldet diesen Mitarbeiter auf allen Geräten beim nächsten Serverabgleich ab; erneute Anmeldung erforderlich. Gesperrte Konten können sich nicht wieder anmelden. Der Haupt-Verwaltungszugang kann auf diesem Weg nicht gesperrt werden. Den eigenen angemeldeten Mitarbeiter über den Haupt-Verwaltungszugang bearbeiten.

Die bisherigen gemeinsamen Küchen-/Servicepasswörter bleiben als bestehende Zugänge erhalten. Wer diese kennt, kann sie weiterhin nutzen. Für persönliche Zuordnung nur Mitarbeiterzugänge verteilen.

## 7. Kontrolle und Hilfe

- Testweise einen Mitarbeiter anlegen, im zweiten Browser/auf dem Gerät anmelden und eine ausdrücklich als Test gedachte Bestellung erfassen. Küchenstatus und Timer am anderen Gerät kontrollieren. Es erfolgt keine Zahlung.
- Danach das Konto sperren: Der nächste Abgleich muss die Mitarbeitersitzung beenden.
- Keine Teamverwaltung sichtbar? Als **Verwaltung** anmelden, nicht als Küche oder Service.
- Kein Aktivierungsbereich? Haupt-Küchenzugang ohne Mitarbeitername verwenden; möglicherweise wurde Verwaltung schon eingerichtet.
- Zu viele Anmeldeversuche? Nach 15 Minuten erneut versuchen. Das Limit gilt auch für Geräte mit gemeinsamer IP-Adresse.
- PHP/Speicherfehler? Bestehende kitchen-config.php, privaten Speicherpfad, Schreibrechte und PDO_SQLite im Hosting prüfen. Nicht die Datenbank löschen.
- Fotos/Änderungen fehlen? Richtigen FTP-Ordner prüfen, assets mit hochladen und Browser vollständig neu laden.
- Verwaltungspasswort vergessen? Es gibt absichtlich keinen öffentlichen Passwort-Reset. Keine Datenbank löschen; sichere serverseitige Wiederherstellung separat klären.

Pilotsoftware: keine Zahlungsabwicklung und kein als rechtskonforme Fiskalkasse freigegebenes System.
