Bez popisu

Josef Straßl 82372334e3 adding backup functionality před 1 měsícem
admin 82372334e3 adding backup functionality před 1 měsícem
assets 53944c08d6 Remove optional email order confirmation flow. před 2 měsíci
data bc9215893a updating test orders před 2 měsíci
docs 82372334e3 adding backup functionality před 1 měsícem
includes 82372334e3 adding backup functionality před 1 měsícem
scripts 558e46bd0e creating update package creation script před 1 měsícem
update-server 86f4a2f579 adding updater functionality před 1 měsícem
.gitignore 82372334e3 adding backup functionality před 1 měsícem
.htaccess ec38e6151b Security: generic order-success copy, file rate limits, HSTS/CSP, canonical mail origin před 2 měsíci
README.md 82372334e3 adding backup functionality před 1 měsícem
cart.php b05b7abe9e Harden checkout and admin flows before customer deploy. před 2 měsíci
checkout.php b05b7abe9e Harden checkout and admin flows before customer deploy. před 2 měsíci
config.sample.php 82372334e3 adding backup functionality před 1 měsícem
faq.php 643816b5cf implementing FAQ před 3 měsíci
favicon.png c9911553c4 favicon před 3 měsíci
index.php fb1916772d adding colored tiles to products on the main page/Overview před 2 měsíci
order-success.php 53944c08d6 Remove optional email order confirmation flow. před 2 měsíci
product.php 7b7b0e5794 more fixes před 2 měsíci

README.md

Stadt Freising PSA-Service

Zweck

Dieses Projekt ist ein internes Bestellsystem für persönliche Schutzausrüstung der Stadt Freising und wird organisatorisch durch Amt 32 - Öffentliche Sicherheit und Ordnung betreut.

Kernfunktionen

  • Produktübersicht mit Kategorien
  • Produktdetailseiten mit Größenwahl
  • Warenkorb ohne Mengensteuerung
  • Checkout mit Name, E-Mail, Organisation und Kommentar
  • Direkte interne Weiterleitung nach Bestellabschluss
  • Adminbereich für Bestellungen, Produkte, Kategorien, Organisationen, Einstellungen, FAQ und Admins
  • Positionsbezogene Bearbeitung und Stornierung von Bestellungen

Voraussetzungen

  • PHP 8.x
  • Schreibrechte auf data/
  • funktionierende PHP-Mailzustellung für Bestellmails

Wichtige Dateien

  • Konfiguration: config.php
  • Zentrale Logik: includes/functions.php
  • Bestellungen: data/orders.json
  • Organisationen: data/organizations.json
  • Systemeinstellungen: data/settings.json
  • Produkte: data/products.json
  • Produktbilder: data/uploads/
  • Backups: data/backups/ (wird automatisch erstellt, nicht öffentlich)

Einrichtung

  1. config.sample.php nach config.php kopieren und anpassen (SITE_URL, FROM_EMAIL, ORDER_PREFIX, …).
  2. Schreibrechte auf data/ und data/ratelimit/ (für Rate-Limits) sicherstellen.
  3. Statische Dateien bereitstellen: favicon.png (Document Root), assets/branding/, assets/fonts/, assets/no-image.jpg.
  4. Adminzugänge in data/admins.json auf dem Server pflegen (nicht aus dem Repo übernehmen).
  5. Empfängeradresse, PDF-Anhang und Backups im Admin unter Einstellungen prüfen.
  6. Organisationen im Admin unter Organisationen verwalten pflegen.
  7. Apache: .htaccess aktiv (schützt config.php und JSON unter data/).

Weitere Konstanten: docs/CONFIG_REFERENCE.md.

Technische Dokumentation im Browser: docs/index.php (Markdown wird mit marked gerendert).

Hinweise

  • Bestellungen werden nicht im Browser für Endnutzer gespeichert oder nachverfolgt.
  • Kein automatisiertes Test-/CI-Setup vorgesehen.