Files
fotobox-webspite/README.md
T

2.2 KiB

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.

php -S 127.0.0.1:8000

Danach ist die Seite unter http://127.0.0.1:8000 erreichbar.

Wenn die Anwendung unter einem Unterordner laeuft, kannst du zusaetzlich FOTOBOX_BASE_PATH setzen, z. B.:

FOTOBOX_BASE_PATH=/fotobox php -S 127.0.0.1:8000

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.