diff --git a/DeskHub-Webseite/staff/email_addresses.php b/DeskHub-Webseite/staff/email_addresses.php index c0a3d45f..deb0952a 100644 --- a/DeskHub-Webseite/staff/email_addresses.php +++ b/DeskHub-Webseite/staff/email_addresses.php @@ -312,7 +312,13 @@ require __DIR__ . '/_header.php'; function sync() { box.style.opacity = on.checked ? '1' : '.5'; box.querySelectorAll('input,select').forEach(function (i) { i.disabled = !on.checked; }); } on.addEventListener('change', sync); sync(); } - toggler('imap_enabled', 'imap-fields'); toggler('smtp_enabled', 'smtp-fields'); + toggler('imap_enabled', 'imap-fields'); toggler('smtp_enabled', 'smtp-fields'); + // Verschlüsselung gewählt: Port passend setzen (nur wenn dort noch ein Standardport steht, eigene Ports bleiben) + var enc = document.getElementById('smtp_encryption'), prt = document.getElementById('smtp_port'); + if (enc && prt) enc.addEventListener('change', function () { + var std = { tls: '587', ssl: '465', none: '25' }; + if (['25', '465', '587', ''].indexOf(String(prt.value).trim()) !== -1) prt.value = std[enc.value] || prt.value; + }); var af = document.getElementById('after_fetch'), ar = document.getElementById('archive-row'); function syncAf() { ar.style.display = af.value === 'archive' ? '' : 'none'; } diff --git a/DeskHub-Webseite/staff/languages.php b/DeskHub-Webseite/staff/languages.php index aa8a2777..46d65cd0 100644 --- a/DeskHub-Webseite/staff/languages.php +++ b/DeskHub-Webseite/staff/languages.php @@ -57,6 +57,36 @@ require __DIR__ . '/_header.php';
Noch kein Sprachpaket aktiv. Installieren Sie zum Beispiel „English“ unter Plugins; dann erscheinen die Flaggen.
+ $c !== 'de')); +$activePlugins = []; +try { $activePlugins = $pdo->query("SELECT slug FROM plugins WHERE is_active = 1 ORDER BY slug")->fetchAll(PDO::FETCH_COLUMN); } catch (Throwable $e) { } +$activePlugins = array_values(array_filter($activePlugins, fn($sl) => !isset($langs) || !in_array($sl, array_column($langs, 'slug'), true))); +?> +Jedes Plugin kann seine Texte selbst übersetzen: Es legt dazu im Plugin-Ordner lang/<Sprachcode>.json ab (zum Beispiel lang/en.json). Wird eine Sprache gewählt, nutzt DeskHub diese Dateien aller aktiven Plugins zusätzlich zum Sprachpaket; steht ein Text in beiden, gilt der aus dem Sprachpaket. Eine neue Sprache braucht deshalb nur ein Sprachpaket und je Plugin eine Datei.
Noch kein Sprachpaket aktiv. Installieren Sie zum Beispiel „English“ unter Plugins.
+ +Es ist kein Plugin aktiv.
+ +| Plugin | = e($langs[$c]['name']) ?> (= e($c) ?>) |
|---|---|
| = e((string) $sl) ?> | + +keine Datei (Texte aus dem Sprachpaket oder deutsch)✓ = (int) $n ?> Texte | + +
Die Warteschlange ist leer. Alle Mails sind rausgegangen.
+ +| Status | Empfänger | Betreff | Versuche | Nächster Versuch | Letzter Fehler | |
|---|---|---|---|---|---|---|
| = e($label) ?> seit = e(format_dt($r['created_at'])) ?> |
+ = e($r['to_email']) ?> | += e($r['subject']) ?> | += (int) $r['attempts'] ?> | += $r['status'] === 'pending' ? e(format_dt($r['next_attempt_at'])) : ($r['status'] === 'sent' ? e(format_dt((string) $r['sent_at'])) : '–') ?> | += e((string) $r['last_error']) ?> | ++ + + + + | +
Es werden die ersten 200 Einträge angezeigt.
+ +