Badge-System: personal/general Split, Punkte ohne Zahl, SW by-v328

This commit is contained in:
rene 2026-04-24 08:39:41 +02:00
parent 0a3ad2207e
commit fc7d743153
4 changed files with 35 additions and 13 deletions

View file

@ -3,7 +3,7 @@
Router, State-Management, Navigation, Initialisierung.
============================================================ */
const APP_VER = '315'; // ← bei jedem Deploy mit Frontend-Änderungen erhöhen
const APP_VER = '316'; // ← bei jedem Deploy mit Frontend-Änderungen erhöhen
const App = (() => {
@ -470,13 +470,9 @@ const App = (() => {
async function _updateNotifBadge() {
if (!state.user) return;
try {
const { count } = await API.notifications.unreadCount();
// Sidebar-Badge (Zahl) — entfernt aus Sidebar, aber ID bleibt für Kompatibilität
const badge = document.getElementById('notif-badge');
if (badge) { badge.textContent = count; badge.style.display = count > 0 ? '' : 'none'; }
// Burger-Punkt
const navBadge = document.getElementById('notif-nav-badge');
if (navBadge) navBadge.classList.toggle('hidden', count === 0);
const b = await API.notifications.badge();
document.getElementById('notif-nav-badge')?.classList.toggle('hidden', !b.general);
document.getElementById('chat-nav-badge')?.classList.toggle('hidden', !b.personal);
} catch { /* ignorieren */ }
}
@ -485,12 +481,8 @@ const App = (() => {
try {
const convs = await API.chat.conversations();
const total = convs.reduce((s, c) => s + (c.unread_count || 0), 0);
// Sidebar-Badge (Zahl)
const badge = document.getElementById('chat-badge');
if (badge) { badge.textContent = total; badge.style.display = total > 0 ? '' : 'none'; }
// Avatar-Punkt
const navBadge = document.getElementById('chat-nav-badge');
if (navBadge) navBadge.classList.toggle('hidden', total === 0);
} catch { /* ignorieren */ }
}