diff --git a/DeskHub-Webseite/staff/email_templates.php b/DeskHub-Webseite/staff/email_templates.php
index 5a6d012c..43bf2700 100644
--- a/DeskHub-Webseite/staff/email_templates.php
+++ b/DeskHub-Webseite/staff/email_templates.php
@@ -28,6 +28,12 @@ $templates = [
'default_subject' => 'SLA überschritten: Ticket #{ticket_number}',
'default_body' => email_ticket_overdue_default_body(),
],
+ 'customer_reminder' => [
+ 'label' => 'Erinnerung (an Kunde, wenn er nicht reagiert)',
+ 'placeholders' => ['ticket_number', 'subject', 'customer_name', 'ticket_url', 'close_note'],
+ 'default_subject' => 'Erinnerung zu Ihrem Ticket [#{ticket_number}]',
+ 'default_body' => email_customer_reminder_default_body(),
+ ],
'live_chat_transcript' => [
'label' => 'Chatverlauf (an Kunde, nach Chatende)',
'placeholders' => ['ticket_number', 'customer_name', 'transcript', 'ticket_url'],
diff --git a/DeskHub-Webseite/staff/settings.php b/DeskHub-Webseite/staff/settings.php
index 29b38f83..8a55bc72 100644
--- a/DeskHub-Webseite/staff/settings.php
+++ b/DeskHub-Webseite/staff/settings.php
@@ -18,6 +18,8 @@ $cronJobs = [
'process_backups' => ['label' => 'Automatische Backups', 'file' => 'process_backups.php', 'fn' => 'run_process_backups'],
'anonymize_data' => ['label' => 'Datenanonymisierung', 'file' => 'anonymize_data.php', 'fn' => 'run_anonymization'],
'auto_close_tickets'=> ['label' => 'Automatisches Schließen', 'file' => 'auto_close_tickets.php','fn' => 'run_auto_close_tickets'],
+ 'process_snoozes' => ['label' => 'Wiedervorlagen', 'file' => 'process_snoozes.php', 'fn' => 'run_process_snoozes'],
+ 'remind_customers' => ['label' => 'Kundenerinnerung', 'file' => 'remind_customers.php', 'fn' => 'run_remind_customers'],
];
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
@@ -46,6 +48,8 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') {
set_setting('auto_close_enabled', !empty($_POST['auto_close_enabled']) ? '1' : '0');
$autoCloseDays = max(1, min(90, (int) ($_POST['auto_close_days'] ?? 7)));
set_setting('auto_close_days', (string) $autoCloseDays);
+ set_setting('remind_enabled', !empty($_POST['remind_enabled']) ? '1' : '0');
+ set_setting('remind_after_days', (string) max(1, min(60, (int) ($_POST['remind_after_days'] ?? 3))));
$timeout = max(5, min(480, (int)($_POST['staff_session_timeout'] ?? 30)));
set_setting('staff_session_timeout', (string)$timeout);
audit_log($staff['id'], "Systemeinstellungen geändert");
@@ -460,6 +464,8 @@ $cronBackups = cron_last_run_label(get_setting('cron_process_backups_last_ru
$cronEscalations = cron_last_run_label(get_setting('cron_check_escalations_last_run'));
$cronAnonymize = cron_last_run_label(get_setting('cron_anonymize_data_last_run'));
$cronAutoClose = cron_last_run_label(get_setting('cron_auto_close_tickets_last_run'));
+$cronSnoozes = cron_last_run_label(get_setting('cron_process_snoozes_last_run'));
+$cronRemind = cron_last_run_label(get_setting('cron_remind_customers_last_run'));
$tab = $_GET['tab'] ?? 'allgemein';
@@ -547,6 +553,16 @@ require __DIR__ . '/_header.php';
Tage
+
+
+
+
+
+ Tage (am besten kürzer als die Frist zum automatischen Schließen)
+