Live-Log-Fix, Sidebar-Untermenüs für Geräte/Einstellungen, eigenes Konto
- Live-Log-Bug behoben: _latest_log_file() sortierte nach Datei-ctime statt
nach Dateiname — auf manchen Dateisystemen (u.a. unter WSL2 auf einem
gemounteten Windows-Laufwerk) unzuverlässig und lieferte nicht immer das
tatsächlich neueste Logfile. Sortiert jetzt wie der Rest des Codes über
den chronologisch sortierbaren Dateinamen (rpi-YYYYMMDDHHMMSS.log).
- Navbar umstrukturiert in aufklappbare Gruppen mit Unterpunkten:
- "Geräte": Clients (bisherige Devices-Seite), Switche, Zugangsdaten
- "Einstellungen": Benutzer, Gruppen, Systemeinstellungen (Prüfintervall),
Im-/Export
- "Logs": Live, Änderungen (vormals Live-Log/Änderungslog)
Sichtbarkeit gilt jetzt auch pro Unterpunkt: eine Gruppe erscheint nur,
wenn mindestens ein Unterpunkt für den Benutzer sichtbar ist, und zeigt
dann auch nur die sichtbaren Unterpunkte.
- Im-/Export als eigene Unterseite mit Export/Import nebeneinander
(.settings-grid).
- Neue Seite "Mein Konto" (/account, erreichbar über ein Zahnrad-Symbol
neben dem eigenen Namen in der Sidebar) ersetzt das bisherige Profil-Modal:
Profil/Passwort/Profilbild als volle Seite, dazu für Admins die
Navbar-Reihenfolge (aus den Systemeinstellungen hierher verschoben).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -44,16 +44,16 @@ Die App ermöglicht:
|
||||
zuletzt geändert hat. PoE-Neustarts werden bewusst **nicht** geloggt
|
||||
(siehe [Änderungslog](#änderungslog))
|
||||
- **Verschlüsselter Import/Export**: Geräte, Switche und Zugangsdaten lassen
|
||||
sich unter Einstellungen als ein mit selbstgewählter Passphrase
|
||||
verschlüsseltes Bundle exportieren und auf einer neuen Umgebung wieder
|
||||
importieren (siehe [Import/Export](#importexport))
|
||||
- **Eigenes Profil**: jeder Benutzer kann über einen Klick auf seinen Namen
|
||||
in der Sidebar Vor-/Nachname, eigenes Passwort und ein Profilbild pflegen
|
||||
(siehe [Eigenes Profil](#eigenes-profil--profilbild))
|
||||
- **Anpassbare Navigation**: Admins können die Reihenfolge der Sidebar-
|
||||
Menüpunkte unter Einstellungen per Auf/Ab-Buttons festlegen; jeder Benutzer
|
||||
sieht davon ohnehin nur, wofür er berechtigt ist (siehe
|
||||
[Navigation anpassen](#navigation-anpassen))
|
||||
sich unter „Einstellungen → Im-/Export" als ein mit selbstgewählter
|
||||
Passphrase verschlüsseltes Bundle exportieren und auf einer neuen Umgebung
|
||||
wieder importieren (siehe [Import/Export](#importexport))
|
||||
- **Eigenes Konto**: das Zahnrad-Symbol neben dem eigenen Namen unten in der
|
||||
Sidebar führt zu „Mein Konto“ — Vor-/Nachname, eigenes Passwort und
|
||||
Profilbild pflegen (siehe [Eigenes Konto](#eigenes-konto--profilbild))
|
||||
- **Anpassbare Navigation**: Admins legen dort zusätzlich die Reihenfolge der
|
||||
Sidebar-Hauptpunkte per Auf-/Ab-Buttons fest; jeder Benutzer sieht davon
|
||||
ohnehin nur, wofür er berechtigt ist — auch pro Unterpunkt innerhalb einer
|
||||
Gruppe (siehe [Navigation anpassen](#navigation-anpassen))
|
||||
|
||||
## Was ist neu gegenüber dem Original?
|
||||
|
||||
@@ -185,24 +185,35 @@ angelegt. Switche referenzieren ihre Zugangsdaten dabei über den Namen (nicht
|
||||
die interne ID), damit der Import auch bei abweichender ID-Vergabe auf dem
|
||||
Zielsystem korrekt verknüpft.
|
||||
|
||||
## Eigenes Profil & Profilbild
|
||||
## Eigenes Konto & Profilbild
|
||||
|
||||
Ein Klick auf den eigenen Namen unten in der Sidebar öffnet „Mein Profil“:
|
||||
Vor-/Nachname ändern, ein Profilbild hochladen (PNG/JPG/GIF/WEBP) und das
|
||||
eigene Passwort ändern (erfordert Eingabe des aktuellen Passworts). Das ist
|
||||
bewusst getrennt vom Admin-Bereich „Benutzer“, der andere Konten verwaltet.
|
||||
Ist ein Profilbild hinterlegt, erscheint es statt der Initialen sowohl in
|
||||
der Sidebar als auch im Änderungslog neben dem Benutzernamen.
|
||||
Das Zahnrad-Symbol neben dem eigenen Namen unten in der Sidebar führt zu
|
||||
**„Mein Konto“** (`/account`): Vor-/Nachname ändern, ein Profilbild
|
||||
hochladen (PNG/JPG/GIF/WEBP) und das eigene Passwort ändern (erfordert
|
||||
Eingabe des aktuellen Passworts). Das ist bewusst getrennt vom Admin-Bereich
|
||||
„Benutzer“, der andere Konten verwaltet. Ist ein Profilbild hinterlegt,
|
||||
erscheint es statt der Initialen sowohl in der Sidebar als auch im
|
||||
Änderungslog neben dem Benutzernamen. Admins sehen auf derselben Seite
|
||||
zusätzlich die Navbar-Reihenfolge (siehe unten).
|
||||
|
||||
## Navigation anpassen
|
||||
|
||||
Die Reihenfolge der Sidebar-Menüpunkte ist unter **Einstellungen** per
|
||||
Auf-/Ab-Buttons konfigurierbar (gespeichert als JSON-Liste unter
|
||||
`settings.nav_order`) und gilt global für alle Benutzer. Unabhängig von der
|
||||
Reihenfolge sieht jeder Benutzer ohnehin nur die Punkte, für die er auch
|
||||
berechtigt ist — ein Benutzer ohne jede Gruppe sieht z.B. nur „Dashboard“.
|
||||
„Logs“ ist dabei eine aufklappbare Gruppe mit den Unterpunkten „Live-Log“
|
||||
und „Änderungslog“.
|
||||
Die Sidebar ist in drei aufklappbare Gruppen strukturiert:
|
||||
|
||||
- **Geräte** — Clients (die eigentlichen Devices), Switche, Zugangsdaten
|
||||
- **Einstellungen** — Benutzer, Gruppen, Systemeinstellungen (Prüfintervall),
|
||||
Im-/Export
|
||||
- **Logs** — Live, Änderungen (Änderungslog)
|
||||
|
||||
Die Reihenfolge dieser drei Gruppen (und von „Dashboard“) ist für Admins
|
||||
unter **Mein Konto** (Zahnrad-Symbol in der Sidebar) per Auf-/Ab-Buttons
|
||||
konfigurierbar (gespeichert als JSON-Liste unter `settings.nav_order`) und
|
||||
gilt global für alle Benutzer. Unabhängig von der Reihenfolge sieht jeder
|
||||
Benutzer ohnehin nur, wofür er berechtigt ist — sowohl auf Gruppenebene als
|
||||
auch pro Unterpunkt: hat ein Benutzer z.B. nur `devices.view`, erscheint die
|
||||
Gruppe „Geräte“ nur mit dem Unterpunkt „Clients“ (ohne Switche/
|
||||
Zugangsdaten); eine Gruppe verschwindet komplett, wenn kein Unterpunkt
|
||||
sichtbar ist.
|
||||
|
||||
## Entwicklung unter WSL
|
||||
|
||||
|
||||
Reference in New Issue
Block a user