diff options
| author | Andrew Dolgov <fox@fakecake.org> | 2025-08-01 17:20:05 +0300 |
|---|---|---|
| committer | Andrew Dolgov <fox@fakecake.org> | 2025-08-01 17:22:21 +0300 |
| commit | 8eb340c3ca9f30e48d8019f16d3b2a4385881192 (patch) | |
| tree | 1e798aae0960cf292d0253e781c5c432b3dfae38 /js | |
| parent | 851ddf4bbe750e30816b6c494165e9860bd39b92 (diff) | |
make default light/dark themes configurable, add support for main application and login form
Diffstat (limited to 'js')
| -rw-r--r-- | js/App.js | 4 | ||||
| -rw-r--r-- | js/utility.js | 5 |
2 files changed, 7 insertions, 2 deletions
@@ -173,7 +173,7 @@ const App = { if (link) { if (navigator.onLine) { - const css_override = is_night ? "themes/night.css" : "themes/light.css"; + const css_override = is_night ? App.getInitParam("default_dark_theme") : App.getInitParam("default_light_theme"); link.setAttribute("href", css_override + "?" + Date.now()); } else if (retry < 5) { console.log("nightModeChanged: we're offline, will attempt to retry..."); @@ -704,6 +704,8 @@ const App = { window.onerror = this.Error.onWindowError; this.setInitParam("csrf_token", __csrf_token); + this.setInitParam("default_light_theme", __default_light_theme); + this.setInitParam("default_dark_theme", __default_dark_theme); this.setupNightModeDetection(() => { parser.parse(); diff --git a/js/utility.js b/js/utility.js index 43ad5644e..070e9e2d1 100644 --- a/js/utility.js +++ b/js/utility.js @@ -7,8 +7,11 @@ window.addEventListener("load", function() { apply_night_mode: function (is_night, link) { console.log("night mode changed to", is_night); + const light_theme = typeof __default_light_theme != 'undefined' ? __default_light_theme : 'themes/light.css'; + const dark_theme = typeof __default_dark_theme != 'undefined' ? __default_dark_theme : 'themes/dark.css'; + if (link) { - const css_override = is_night ? "themes/night.css" : "themes/light.css"; + const css_override = is_night ? dark_theme : light_theme; link.setAttribute("href", css_override + "?" + Date.now()); } |