-function set_style(name){
- $('link[title]').each(e => e.disabled = true);
- $('link[title="' + name + '"]')[0].disabled = false;
+function set_style(name, trans){
+ if(trans){
+ document.body.classList.add('transition-color');
+ setTimeout(() => document.body.classList.remove('transition-color'), 1000);
+ }
+ if(q('html').className == name)
+ return;
+ q('html').className = name;
localStorage.setItem("theme", name);
$(function() {
if(name == 'slate' || name == 'cyborg')
- $('.logo').each(e => e.classList.remove('logo-light'));
+ $('img').each(e => e.setAttribute('src', e.getAttribute('src').replace('logos/light', 'logos/dark')));
else
- $('.logo').each(e => e.classList.add('logo-light'));
+ $('img').each(e => e.setAttribute('src', e.getAttribute('src').replace('logos/dark', 'logos/light')));
});
}
$(function() {
- var theme_ul = '<ul class="list-inline" id="themes">' +
+ const theme_ul = '<ul class="list-inline" id="themes">' +
'<li><a role="button" data-theme="cyborg">Black</a>' +
'<li><a role="button" data-theme="slate">Grey</a>' +
'<li><a role="button" data-theme="readable">White</a></ul>';
- var sidebar = $('#sidebar')[0];
+ const sidebar = q('#sidebar');
sidebar.insertBefore(m(theme_ul), sidebar.firstChild);
- $('#themes a').on('click', e => set_style(e.target.dataset.theme));
+ $('#themes a').on('click', e => set_style(e.target.dataset.theme, true));
});
-let theme = localStorage.getItem("theme");
-if(theme) {
- if(theme == "cerulean" || theme == "cosmo")
- theme = "readable";
- set_style(theme);
-}
+const theme = localStorage.getItem("theme");
+if(theme)
+ set_style(theme == "cerulean" || theme == "cosmo" ? "readable" : theme, false);