config.sample.php 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. <?php
  2. // Configuration for the PSA order system.
  3. // Site settings
  4. define('SITE_NAME', 'Stadt Freising');
  5. define('SITE_SERVICE_NAME', 'Bestellservice');
  6. define('SITE_SERVICE_HEADER', 'Amt 32 - Öffentliche Sicherheit und Ordnung');
  7. define('SITE_DEPARTMENT_NAME', 'Amt 32 - Öffentliche Sicherheit und Ordnung');
  8. define('SITE_ADDRESS_LINE', 'Dr.-von-Daller-Straße 7, 85354 Freising');
  9. define('SITE_IMPRINT_URL', 'https://www.freising.de/impressum/');
  10. define('SITE_PRIVACY_URL', 'https://www.freising.de/datenschutz');
  11. define('SITE_FULL_NAME', SITE_NAME . ' - ' . SITE_SERVICE_HEADER);
  12. define('SITE_URL', '/shop'); // Leave empty for root, or use absolute URL
  13. define('DISCLAIMER_LINES', [
  14. 'Dieses System dient der internen Bestellung persönlicher Schutzausrüstung der Stadt Freising.',
  15. 'Die Bearbeitung erfolgt durch Amt 32 - Öffentliche Sicherheit und Ordnung.',
  16. ]);
  17. // Admin settings
  18. // Runtime source of truth for admin logins is data/admins.json.
  19. // Order settings
  20. define('ORDER_PREFIX', 'FWFS');
  21. define('ORDER_RECIPIENT_EMAIL', 'psa@feuerwehr-freising.de');
  22. define('ORDER_CONFIRMATION_REQUIRED', true);
  23. define('ORDER_CONFIRMATION_EXPIRY_DAYS', 7);
  24. define('ATTACH_ORDER_PDF_TO_ADMIN_EMAIL', true);
  25. // Email settings
  26. define('ADMIN_EMAIL', 'psa@feuerwehr-freising.de'); // Fallback for admin profile email defaults
  27. define('FROM_EMAIL', 'shop@example.org');
  28. define('FROM_NAME', SITE_FULL_NAME);
  29. // Data file paths
  30. define('DATA_DIR', __DIR__ . '/data/');
  31. define('UPLOADS_DIR', DATA_DIR . 'uploads/');
  32. define('PRODUCTS_FILE', DATA_DIR . 'products.json');
  33. define('ORDERS_FILE', DATA_DIR . 'orders.json');
  34. define('ORGANIZATIONS_FILE', DATA_DIR . 'organizations.json');
  35. define('SETTINGS_FILE', DATA_DIR . 'settings.json');
  36. define('ADMINS_FILE', DATA_DIR . 'admins.json');
  37. define('CATEGORIES_FILE', DATA_DIR . 'categories.json');
  38. define('FAQ_FILE', DATA_DIR . 'faq.json');
  39. define('UPLOADS_URL', SITE_URL . '/data/uploads');
  40. // Session settings
  41. if (session_status() === PHP_SESSION_NONE) {
  42. $isHttps =
  43. (!empty($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] !== "off") ||
  44. (isset($_SERVER["SERVER_PORT"]) &&
  45. (int) $_SERVER["SERVER_PORT"] === 443);
  46. ini_set("session.use_strict_mode", "1");
  47. ini_set("session.cookie_httponly", "1");
  48. ini_set("session.cookie_secure", $isHttps ? "1" : "0");
  49. ini_set("session.cookie_samesite", "Lax");
  50. session_start();
  51. }