From fca59545cc2f8cd162c7b196be5989af3728880a Mon Sep 17 00:00:00 2001 From: Eduard Wisch Date: Tue, 19 May 2026 16:30:29 +0200 Subject: [PATCH] Einstellungen per Zahnrad erreichbar, verwirrenden Sync-Punkt entfernt [apk] - AppHeader: farbiger Sync-Ampel-Punkt raus (war nicht selbsterklaerend), stattdessen Zahnrad-Icon -> Einstellungen, von jeder Seite erreichbar - Einstellungen neu gegliedert: App (Version + Update-Button) zuerst, dann Synchronisierung (Status in Klartext + manueller Sync), Konto, Abmelden Co-Authored-By: Claude Opus 4.7 (1M context) --- src/lib/components/AppHeader.svelte | 33 ++++------ src/routes/einstellungen/+page.svelte | 86 ++++++++++++++++++--------- 2 files changed, 70 insertions(+), 49 deletions(-) diff --git a/src/lib/components/AppHeader.svelte b/src/lib/components/AppHeader.svelte index 447da2d..39a35d6 100644 --- a/src/lib/components/AppHeader.svelte +++ b/src/lib/components/AppHeader.svelte @@ -1,7 +1,6 @@
@@ -31,13 +24,13 @@

{subtitle}

{/if} - + {#if !onSettings} + + + + {/if}
diff --git a/src/routes/einstellungen/+page.svelte b/src/routes/einstellungen/+page.svelte index 760b65a..95f9b29 100644 --- a/src/routes/einstellungen/+page.svelte +++ b/src/routes/einstellungen/+page.svelte @@ -9,11 +9,18 @@ let checking = $state(false); - async function logout() { - await auth.logout(); - sync.stop(); - goto('/login/'); - } + // Sync-Status in Klartext + const syncLabel = $derived( + sync.status === 'syncing' + ? 'Wird synchronisiert …' + : sync.status === 'error' + ? 'Letzter Sync fehlgeschlagen' + : sync.status === 'offline' + ? 'Offline' + : sync.pendingCount > 0 + ? `${sync.pendingCount} Protokoll(e) noch nicht übertragen` + : 'Alles synchronisiert', + ); async function checkUpdate() { checking = true; @@ -22,11 +29,52 @@ if (upd) openUpdate(upd); else toast.show('App ist aktuell', 'success'); } + + async function logout() { + await auth.logout(); + sync.stop(); + goto('/login/'); + }
+ +
+

App

+

+ Version {APP_VERSION} +

+

+ Der Zeitstempel zeigt, welcher Build installiert ist. +

+ +
+ + +
+

Synchronisierung

+

{syncLabel}

+

+ Server: {getServerUrl() || '(Browser-Proxy)'} +

+ +
+ +

Konto

{auth.user?.name ?? '—'}

@@ -36,30 +84,10 @@

-
-

Server

-

{getServerUrl() || '(Browser-Proxy)'}

-

- Offene Protokolle: {sync.pendingCount} · Status: {sync.status} -

- -
- -
-

App

-

Version {APP_VERSION}

- -
- -