36 lines
794 B
JavaScript
36 lines
794 B
JavaScript
const THEME = "theme";
|
|||
|
|
|
||
|
|
const saveTheme = (themeValue) => {
|
||
|
|
localStorage.setItem(THEME, themeValue);
|
||
|
|
};
|
||
|
|
|
||
|
|
const themeLight = document.getElementById("theme-light");
|
||
|
|
themeLight.addEventListener("input", (e) => {
|
||
|
|
saveTheme(themeLight.value);
|
||
|
|
});
|
||
|
|
|
||
|
|
const themeAuto = document.getElementById("theme-auto");
|
||
|
|
themeAuto.addEventListener("input", (e) => {
|
||
|
|
saveTheme(themeAuto.auto);
|
||
|
|
});
|
||
|
|
|
||
|
|
const themeDark = document.getElementById("theme-dark");
|
||
|
|
themeDark.addEventListener("input", (e) => {
|
||
|
|
saveTheme(themeDark.value);
|
||
|
|
});
|
||
|
|
|
||
|
|
var currentThemeValue = localStorage.getItem(THEME);
|
||
|
|
switch (currentThemeValue) {
|
||
|
|
case "light":
|
||
|
|
themeLight.checked = true;
|
||
|
|
break;
|
||
|
|
case "auto":
|
||
|
|
themeAuto.checked = true;
|
||
|
|
break;
|
||
|
|
case "dark":
|
||
|
|
themeDark.checked = true;
|
||
|
|
break;
|
||
|
|
default:
|
||
|
|
themeAuto.checked = true;
|
||
|
|
}
|