2026-05-05 19:18:05 +02:00
2026-05-05 19:18:05 +02:00
2026-05-05 19:18:05 +02:00
2026-05-05 19:18:05 +02:00
2026-05-04 18:46:12 +02:00
2026-05-05 19:18:05 +02:00
2026-05-04 18:46:12 +02:00
2026-05-05 19:18:05 +02:00
2026-05-04 18:46:12 +02:00
2026-05-04 18:46:12 +02:00
2026-05-05 19:18:05 +02:00
2026-05-05 12:30:45 +02:00

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 je nach Abholung oder Liefergebiet
  • 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:

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:

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
  • Selbstabholung kostet 99,99 € pro Miettag.
  • Lieferung nach Hannover kostet 199,99 € pro Miettag.
  • Lieferung in die Region Hannover kostet 249,99 € pro Miettag.
  • Lieferung nach Hameln, Braunschweig, Hildesheim oder Celle kostet 299,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.

S
Description
No description provided
Readme 172 KiB
Languages
PHP 83.7%
CSS 14.3%
JavaScript 2%