X-Git-Url: http://git.ieval.ro/?p=plack-app-gruntmaster.git;a=blobdiff_plain;f=js%2F90-themes.js;h=a9d9b5185ebf5f1bd905dffc0767b46841b7bf4e;hp=1e6fdceb66d996c31291974f5d44412a4abce126;hb=65d5cb3b6007fa0bc758722983b3f0afefc02f2e;hpb=8798626b0e96a4d1eb423f7f70ece78a2fcb4ae7 diff --git a/js/90-themes.js b/js/90-themes.js index 1e6fdce..a9d9b51 100644 --- a/js/90-themes.js +++ b/js/90-themes.js @@ -1,21 +1,23 @@ -(function(){ - 'use strict'; - function set_style(name){ - $('#stylesheet').attr("href", "/static/css/" + name + ".css"); - localStorage.setItem("theme", name); +function set_style(name, trans){ + if(trans){ + document.body.classList.add('transition-color'); + setTimeout(() => document.body.classList.remove('transition-color'), 1000); } + $('link[title]').each(e => e.disabled = true); + $('link[title="' + name + '"]')[0].disabled = false; + localStorage.setItem("theme", name); +} - $( document ).ready(function() { - $('#theme-selector').detach().prependTo($('#sidebar')); - $('#theme_slate' ).on('click', function () { set_style("slate"); }); - $('#theme_cyborg' ).on('click', function () { set_style("cyborg"); }); - $('#theme_readable').on('click', function () { set_style("readable"); }); - }); +$(function() { + const theme_ul = ''; + const sidebar = $('#sidebar')[0]; + sidebar.insertBefore(m(theme_ul), sidebar.firstChild); + $('#themes a').on('click', e => set_style(e.target.dataset.theme, true)); +}); - var 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);