diff --git a/js/style-select-simple.js b/js/style-select-simple.js new file mode 100644 index 00000000..8b59fa0a --- /dev/null +++ b/js/style-select-simple.js @@ -0,0 +1,36 @@ +/* + * style-select-simple.js + * + * Changes the stylesheet chooser links to a ').css({float:"none"}); - var options = []; - - var i = 1; - stylesDiv.children().each(function() { - var name = this.innerHTML.replace(/(^\[|\]$)/g, ''); - var opt = $('') - .html(name) - .val(i); - if ($(this).hasClass('selected')) - opt.attr('selected', true); - options.push ([name.toUpperCase (), opt]); - $(this).attr('id', 'style-select-' + i); - i++; - }); + let pages = $('div.pages'); + let stylesSelect = $('').css({float:"none"}); + let options = []; - options.sort ((a, b) => { + let i = 1; + for (styleName in styles) { + if (styleName) { + let opt = $('') + .html(styleName) + .val(i); + if (selectedstyle == styleName) { + opt.attr('selected', true); + } + opt.attr('id', 'style-select-' + i); + options.push([styleName.toUpperCase (), opt]); + i++; + } + } + + options.sort((a, b) => { const keya = a [0]; const keyb = b [0]; - if (keya < keyb) { return -1; } - if (keya > keyb) { return 1; } + if (keya < keyb) { + return -1; + } + if (keya > keyb) { + return 1; + } return 0; - }).forEach (([key, opt]) => { + }).forEach(([key, opt]) => { stylesSelect.append(opt); }); - + stylesSelect.change(function() { - $('#style-select-' + $(this).val()).click(); + let sel = $(this).find(":selected")[0]; + let styleName = sel.innerHTML; + changeStyle(styleName, sel); }); - - stylesDiv.hide() + pages.after( $('
') .append(_('Select theme: '), stylesSelect) diff --git a/templates/main.js b/templates/main.js index d86d5b70..c48a6ed3 100755 --- a/templates/main.js +++ b/templates/main.js @@ -231,28 +231,6 @@ var resourceVersion = document.currentScript.getAttribute('data-resource-version {% endif %} {% raw %} -function initStyleChooser() { - var newElement = document.createElement('div'); - newElement.className = 'styles'; - - for (styleName in styles) { - if (styleName) { - var style = document.createElement('a'); - style.innerHTML = '[' + styleName + ']'; - style.onclick = function() { - changeStyle(this.innerHTML.substring(1, this.innerHTML.length - 1), this); - }; - if (styleName == selectedstyle) { - style.className = 'selected'; - } - style.href = 'javascript:void(0);'; - newElement.appendChild(style); - } - } - - document.getElementById('bottom-hud').before(newElement); -} - function getCookie(cookie_name) { let results = document.cookie.match('(^|;) ?' + cookie_name + '=([^;]*)(;|$)'); if (results) { @@ -528,7 +506,6 @@ var script_settings = function(script_name) { }; function init() { - initStyleChooser(); initCaptcha(); {% endraw %}