diff --git a/src/page.rs b/src/page.rs
index 14a9f11..4bddb1e 100644
--- a/src/page.rs
+++ b/src/page.rs
@@ -37,6 +37,12 @@ pub fn new(content: Markup, lang: Language) -> Markup {
li {
span id="theme_switcher" {}
}
+
+ li {
+ button id="language_toogle" lang="en" {
+ "DE"
+ }
+ }
}
}
}
diff --git a/static/serve/theme.js b/static/serve/theme.js
index 11a799c..d7bc180 100644
--- a/static/serve/theme.js
+++ b/static/serve/theme.js
@@ -1,31 +1,50 @@
-let isLight = true;
-if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches){
- isLight = false
+document.addEventListener('DOMContentLoaded', () => {
+ switchTheme();
+ setLanguageCookie();
+})
+
+function setLanguageCookie() {
+ let langToggle = document.getElementById('language_toogle');
+
+ langToggle.addEventListener('click', (e)=> {
+ e.preventDefault();
+ let lang = langToggle.getAttribute('lang');
+ document.cookie = "language=" + lang;
+ window.location.reload();
+ })
}
-const html = document.documentElement
-const switchTheme = document.getElementById('theme_switcher')
-const os_default = ''
-const sun = ''
-const moon = ''
+/** [ph] */
+function switchTheme() {
+ let isLight = true;
+ if (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches){
+ isLight = false
+ }
+
+ const html = document.documentElement
+ const switchTheme = document.getElementById('theme_switcher')
+ const os_default = ''
+ const sun = ''
+ const moon = ''
+ const removeTooltip = (timeInt = 1750) => {
+ setTimeout(()=>{
+ switchTheme.blur()
+ },timeInt)
+ }
-document.addEventListener('DOMContentLoaded', () => {
switchTheme.innerHTML = os_default
//html.setAttribute('data-theme', 'auto')
switchTheme.setAttribute('data-tooltip', 'os theme')
switchTheme.focus()
removeTooltip(3000)
-})
-switchTheme.addEventListener('click', (e)=> {
- e.preventDefault()
- isLight = !isLight
- html.setAttribute('data-theme', isLight? 'light':'dark')
- switchTheme.innerHTML = isLight? sun : moon
- switchTheme.setAttribute('data-tooltip', `theme ${isLight?'light':'dark'}`)
- removeTooltip()
-})
-const removeTooltip = (timeInt = 1750) => {
- setTimeout(()=>{
- switchTheme.blur()
- },timeInt)
+
+ switchTheme.addEventListener('click', (e)=> {
+ e.preventDefault()
+ isLight = !isLight
+ html.setAttribute('data-theme', isLight? 'light':'dark')
+ switchTheme.innerHTML = isLight? sun : moon
+ switchTheme.setAttribute('data-tooltip', `theme ${isLight?'light':'dark'}`)
+ removeTooltip()
+ })
}
+