feat(sources): Aufgaben-Posteingang ersetzt Quellen-Health und Klassifikation
- Neuer Unterreiter Aufgaben buendelt Health-Vorschlaege (Tabelle inkl. Loesung-suchen), Klassifikations-Review-Karten und den eingeklappten Verlauf (erledigte Vorschlaege + letzte Prueflaeufe). Die dritte Navigationsebene (healthSubTabs) entfaellt komplett. - Badge zeigt die Summe aus offenen Vorschlaegen und ausstehenden Klassifikationen, gespeist vom neuen billigen GET /api/sources/tasks/summary (gleiche Bedingung wie /classification/stats, laeuft nie auseinander). Badge laedt jetzt schon beim Klick auf den Quellen-Hauptreiter. - aufgaben.js NEU (uebernimmt Vorschlags-/Verlauf-Rendering aus source-health.js und den kompletten Klassifikations-Block aus sources.js), source-health.js GELOESCHT (60s-Cache, Checks-Tabelle mit eigener Pagination und Filtern entfaellt, die Details stecken jetzt als Ausklapp-Zeile in der Quellenliste). - Quellen hat damit 3 statt 5 Unterreiter: Quellenliste, Aufgaben, X-Recherche-Konten. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Dieser Commit ist enthalten in:
@@ -146,10 +146,10 @@ function logout() {
|
||||
|
||||
// --- Navigation ---
|
||||
function setupNavTabs() {
|
||||
document.querySelectorAll(".nav-tabs:not(#orgDetailTabs):not(#sourceSubTabs):not(#healthSubTabs) .nav-tab").forEach(tab => {
|
||||
document.querySelectorAll(".nav-tabs:not(#orgDetailTabs):not(#sourceSubTabs) .nav-tab").forEach(tab => {
|
||||
tab.addEventListener("click", () => {
|
||||
const section = tab.dataset.section;
|
||||
document.querySelectorAll(".nav-tabs:not(#orgDetailTabs):not(#sourceSubTabs):not(#healthSubTabs) .nav-tab").forEach(t => t.classList.remove("active"));
|
||||
document.querySelectorAll(".nav-tabs:not(#orgDetailTabs):not(#sourceSubTabs) .nav-tab").forEach(t => t.classList.remove("active"));
|
||||
tab.classList.add("active");
|
||||
document.querySelectorAll(".app-content > .section").forEach(s => s.classList.remove("active"));
|
||||
document.getElementById(`sec-${section}`).classList.add("active");
|
||||
@@ -649,7 +649,7 @@ document.addEventListener("DOMContentLoaded", () => {
|
||||
|
||||
function switchToOrg(orgId) {
|
||||
// Switch to orgs tab and open detail
|
||||
document.querySelectorAll(".nav-tabs:not(#orgDetailTabs):not(#sourceSubTabs):not(#healthSubTabs) .nav-tab").forEach(t => t.classList.remove("active"));
|
||||
document.querySelectorAll(".nav-tabs:not(#orgDetailTabs):not(#sourceSubTabs) .nav-tab").forEach(t => t.classList.remove("active"));
|
||||
document.querySelector('.nav-tab[data-section="orgs"]').classList.add("active");
|
||||
document.querySelectorAll(".app-content > .section").forEach(s => s.classList.remove("active"));
|
||||
document.getElementById("sec-orgs").classList.add("active");
|
||||
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren