From dc17fbabc759968fbeff701ad4f7cde025e5f737 Mon Sep 17 00:00:00 2001 From: Claude Code Date: Mon, 6 Apr 2026 18:31:02 +0200 Subject: [PATCH] fix: Nur Zusammenfassung aktueller Entwicklungen anzeigen MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Statt dem gesamten Lagebild-Text wird nur der Abschnitt 'Zusammenfassung aktueller Entwicklungen' extrahiert und vollständig angezeigt. Kein Scroll, kein Weiterlesen. Co-Authored-By: Claude Opus 4.6 (1M context) --- vorschau/css/style.css | 2 +- vorschau/js/app.js | 24 +++++++++++++++++++++--- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/vorschau/css/style.css b/vorschau/css/style.css index 9d77afd..5d96621 100644 --- a/vorschau/css/style.css +++ b/vorschau/css/style.css @@ -153,7 +153,7 @@ a { color:inherit; text-decoration:none; } .stat-label { display:block; font-size:0.72rem; color:var(--text-light); margin-top:3px; } .demo-excerpt { margin-bottom:16px; } -.excerpt-text { font-size:0.88rem; color:var(--text); line-height:1.65; max-height:500px; overflow-y:auto; } +.excerpt-text { font-size:0.88rem; color:var(--text); line-height:1.65; } .excerpt-text h2 { font-size:1.05rem; font-weight:700; color:var(--navy); margin:20px 0 8px; } .excerpt-text h3 { font-size:0.95rem; font-weight:600; color:var(--navy); margin:16px 0 6px; } diff --git a/vorschau/js/app.js b/vorschau/js/app.js index 7ee1a69..df6fc96 100644 --- a/vorschau/js/app.js +++ b/vorschau/js/app.js @@ -145,12 +145,30 @@ if (ef) ef.textContent = inc.factcheck_count || 0; if (eu && lag.updated_at) eu.textContent = timeAgo(lag.updated_at); - // Excerpt + // Excerpt: only the "Zusammenfassung aktueller Entwicklungen" section var excerptEl = document.getElementById('excerpt-text'); if (excerptEl && lag.summary_markdown) { - // Show full lagebild text - excerptEl.innerHTML = mdToHtml(lag.summary_markdown); + var md = lag.summary_markdown; + var sections = md.split(/^## /m); + var zusammenfassung = ''; + for (var s = 0; s < sections.length; s++) { + if (sections[s].indexOf('Zusammenfassung') === 0) { + zusammenfassung = '## ' + sections[s]; + break; + } + } + if (!zusammenfassung) { + // Fallback: first section after first heading + zusammenfassung = sections.length > 1 ? '## ' + sections[1] : md.split(' +').slice(0, 3).join(' + +'); + } + // Remove the next ## heading if captured + zusammenfassung = zusammenfassung.replace(/ +## [\s\S]*$/, ''); + excerptEl.innerHTML = mdToHtml(zusammenfassung); } // Map