81 lines
2.7 KiB
Markdown
81 lines
2.7 KiB
Markdown
# Fotobox-Webseite
|
|
|
|
Diese Anwendung stellt eine mehrseitige deutsche Vermietungsseite für eine Fotobox bereit. Sie enthält:
|
|
|
|
- eine komplett neu aufgebaute öffentliche Website mit den Seiten `Leistungen`, `Preise`, `Verfügbarkeit`, `Buchen`, `Ablauf`, `FAQ`, `Kontakt`, `Impressum`, `Datenschutz` und `Mietbedingungen`
|
|
- eine Buchungsanfrage mit Nachtlogik: `Montag bis Dienstag = 1 Miettag`
|
|
- Live-Preisberechnung mit `99,99 €` pro Miettag
|
|
- einen Verwaltungsbereich für Anfragen, Buchungen, Kunden, Kalender, Rechnungen und Einstellungen
|
|
- MySQL-Unterstützung mit Tabellenpräfix `fb_` sowie JSON-Fallback
|
|
|
|
## Starten
|
|
|
|
Die Anwendung benötigt PHP `8.3` oder neuer.
|
|
|
|
Für den lokalen Start sollte die Website mit dem Router-Skript gestartet werden:
|
|
|
|
```bash
|
|
php -S 127.0.0.1:8000 router.php
|
|
```
|
|
|
|
Danach ist die Seite unter `http://127.0.0.1:8000` erreichbar.
|
|
|
|
Wenn die Anwendung hinter einem Proxy oder in einem Unterordner läuft, kann zusätzlich `FOTOBOX_BASE_PATH` gesetzt werden:
|
|
|
|
```bash
|
|
FOTOBOX_BASE_PATH=/proxy/8000 php -S 127.0.0.1:8000 router.php
|
|
```
|
|
|
|
## Admin-Zugang
|
|
|
|
- Benutzername: `admin`
|
|
- Passwort: standardmäßig `fotobox-admin`
|
|
|
|
Falls du das Passwort ändern willst, setze die Umgebungsvariable `FOTOBOX_ADMIN_PASSWORD`.
|
|
|
|
## Datenhaltung
|
|
|
|
Standardmäßig nutzt die App die Dateien:
|
|
|
|
- `storage/bookings.json`
|
|
- `storage/invoices.json`
|
|
|
|
Sobald `mysql.local.php` mit echten Zugangsdaten befüllt ist und `enabled => true` gesetzt wurde, schaltet die App automatisch auf MySQL um.
|
|
|
|
## MySQL vorbereiten
|
|
|
|
Im Repository liegen als Vorlage:
|
|
|
|
- `mysql.local.php.example`
|
|
- `docs/mysql-schema.sql`
|
|
|
|
Lokal außerhalb des Git-Trackings liegt:
|
|
|
|
- `mysql.local.php`
|
|
|
|
Die Datei `mysql.local.php` ist bereits in `.gitignore` ausgeschlossen. Standardmäßig verwendet die App das Präfix `fb_`, also zum Beispiel `fb_bookings` und `fb_invoices`.
|
|
|
|
## Wichtige Regeln im System
|
|
|
|
- Ein Miettag entspricht immer einer Übernachtung.
|
|
- Beispiel: `Montag bis Dienstag = 1 Miettag`
|
|
- Der Standardpreis beträgt `99,99 €` pro Miettag.
|
|
- Zahlungsarten: `Rechnung / Überweisung` und `PayPal`
|
|
- Öffentliche Eingaben sind zunächst Buchungsanfragen und werden erst nach Bestätigung verbindlich.
|
|
|
|
## Verwaltung
|
|
|
|
Im Verwaltungsbereich können aktuell folgende Aufgaben erledigt werden:
|
|
|
|
- offene Anfragen prüfen
|
|
- Buchungen manuell für Kunden anlegen
|
|
- Kalender und belegte Zeiträume einsehen
|
|
- Kundenhistorien aus Aufträgen ableiten
|
|
- Rechnungen mit Kundendaten erzeugen und als PDF öffnen
|
|
- Zahlungs- und Buchungsstatus pflegen
|
|
- aktiven Speicher-Treiber und das Tabellenpräfix prüfen
|
|
|
|
## Tests
|
|
|
|
Eine kurze Checkliste liegt in [docs/manual-test.md](/config/workspace/fotobox-webspite/docs/manual-test.md:1).
|