Initale Einrichtung

This commit is contained in:
2026-05-04 18:46:12 +02:00
parent 8f944776a9
commit a675873437
24 changed files with 2776 additions and 1 deletions
+68 -1
View File
@@ -1,2 +1,69 @@
# fotobox-webspite
# Fotobox-Webseite
Diese Anwendung stellt eine komplette Vermietungsseite fuer eine Fotobox bereit. Sie enthaelt:
- eine neu aufgebaute Landingpage auf Basis der Inhalte von `https://ctb-it.de/fotobox/`
- eine oeffentliche Buchungsanfrage mit zwei Terminen, Live-Preisberechnung und Zahlungsart-Auswahl
- einen Admin-Bereich fuer Anfragen, manuelle Kundenbestellungen, Statuspflege und Rechnungs-PDFs
- eine MySQL-faehige Datenhaltung mit JSON-Fallback
## Starten
Die Anwendung benoetigt nur PHP 8.3 oder neuer.
```bash
php -S 127.0.0.1:8000
```
Danach ist die Seite unter `http://127.0.0.1:8000` erreichbar.
## Admin-Zugang
- Benutzername: `admin`
- Passwort: Standardmaessig `fotobox-admin`
Falls du das Passwort aendern willst, setze die Umgebungsvariable `FOTOBOX_ADMIN_PASSWORD`.
## Datenhaltung
Standardmaessig nutzt die App JSON-Dateien:
- `storage/bookings.json`
- `storage/invoices.json`
Sobald du `mysql.local.php` mit echten Zugangsdaten befuellst, `enabled => true` setzt und optional ein `table_prefix` definierst, schaltet die App automatisch auf MySQL um.
## MySQL vorbereiten
Im Repository liegt als Vorlage:
- `mysql.local.php.example`
- `docs/mysql-schema.sql`
Lokal liegt ausserhalb des Git-Trackings:
- `mysql.local.php`
Die Datei `mysql.local.php` ist bereits in `.gitignore` ausgeschlossen und kann von dir mit echten Zugangsdaten befuellt werden.
Standardmaessig verwendet die App das Prefix `fb_`, also z. B. `fb_bookings` und `fb_invoices`.
## Wichtige Annahmen
- Mietbeginn und Mietende werden inklusiv berechnet.
- Standardpreis: `99,99 EUR` pro Kalendertag.
- Zahlungsarten: `Rechnung / Ueberweisung` und `PayPal`.
- Die PayPal-Auswahl ist im Prozess und in der Verwaltung abgebildet; fuer einen echten Live-Payment-Flow brauchst du spaeter zusaetzliche API-Zugangsdaten.
## Verwaltung
Im Admin-Bereich kannst du:
- neue Kundenbestellungen manuell anlegen
- Anfragen bestaetigen oder stornieren
- Zahlungsstatus pflegen
- Rechnungen mit Kundendaten erzeugen
- Rechnungen als PDF oeffnen
## Tests
Eine kurze Checkliste liegt in [docs/manual-test.md](docs/manual-test.md).