81dfff51a040e5753e6d985e2621346a23a27290
exportKaffeeliste.php band config.php direkt ein (keine Bootstrap-Kette) und hatte ueberhaupt keine Zugriffskontrolle. TCPDF war im Repo nur teilweise vorhanden (include/-Verzeichnis und Font-Definitionen fehlten komplett), wodurch der Export bislang immer mit einem Fatal Error abbrach. - TCPDF/include/ und die 14 PDF-Standard-Fonts (Helvetica, Courier, Times, Symbol, ZapfDingbats) aus dem offiziellen TCPDF-6.6.2-Release nachvendort (nicht die vollen ~25 MB an Unicode-Fonts, die hier nicht gebraucht werden). - Zugriffskontrolle ergaenzt (owner/admin/treasurer + Legacy-Fallback wie bei den anderen Treasurer-Seiten). - Vieltrinker-/Wenigtrinker-Aufteilung liest jetzt tenant-sicher ueber ledger_fetch_participants_by_window_marks() statt Legacy-SQL direkt gegen kl_Kaffeeverbrauch; Preis pro Strich kommt aus tenant_settings statt kl_config. N+1-Abfragen pro Zeile durch die bereits geladene Teilnehmerzusammenfassung ersetzt. - scripts/http-smoke.php prueft den Export jetzt als regulaeren Check (gueltige PDF-Antwort) statt als bekannten offenen Punkt. - Live getestet: gueltiges zweiseitiges PDF, Namen/Salden im Textstream verifiziert, Aufteilung stimmt mit Ledger-Daten ueberein. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Kaffeeliste
Dieses Repository enthält den laufenden Umbau der Kaffeelisten-App von einer Windows/IIS/LDAP-gebundenen Legacy-App zu einer mehrkundenfähigen SaaS- Anwendung. Der Umbau erfolgt schrittweise im selben Repository, nicht in einem getrennten Zielverzeichnis: Legacy-Seiten und neue SaaS-Bausteine liegen nebeneinander, bis eine Seite vollständig auf das neue Modell umgestellt ist.
Den vollständigen Plan mit Zielbild, Datenmodell, Rollenmodell und
Meilensteinen beschreibt docs/saas-umstrukturierungsplan.md. Der
Fortschritt je Meilenstein steht in docs/m2-technical-foundation.md bis
docs/m5-app-kern.md.
Struktur
- Legacy- und SaaS-Seiten liegen als flache PHP-Dateien im Webroot, zum
Beispiel
index.php,stricheintragen.php,kaffeeliste.php,mitarbeiterverwalten.php. app/: zentrale Bausteine für Bootstrap, DB-Zugriff, Auth, Mail und das neue Ledger-Modell (app/ledger.php).database/migrations/: versionierte Schemaänderungen, anzuwenden überscripts/migrate.php.scripts/: Migrations-, Backfill- und Prüfskripte (Golden Master, HTTP-Smoke, M3/M4-Checks).docs/: Planungs- und Meilensteindokumentation.
Umgang mit Legacy-Seiten
- Seiten, die noch direkt auf
kl_*-Tabellen schreiben, werden schrittweise auf tenant-sicheres Lesen/Schreiben überapp/ledger.phpundapp/saas-auth.phpumgestellt; siehe die Meilensteindokumente für den aktuellen Stand je Seite. - Neue Produktfunktionen entstehen gegen das neue Modell (Tenants, Users,
Participants, Ledger), nicht mehr direkt gegen die
kl_*-Tabellen. - Lokale Entwicklung gegen MySQL ist in
docs/dev-mysql.mdbeschrieben.
Languages
PHP
62.2%
JavaScript
29.4%
CSS
8.4%