84 lines
3.5 KiB
PHP
84 lines
3.5 KiB
PHP
<?php
|
||
/**
|
||
* DeskHub – Konfiguration
|
||
* Vor dem Produktiveinsatz alle Werte anpassen und diese Datei
|
||
* außerhalb des öffentlichen Web-Verzeichnisses sichern bzw. per
|
||
* .htaccess schützen (siehe mitgelieferte .htaccess).
|
||
*/
|
||
|
||
// Optional: App-Schlüssel für Verschlüsselung sensibler Einstellungen (SMTP/IMAP-Passwörter).
|
||
// Einmal setzen, danach NICHT mehr ändern (sonst sind gespeicherte Passwörter nicht mehr lesbar).
|
||
// Empfehlung: php -r "echo bin2hex(random_bytes(32));"
|
||
// define('APP_KEY', 'ihr-zufaelliger-schluessel-hier');
|
||
|
||
return [
|
||
|
||
// Verschlüsselungsschlüssel für sensible Einstellungen (SMTP/IMAP/Discord/Telegram-Passwörter)
|
||
// Generieren: php -r "echo bin2hex(random_bytes(32));"
|
||
// PFLICHT für den Produktivbetrieb! Ohne diesen Key ist die Verschlüsselung nur schwach.
|
||
// Einmal setzen und NIEMALS mehr ändern – sonst sind gespeicherte Passwörter unlesbar.
|
||
'app_key' => '86f1c83be78378ecb8ddc0696cb365bbceaa70a022365a6158d31e6da911aeb9',
|
||
|
||
// Browser Push Notifications (VAPID)
|
||
// Keys werden beim ersten Start automatisch generiert und in der DB gespeichert.
|
||
// Optional: eigene Keys eintragen (php includes/push.php --generate-keys)
|
||
'push' => [
|
||
'public_key' => '', // leer lassen = automatisch
|
||
'private_key' => '', // leer lassen = automatisch
|
||
],
|
||
|
||
// Datenbankverbindung
|
||
'db' => [
|
||
// 'mysql' für den Produktivbetrieb, 'sqlite' NUR für lokale Tests
|
||
'driver' => 'sqlite',
|
||
|
||
// --- MySQL-Einstellungen (nur relevant wenn driver = mysql) ---
|
||
'host' => 'localhost',
|
||
'name' => 'deskhub',
|
||
'user' => 'deskhub_user',
|
||
'pass' => '', // ← bitte MySQL-Passwort eintragen
|
||
|
||
// --- SQLite-Einstellungen (nur relevant wenn driver = sqlite) ---
|
||
'sqlite_path' => getenv('DESKHUB_SQLITE_PATH') ?: __DIR__ . '/../database/deskhub.sqlite',
|
||
],
|
||
|
||
// Allgemeine Website-Einstellungen
|
||
'site' => [
|
||
'name' => 'DeskHub Support',
|
||
'url' => 'http://localhost:8000',
|
||
'admin_email' => 'support@example.com',
|
||
'timezone' => 'Europe/Berlin',
|
||
],
|
||
|
||
// Ausgehende E-Mails (Benachrichtigungen an Kunden/Mitarbeiter)
|
||
// Hinweis: nutzt die PHP-Funktion mail(). Auf den meisten Shared-Hosting-
|
||
// Paketen funktioniert das direkt. Für zuverlässigeren Versand kann hier
|
||
// später ein SMTP-Mailer (z.B. PHPMailer) eingebaut werden – siehe
|
||
// includes/mailer.php.
|
||
'mail' => [
|
||
'enabled' => false, // auf true setzen, sobald mail() auf dem Server funktioniert
|
||
'from_email' => 'support@example.com',
|
||
'from_name' => 'DeskHub Support',
|
||
],
|
||
|
||
// Eingehende E-Mails -> automatische Ticketerstellung (cron/fetch_emails.php)
|
||
// Zugangsdaten werden über Einstellungen → E-Mail in der DB gespeichert (verschlüsselt).
|
||
// Diese config.php-Werte dienen nur als Fallback falls kein DB-Wert gesetzt ist.
|
||
'imap' => [
|
||
'enabled' => false,
|
||
'mailbox' => '{imap.example.com:993/imap/ssl}INBOX',
|
||
'user' => '',
|
||
'pass' => '', // Leer lassen – über Admin-Einstellungen setzen
|
||
'default_department_id' => 1,
|
||
'default_priority_id' => 2,
|
||
],
|
||
|
||
// Datei-Uploads
|
||
'uploads' => [
|
||
'max_size_bytes' => 10 * 1024 * 1024, // 10 MB
|
||
'allowed_extensions' => ['png','jpg','jpeg','gif','pdf','txt','log','docx','xlsx','zip'],
|
||
'path' => __DIR__ . '/../uploads',
|
||
],
|
||
|
||
];
|