diff --git a/app/web/app.js b/app/web/app.js
index 483d548..1fbd409 100644
--- a/app/web/app.js
+++ b/app/web/app.js
@@ -776,22 +776,28 @@ async function loadOverview() {
const gpu = (llm && llm.gpus && llm.gpus.length)
? llm.gpus.map((g) => `GPU ${g.index}: ${g.percent}%`).join(" · ") : "—";
- const stat = (label, value, sub) => `
-
+ const hasEmergencies = typeof emCount === "number" && emCount > 0;
+ // Kachel; mit data-jump wird sie anklickbar (springt in den Bereich).
+ const stat = (label, value, sub, opts = {}) => `
+ <${opts.jump ? `button data-jump="${opts.jump}"` : "div"}
+ class="ov-stat text-left bg-white dark:bg-slate-800 rounded-xl border ${opts.border || "border-slate-200 dark:border-slate-700"} p-4 ${opts.jump ? "hover:bg-slate-50 dark:hover:bg-slate-700/50 transition-colors" : ""}">
${escHtml(label)}
-
${escHtml(value)}
+
${escHtml(value)}
${sub ? `
${escHtml(sub)}
` : ""}
-
`;
+ ${opts.jump ? "button" : "div"}>`;
const jump = (to, label) =>
``;
c.innerHTML = `
- ${stat("Nutzer", userCount)}
- ${stat("Anfragen gesamt", reqTotal)}
- ${stat("Notfälle", emCount, (typeof emCount === "number" && emCount > 0) ? "protokolliert" : "")}
- ${stat("LLM-Backend", backend, llm ? llm.model : "")}
+ ${stat("Nutzer", userCount, "", { jump: "users" })}
+ ${stat("Anfragen gesamt", reqTotal, "", { jump: "system" })}
+ ${stat("Notfälle", emCount, hasEmergencies ? "ansehen" : "keine",
+ { jump: "emergency",
+ accent: hasEmergencies ? "text-red-600 dark:text-red-400" : "",
+ border: hasEmergencies ? "border-red-300 dark:border-red-800" : "" })}
+ ${stat("LLM-Backend", backend, llm ? llm.model : "", { jump: "system" })}
GPU-Auslastung
@@ -800,7 +806,7 @@ async function loadOverview() {
${jump("users", "→ Nutzer")} ${jump("system", "→ System")} ${jump("emergency", "→ Notfälle")}
`;
- c.querySelectorAll(".ov-jump").forEach((b) =>
+ c.querySelectorAll(".ov-jump, .ov-stat[data-jump]").forEach((b) =>
b.addEventListener("click", () => switchAdminTab(b.dataset.jump)));
}
@@ -1086,7 +1092,7 @@ async function loadEmergencyEvents() {
${escHtml(ev.category)}
|
-
${escHtml(ev.snippet)} |
+
${escHtml(ev.snippet)} |
`).join("")}
diff --git a/app/web/index.html b/app/web/index.html
index 2916416..18f2b28 100644
--- a/app/web/index.html
+++ b/app/web/index.html
@@ -318,6 +318,6 @@
-
+