Kopfleiste: Benutzer-Menü und gemeinsames Abmelden

- Benutzername und "Abmelden" im eigenen Header entfallen, nur noch
  Rückfall, wenn topbar.js nicht lädt
- Sitzungsanzeige als slot="benutzer" im Benutzer-Menü der Leiste
- hi-abmelden: POST /api/logout beendet die Timer-Sitzung, laufende
  Timer fragen vorher nach (Abbrechen stoppt das ganze Abmelden)
- html data-theme="dark": die Leiste ist dunkel wie die App, auch bei
  hellem System
- README/DEPLOY: Abmelden, Launch-URL /auth/login, CSP-Hinweis

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Kerim AtilganandClaude Opus 5.5 committed 2026-10-25 13:12:20 +01:00
1 parent 8f5517a409
commit 0ee9b708a1
5 files changed
+94 -14

No files matched your search

+13 -3
View File
@@ -1,5 +1,6 @@
<!DOCTYPE html>
<html lang="de">
<!-- data-theme: die App ist immer dunkel, die Portal-Kopfleiste soll es auch sein -->
<html lang="de" data-theme="dark">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
@@ -795,6 +796,15 @@
soll sie nicht erscheinen. */
hi-topbar { flex-shrink: 0; }
@media print { hi-topbar { display: none !important; } }
/* Benutzername und Abmelden sitzen im Benutzer-Menue der Leiste. Die
eigenen bleiben nur als Rueckfall, wenn topbar.js nicht laedt. */
hi-topbar ~ .container #currentUser,
hi-topbar ~ .container #logoutBtn { display: none; }
/* Sitzungsanzeige im Benutzer-Menue (slot="benutzer"), Schriftfarbe kommt von der Leiste */
.topbar-session { padding: 10px 16px; font-size: 13px; line-height: 1.4; }
.topbar-session span { display: block; opacity: 0.7; }
</style>
</head>
<body>
@@ -806,7 +816,7 @@
<button class="btn btn-secondary" onclick="showTimer()">⏱️ Timer</button>
<button class="btn btn-secondary" onclick="showHistory()">📊 Historie</button>
<button class="btn btn-secondary" onclick="showSettings()">⚙️ Einstellungen</button>
<button class="btn btn-secondary" onclick="logout()">🚪 Abmelden</button>
<button id="logoutBtn" class="btn btn-secondary" onclick="logout()">🚪 Abmelden</button>
</div>
</header>
@@ -1019,6 +1029,6 @@
<div class="toast" id="toast"></div>
<script src="/app.js?v=20260912-devices"></script>
<script src="/app.js?v=20261025-topbar"></script>
</body>
</html>