From 50281b4986f650a7d8eefea1ee2bb6e77637371c Mon Sep 17 00:00:00 2001 From: Claude Dev Date: Sun, 15 Mar 2026 23:39:39 +0100 Subject: [PATCH] fix: Highlight-Keywords praeziser, korrekte DOM-Selektoren fuer Quellen/Faktencheck/Karte --- src/static/js/chat.js | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/src/static/js/chat.js b/src/static/js/chat.js index 4e25f43..660e17d 100644 --- a/src/static/js/chat.js +++ b/src/static/js/chat.js @@ -225,17 +225,17 @@ const Chat = { // ----------------------------------------------------------------------- _UI_HIGHLIGHTS: [ { keywords: ['neue lage', 'lage erstellen', 'lage anlegen', 'recherche erstellen'], selector: '#new-incident-btn' }, - { keywords: ['theme', 'farbschema', 'hell', 'dunkel', 'dark mode', 'light mode', 'design wechseln'], selector: '#theme-toggle' }, - { keywords: ['barrierefreiheit', 'accessibility', 'kontrast', 'schrift', 'focus-anzeige', 'animationen'], selector: '#a11y-btn' }, - { keywords: ['abmelden', 'logout', 'ausloggen'], selector: '#logout-btn' }, - { keywords: ['benachrichtigung', 'glocke', 'abo', 'abonnieren'], selector: '#notification-btn' }, - { keywords: ['aktualisieren', 'refresh'], selector: '#refresh-btn' }, - { keywords: ['export', 'lagebericht'], selector: '#export-btn' }, - { keywords: ['faktencheck', 'factcheck', 'fakten'], selector: '.factcheck-section, [data-tab="factchecks"]' }, - { keywords: ['karte', 'kartenansicht', 'geoparsing', 'map'], selector: '#map-container, .map-card' }, - { keywords: ['quellen', 'source'], selector: '.sources-section, [data-tab="sources"]' }, - { keywords: ['sichtbarkeit', 'privat', 'oeffentlich'], selector: '#incident-visibility, .visibility-toggle' }, - { keywords: ['filter', 'eigene', 'alle lagen'], selector: '.sidebar-filter' }, + { keywords: ['theme wechseln', 'theme-umschalter', 'farbschema', 'helles design', 'dunkles design', 'hell- und dunkel', 'hellem und dunklem', 'dark mode', 'light mode'], selector: '#theme-toggle' }, + { keywords: ['barrierefreiheit', 'accessibility', 'hoher kontrast', 'focus-anzeige', 'groessere schrift', 'animationen aus'], selector: '#a11y-btn' }, + { keywords: ['abmelden', 'logout', 'ausloggen', 'abmeldung'], selector: '#logout-btn' }, + { keywords: ['benachrichtigung', 'glocken-symbol', 'abonnieren', 'abonniert'], selector: '#notification-btn' }, + { keywords: ['aktualisieren', 'refresh starten'], selector: '#refresh-btn' }, + { keywords: ['exportieren', 'export-button', 'lagebericht exportieren'], selector: '#export-btn' }, + { keywords: ['faktencheck', 'factcheck'], selector: '[gs-id="factcheck"]' }, + { keywords: ['kartenansicht', 'karte angezeigt', 'interaktive karte', 'geoparsing'], selector: '[gs-id="map"]' }, + { keywords: ['quellen verwalten', 'quellenverwaltung', 'quelleneinstellung', 'quellenausschluss', 'quellen-einstellung'], selector: '[gs-id="quellen"]' }, + { keywords: ['sichtbarkeit', 'privat oder oeffentlich', 'lage privat'], selector: '#incident-settings-btn' }, + { keywords: ['sidebar-filter', 'eigene lagen', 'alle lagen'], selector: '.sidebar-filter' }, ], _highlightUI(text) { @@ -245,7 +245,8 @@ const Chat = { for (var i = 0; i < this._UI_HIGHLIGHTS.length; i++) { var entry = this._UI_HIGHLIGHTS[i]; for (var k = 0; k < entry.keywords.length; k++) { - if (lower.indexOf(entry.keywords[k]) !== -1) { + var kw = entry.keywords[k]; + if (lower.indexOf(kw) !== -1) { var selectors = entry.selector.split(','); for (var s = 0; s < selectors.length; s++) { var sel = selectors[s].trim();