Upload via GUI (275 Dateien)

This commit is contained in:
2026-10-23 11:14:26 +00:00
parent 998202e074
commit 7fcdfa9d2c
4 changed files with 224 additions and 1 deletions
+10
View File
@@ -279,6 +279,16 @@ window.sessionTimerTimeout = <?= (int)$_jsTimeout ?>;
['click','keydown','mousemove','scroll','touchstart'].forEach(function(ev) {
document.addEventListener(ev, resetTimer, { passive: true });
});
// Restzeit regelmäßig beim Server erfragen (verlängert nichts): Aktivität in einem anderen Tab verlängert die Zeit hier mit,
// und ist die Sitzung wirklich abgelaufen, geht es sofort zur Anmeldung
function syncTimer() {
fetch('/staff/session_ping.php?check=1', { credentials:'same-origin', cache:'no-store' })
.then(function(r){ if (r.status === 401) { window.location.href = '/staff/login.php'; return null; } return r.json(); })
.then(function(d){ if (d && typeof d.remaining === 'number') remaining = d.remaining; })
.catch(function(){});
}
setInterval(syncTimer, 30000);
} // end init
if (document.readyState === 'loading') {
@@ -34,7 +34,7 @@
<table>
<thead><tr>
<th style="width:24px"><input type="checkbox" onclick="document.querySelectorAll('.ticket-check').forEach(c=>c.checked=this.checked)"></th>
<th>Ticket</th><th>Betreff</th><th>Abteilung</th><th>Priorität</th><th>Status</th><th>Zugewiesen</th><th>Fällig</th>
<th>Ticket</th><th>Betreff</th><th>Abteilung</th><th>Priorität</th><th>Status</th><th>Zugewiesen</th><th>Eingang</th><th>Fällig</th>
</tr></thead>
<tbody>
<?php foreach ($tickets as $t):
@@ -59,6 +59,7 @@
<td><span class="badge" style="background:<?= e($t['priority_color']) ?>"><?= e($t['priority_name']) ?></span></td>
<td><span class="badge" style="background:<?= $color ?>"><?= e($label) ?></span></td>
<td><?= $t['staff_name'] ? e($t['staff_name']) : '<span class="muted">–</span>' ?></td>
<td class="muted" style="white-space:nowrap" title="Ticket eingegangen"><?= e(format_dt($t['created_at'] ?? null)) ?></td>
<td class="muted"><?= time_until($t['resolution_due_at']) ?></td>
</tr>
<?php endforeach; ?>
+1
View File
@@ -66,6 +66,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'GET') {
} else {
ticket_acquire_lock((int) $ticket['id'], (int) $staff['id'], $pdo);
$ticket['locked_by'] = $staff['id'];
ticket_assign_on_open($pdo, $ticket, $staff); // unzugewiesenes Ticket wird dem öffnenden Mitarbeiter zugewiesen
// Automatische Zeiterfassung: Bearbeitung dieses Tickets beginnt (oder wird
// aufgefrischt, falls schon eine Sitzung läuft) – jede andere noch offene