Commit graph

12 Commits

Autor SHA1 Nachricht Datum
claude-dev
991bd17b07 Lösung suchen Button bei Deaktivierungs-Vorschlägen hinzugefügt
Button erscheint neben Annehmen/Ablehnen bei deactivate_source-
Vorschlägen mit source_id. Startet Sonnet WebSearch-Recherche
nach Alternativen bevor man deaktiviert.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08 17:04:35 +01:00
claude-dev
bcaf6a270b Fix: Escaped Backticks durch korrekte nested Template-Literale ersetzt
`...` innerhalb von ${}  Expressions ist kein valides JS und
verhinderte Variablen-Substitution + crashte das Script in manchen
Browsern, wodurch alle Quellen-Tabs nicht funktionierten.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08 17:00:42 +01:00
claude-dev
a8d5d16db2 Fix: formatDate-Kollision, implizites event, onclick-Escaping
- formatDate() in source-health.js zu formatDateTime() umbenannt,
  damit app.js formatDate() nicht überschrieben wird
- searchFix(): data-Attribute statt inline onclick-String (XSS-sicher)
- searchFix(btn): expliziter Parameter statt implizites event.target

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08 16:51:13 +01:00
claude-dev
fb5ed358bd Fix: Tab-Navigation + Umlaute in app.js
sourceSubTabs vom Haupt-Navigation-Handler ausgeschlossen -
verhindert dass Source-Sub-Tabs die Hauptnavigation stören
und Inhalte unterhalb anderer Tabs angezeigt werden.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08 16:38:26 +01:00
claude-dev
75dd9b0669 Fix: Sources-Section in main-Container verschoben
Sources lag außerhalb von <main class="app-content"> und hatte
dadurch kein max-width/padding - ging auf volle Bildschirmbreite.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08 16:35:35 +01:00
claude-dev
be0f31344a Sonnet-WebSearch "Lösung suchen" für kaputte Quellen
- POST /health/search-fix/{source_id}: Sonnet recherchiert Alternativen
- Button "Lösung suchen" bei Erreichbarkeits-Fehlern im Health-Tab
- Gefundene Lösungen werden automatisch als Vorschläge gespeichert

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08 16:33:11 +01:00
claude-dev
7045a5c657 Quellen-Health UI: Tab, API-Endpunkte, Vorschläge
- Neuer Sub-Tab "Quellen-Health" mit Vorschlägen + Check-Ergebnissen
- API: GET /health, GET /suggestions, PUT /suggestions/{id}, POST /health/run
- Vorschläge annehmen/ablehnen mit Auto-Ausführung
- Badge-Styles für Health-Status und Prioritäten
- Umlaute in Source-Modal und Dashboard korrigiert

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08 15:26:31 +01:00
claude-dev
dbd5568296 Quellenverwaltung: Filter, Sortierung, Artikelzähler, Umlaute
- Filter-Dropdowns für Typ, Kategorie und Status
- Sortierbare Spalten (Name, Domain, Typ, Kategorie, Artikel, Status)
- Artikel-Spalte zeigt article_count an
- Umlaute korrigiert (Löschen, Übernehmen, Läuft ab, Hinzugefügt von)
- 53 kaputte/doppelte Quellen bereinigt (Bashinho, Netzpolitik, Facebook)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08 14:51:31 +01:00
claude-dev
801944a7ea feat: Discovery-Funktion in Grundquellen-Verwaltung integriert
- POST /api/sources/discover: URL analysieren, RSS-Feeds erkennen, Duplikate prüfen
- POST /api/sources/discover/add: Erkannte Feeds als Grundquellen anlegen (inkl. Web-Source)
- Erkennen-Button und Modal im Dashboard mit Feed-Auswahl per Checkbox
- Duplikat-Erkennung zeigt bereits vorhandene Grundquellen an
- source_rules aus Monitor importiert für Feed-Discovery und Claude-Bewertung
- config.py um Discovery-Konfiguration erweitert

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-05 20:04:18 +01:00
claude-dev
19fbf152eb Feat: Grundquellen-Verwaltung und Kundenquellen-Übersicht
- Neuer Tab "Quellen" mit Sub-Tabs "Grundquellen" und "Kundenquellen"
- Grundquellen: CRUD (Erstellen, Bearbeiten, Löschen) - gilt für alle Monitore
- Kundenquellen: Übersicht aller tenant-spezifischen Quellen mit Org-Zuordnung
- Kundenquellen können zu Grundquellen befördert werden
- Suche/Filter in beiden Ansichten
- Sources-Router mit vollständiger API

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-05 19:46:45 +01:00
claude-dev
af6040cbf6 Refactor: Name-Feld entfernen, Email als einziger Identifier
- Name-Spalte aus Nutzertabelle entfernt
- Anzeigename-Feld aus Nutzer-Anlegen-Dialog entfernt
- Username wird automatisch aus Email-Prefix generiert
- UserCreate Model: username jetzt optional

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-05 18:55:30 +01:00
claude-dev
e5a11d3549 Initial commit: AegisSight-Monitor-Verwaltung 2026-03-04 17:53:19 +01:00