From 2fe7e9522d5a670e26866a3994a5c1c5fe59dba1 Mon Sep 17 00:00:00 2001 From: Friederich Loheide Date: Wed, 23 Sep 2026 06:53:57 +0000 Subject: [PATCH] =?UTF-8?q?Theme-Auswahl=20aus=20dem=20Seitenkopf=20nicht?= =?UTF-8?q?=20mehr=20=C3=BCberschreiben?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit global.js hat beim Laden erneut ein Theme gesetzt und dabei die Entscheidung des Inline-Schnipsels im verworfen – sichtbar als kurzes Umspringen und daran, dass erzwungene Themes ignoriert wurden. Jetzt gilt: ausdrückliche Auswahl > bereits gesetztes Attribut > System. Updater-Seite übernimmt ebenfalls die Markenfarben, Screenshots neu. Co-Authored-By: Claude Opus 5 --- assets/global.js | 5 ++++- docs/screenshots/admin-dashboard-dark.png | Bin 388273 -> 394977 bytes docs/screenshots/two-factor.png | Bin 291062 -> 289572 bytes docs/screenshots/vouchers.png | Bin 421911 -> 422347 bytes updater/templates/update.php | 2 +- 5 files changed, 5 insertions(+), 2 deletions(-) diff --git a/assets/global.js b/assets/global.js index fa3b3ad..b795836 100644 --- a/assets/global.js +++ b/assets/global.js @@ -2,8 +2,11 @@ Reihenfolge: ausdrueckliche Auswahl des Nutzers > Systemeinstellung. */ (function() { const saved = localStorage.getItem('theme'); + // Der Inline-Schnipsel im hat das Theme bereits gesetzt – diese + // Entscheidung wird hier nicht überschrieben. + const current = document.documentElement.getAttribute('data-theme'); const system = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'; - document.documentElement.setAttribute('data-theme', saved || system); + document.documentElement.setAttribute('data-theme', saved || current || system); // Solange nichts ausgewaehlt wurde, folgt die Oberflaeche dem System. if (!saved && window.matchMedia) { diff --git a/docs/screenshots/admin-dashboard-dark.png b/docs/screenshots/admin-dashboard-dark.png index 60d8402bdcee97c8eab9ac99728b0457e90ea8a9..f41ea94ff2e281632f472d4d9f3c2618a21785df 100644 GIT binary patch literal 394977 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