// ==UserScript== // @name Batoto Language Fastswich // @namespace http://bato.to/scripts // @version 2-beta // @description Adds language switching buttons to comic page // @include http://*bato.to/comic/_/comics/* // @grant none // @copyright 2014+, Gendalph // @licence MIT // @downloadURL none // ==/UserScript== // // FIXME! // ADD BUTTONS // MAKE INTO USERSCRIPT // (function() { "use strict"; if (document.cookie.match(/lang_option=[\w%]+/)) { console.error('[Batoto Language Fastswich] This script works only if language filter is disabled'); return; } // list of supported languages var languages = [".lang_English", ".lang_Spanish", ".lang_French", ".lang_German", ".lang_Portuguese", ".lang_Turkish", ".lang_Indonesian", ".lang_Greek", ".lang_Filipino", ".lang_Italian", ".lang_Polish", ".lang_Thai", ".lang_Malay", ".lang_Hungarian", ".lang_Romanian", ".lang_Arabic", ".lang_Hebrew", ".lang_Russian", ".lang_Vietnamese", ".lang_Dutch" ]; var langBtnCssClass = [ '.topic_buttons li > input[type="checkbox"] { display: none; }', 'div .flag-icon {', ' background-image: url("http://bato.to/images/all_flags.png");', ' width: 16px;', ' height: 12px;', ' display: inline-block;', ' margin-left: 3px;', ' vertical-align: middle;', '}', '.topic_buttons li > input[type="checkbox"]:checked + label div {', ' border-left: solid green 3px;', ' margin-left: 0px;', '}', '#btn_English + label > div { background-position: -284px -173px; }', '#btn_Spanish + label > div { background-position: -4px -173px; }', '#btn_French + label > div { background-position: -228px -173px; }', '#btn_German + label > div { background-position: -284px -117px; }', '#btn_Portuguese + label > div { background-position: -4px -453px; }', '#btn_Turkish + label > div { background-position: -116px -537px; }', '#btn_Indonesian + label > div { background-position: -256px -229px; }', '#btn_Greek + label > div { background-position: -256px -201px; }', '#btn_Filipino + label > div { background-position: -116px -425px; }', '#btn_Italian + label > div { background-position: -172px -257px; }', '#btn_Polish + label > div { background-position: -172px -425px; }', '#btn_Thai + label > div { background-position: -228px -509px; }', '#btn_Malay + label > div { background-position: -200px -369px; }', '#btn_Hungarian + label > div { background-position: -228px -229px; }', '#btn_Romanian + label > div { background-position: -144px -509px; }', '#btn_Arabic + label > div { background-position: -200px -453px; }', '#btn_Hebrew + label > div { background-position: -4px -257px; }', '#btn_Russian + label > div { background-position: -144px -453px; }', '#btn_Vietnamese + label > div { background-position: -256px -565px; }', '#btn_Dutch + label > div { background-position: -200px -313px; }' ].join('\n'); // // End of initialization // addStyles(langBtnCssClass); addButtons(); addClearBtn(); // generates and adds language select buttons to DOM function addButtons() { var buttons = "", buttonsDiv = btnDivSelector(); for (var i = languages.length - 1; i >= 0; i--) { buttons += generateFlagBtnHTML(languages[i]); } buttonsDiv.insertAdjacentHTML('beforeend', buttons); buttons = document.querySelectorAll('.topic_buttons li > input[type="checkbox"]'); for (var j = buttons.length - 1; j >= 0; j--) { buttons[j].onclick = cbOnClick; } } function addClearBtn() { var buttonsDiv = btnDivSelector(), HTML = '