Stufe 4a (#764): WebUI-Texte ueber Sprachschluessel

- ~50 feste Texte (deutsch und englisch gemischt) in app.js, api.js, backup,
  chat, info, instances, logs, services, tasks, organisation ueber t()
- Datumsformat folgt der Sprache (war immer de-DE)
- status.isApiReachable gab es nie (Feld heisst apiReachable): Kopfzeile
  und Info-Seite zeigten ohne Guthabentext immer 'offline'
- views/placeholders.js entfernt (seit Stufe 1 ungenutzt)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Richard
2026-10-03 19:21:56 +02:00
co-authored by Claude Opus 5.5
parent b184dc261c
commit 58bb1b62f3
15 changed files with 182 additions and 116 deletions
@@ -64,9 +64,9 @@ export async function rendereInfo() {
// 2. Teilsysteme
const dlSysteme = erstelleElement("dl", { klasse: "datenliste" });
dlSysteme.append(
erstelleElement("dt", { text: "Agent Engine" }),
erstelleElement("dt", { text: t("info.agentEngine") }),
erstelleElement("dd", {}, erstellePlakette(info.engineActive ? (t("status.running")) : (t("status.stopped")), info.engineActive ? "erfolg" : "neutral")),
erstelleElement("dt", { text: "Scanner / Scheduler" }),
erstelleElement("dt", { text: t("info.scheduler") }),
erstelleElement("dd", {}, erstellePlakette(info.schedulerActive ? (t("status.running")) : (t("status.stopped")), info.schedulerActive ? "erfolg" : "neutral")),
erstelleElement("dt", { text: t("nav.staging") }),
erstelleElement("dd", {}, erstellePlakette(info.stagingActive ? (t("status.running")) : (t("status.stopped")), info.stagingActive ? "erfolg" : "neutral")),
@@ -81,10 +81,10 @@ export async function rendereInfo() {
if (status) {
dlStatus.append(
erstelleElement("dt", { text: "API" }),
erstelleElement("dd", {}, erstellePlakette(status.isApiReachable ? "OK" : "Offline", status.isApiReachable ? "erfolg" : "gefahr")),
erstelleElement("dd", {}, erstellePlakette(status.apiReachable ? t("info.apiOk") : t("info.apiOffline"), status.apiReachable ? "erfolg" : "gefahr")),
erstelleElement("dt", { text: t("common.status") }),
erstelleElement("dd", { text: status.statusText || "—" }),
erstelleElement("dt", { text: "Credits" }),
erstelleElement("dt", { text: t("info.credits") }),
erstelleElement("dd", {}, erstelleElement("strong", { text: status.creditsText || "—" }))
);
} else {