Upload via GUI (364 Dateien)

This commit is contained in:
2026-11-01 11:15:44 +00:00
parent 9b1b7c0d6e
commit aeae758b4d
2 changed files with 17 additions and 2 deletions
+16 -1
View File
@@ -15,6 +15,7 @@ require __DIR__ . '/_header.php';
?> ?>
<h1 style="margin-top:0">Apps für Mitarbeiter</h1> <h1 style="margin-top:0">Apps für Mitarbeiter</h1>
<p class="muted">Mit den Apps bearbeitet ihr Tickets am PC oder unterwegs. Beide haben ein helles und dunkles Design.</p> <p class="muted">Mit den Apps bearbeitet ihr Tickets am PC oder unterwegs. Beide haben ein helles und dunkles Design.</p>
<p class="muted">Außerdem: das Plugin für WordPress (Tickets von eurer Webseite aus anlegen) und die Erweiterung für den Chrome-Browser.</p>
<div class="card" style="margin-bottom:20px"> <div class="card" style="margin-bottom:20px">
<strong>Serveradresse für die Anmeldung</strong> <strong>Serveradresse für die Anmeldung</strong>
@@ -26,7 +27,7 @@ require __DIR__ . '/_header.php';
</div> </div>
<div style="display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px"> <div style="display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px">
<?php foreach ($visiblePlatforms as $key => $p): $a = $apps[$key]; $noun = $key === "minecraft" ? "Plugin" : "App"; ?> <?php foreach ($visiblePlatforms as $key => $p): $a = $apps[$key]; $noun = ['minecraft' => 'Plugin', 'wordpress' => 'Plugin', 'chrome' => 'Erweiterung'][$key] ?? 'App'; ?>
<div class="card" style="margin:0"> <div class="card" style="margin:0">
<div style="font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:8px"><?= e($p['label']) ?></div> <div style="font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:8px"><?= e($p['label']) ?></div>
<?php if ($a): ?> <?php if ($a): ?>
@@ -52,6 +53,20 @@ require __DIR__ . '/_header.php';
<li>Falls Windows warnt („Der Computer wurde geschützt“): <em>Weitere Informationen → Trotzdem ausführen</em>.</li> <li>Falls Windows warnt („Der Computer wurde geschützt“): <em>Weitere Informationen → Trotzdem ausführen</em>.</li>
<li>App öffnen, Serveradresse eingeben und anmelden.</li> <li>App öffnen, Serveradresse eingeben und anmelden.</li>
</ol> </ol>
<?php elseif ($key === 'wordpress'): ?>
<ol style="padding-left:18px;margin:6px 0 0;line-height:1.7">
<li>ZIP herunterladen. In WordPress unter <em>Plugins → Installieren → Plugin hochladen</em> hochladen und aktivieren.</li>
<li>In DeskHub unter Verwalten → API-Schlüssel einen Schlüssel mit dem Recht „Tickets anlegen“ erzeugen.</li>
<li>In WordPress unter <em>Einstellungen → DeskHub Tickets</em> Serveradresse (oben) und Schlüssel eintragen und „Speichern und Verbindung testen“ klicken.</li>
<li>Auf einer Seite den Shortcode <code>[deskhub_ticket]</code> einfügen. Die Statusabfrage für Kunden heißt <code>[deskhub_status]</code>.</li>
</ol>
<?php elseif ($key === 'chrome'): ?>
<ol style="padding-left:18px;margin:6px 0 0;line-height:1.7">
<li>ZIP herunterladen und in einen festen Ordner entpacken (der Ordner muss bleiben).</li>
<li>In Chrome <code>chrome://extensions</code> öffnen, oben rechts den <em>Entwicklermodus</em> einschalten und <em>Entpackte Erweiterung laden</em> wählen. Den Ordner auswählen.</li>
<li>Erweiterung öffnen, Serveradresse eingeben und anmelden.</li>
<li>Updates: neue ZIP in denselben Ordner entpacken und die Erweiterung auf <code>chrome://extensions</code> neu laden.</li>
</ol>
<?php elseif ($key === 'minecraft'): ?> <?php elseif ($key === 'minecraft'): ?>
<ol style="padding-left:18px;margin:6px 0 0;line-height:1.7"> <ol style="padding-left:18px;margin:6px 0 0;line-height:1.7">
<li>Jar herunterladen und in den Ordner <code>plugins</code> deines Spigot-, Paper- oder BungeeCord-Servers legen.</li> <li>Jar herunterladen und in den Ordner <code>plugins</code> deines Spigot-, Paper- oder BungeeCord-Servers legen.</li>
+1 -1
View File
@@ -124,7 +124,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST' && ($_POST['action'] ?? '') === 'typin
$stmt->execute(array_merge([$number], $deptFilterParams)); $stmt->execute(array_merge([$number], $deptFilterParams));
$ticket = $stmt->fetch(); $ticket = $stmt->fetch();
if ($ticket && $ticket['status'] !== 'closed' && !lc_locked_by_other($ticket, $staff, $pdo)) { if ($ticket && $ticket['status'] !== 'closed' && !lc_locked_by_other($ticket, $staff, $pdo)) {
$pdo->prepare('UPDATE tickets SET typing_staff_until = ? WHERE id = ?') $pdo->prepare('UPDATE tickets SET typing_staff_until = ?, updated_at = updated_at WHERE id = ?')
->execute([date('Y-m-d H:i:s', time() + 6), $ticket['id']]); ->execute([date('Y-m-d H:i:s', time() + 6), $ticket['id']]);
} }
lc_json(['ok' => true]); lc_json(['ok' => true]);