diff --git a/src/static/dashboard.html b/src/static/dashboard.html
index ffcd092..c67eb14 100644
--- a/src/static/dashboard.html
+++ b/src/static/dashboard.html
@@ -727,9 +727,9 @@
-
+
-
+
diff --git a/src/static/i18n/de.json b/src/static/i18n/de.json
index 739a903..a4cab3e 100644
--- a/src/static/i18n/de.json
+++ b/src/static/i18n/de.json
@@ -48,6 +48,8 @@
"tab.factcheck": "Faktencheck",
"tab.pipeline": "Analysepipeline",
"tab.sources_overview": "Quellenübersicht",
+ "tab.summary_short": "Zusammenfassung",
+ "tab.summary_report": "Recherchebericht",
"card.summary": "Lagebild",
"card.timeline": "Ereignis-Timeline",
"card.map": "Geografische Verteilung",
diff --git a/src/static/i18n/en.json b/src/static/i18n/en.json
index 2381141..0975889 100644
--- a/src/static/i18n/en.json
+++ b/src/static/i18n/en.json
@@ -48,6 +48,8 @@
"tab.factcheck": "Fact check",
"tab.pipeline": "Analysis pipeline",
"tab.sources_overview": "Sources overview",
+ "tab.summary_short": "Summary",
+ "tab.summary_report": "Research report",
"card.summary": "Briefing",
"card.timeline": "Event timeline",
"card.map": "Geographic distribution",
diff --git a/src/static/js/app.js b/src/static/js/app.js
index dfdbf36..379f6ea 100644
--- a/src/static/js/app.js
+++ b/src/static/js/app.js
@@ -1060,7 +1060,7 @@ const App = {
if (incident.type === 'research') {
// Recherche: ZUSAMMENFASSUNG-Sektion aus Briefing extrahieren
- if (zusammenfassungTitle) zusammenfassungTitle.textContent = 'Zusammenfassung';
+ if (zusammenfassungTitle) zusammenfassungTitle.textContent = (typeof T === 'function') ? T('tab.summary_short', 'Zusammenfassung') : 'Zusammenfassung';
if (incident.summary) {
const { zusammenfassung, remaining } = UI.extractZusammenfassung(incident.summary);
if (zusammenfassung) {
@@ -1078,7 +1078,7 @@ const App = {
}
} else {
// Live-Monitoring (adhoc): Kachel zeigt "Neueste Entwicklungen" (max 8 Bullets mit Zeitstempel)
- if (zusammenfassungTitle) zusammenfassungTitle.textContent = 'Neueste Entwicklungen';
+ if (zusammenfassungTitle) zusammenfassungTitle.textContent = (typeof T === 'function') ? T('tab.latest_developments', 'Neueste Entwicklungen') : 'Neueste Entwicklungen';
if (zusammenfassungCard) zusammenfassungCard.style.display = '';
const devText = (incident.latest_developments || '').trim();
if (devText) {
diff --git a/src/static/js/layout.js b/src/static/js/layout.js
index f7fca7f..dcca1e0 100644
--- a/src/static/js/layout.js
+++ b/src/static/js/layout.js
@@ -60,8 +60,13 @@ const LayoutManager = {
const isResearch = incidentType === 'research';
const zf = document.querySelector('#tab-nav .tab-btn[data-tab="zusammenfassung"]');
const lb = document.querySelector('#tab-nav .tab-btn[data-tab="lagebild"]');
- if (zf) zf.textContent = isResearch ? 'Zusammenfassung' : 'Neueste Entwicklungen';
- if (lb) lb.textContent = isResearch ? 'Recherchebericht' : 'Lagebild';
+ const _t = (k, fb) => (typeof T === 'function') ? T(k, fb) : fb;
+ if (zf) zf.textContent = isResearch
+ ? _t('tab.summary_short', 'Zusammenfassung')
+ : _t('tab.latest_developments', 'Neueste Entwicklungen');
+ if (lb) lb.textContent = isResearch
+ ? _t('tab.summary_report', 'Recherchebericht')
+ : _t('tab.summary', 'Lagebild');
},
// Legacy-API-Stubs: falls alte Aufrufe im Code liegen, stumm schlucken statt crashen.