User:Peti610/monobook.js

//interwikiFordító (interwikiTranslator) //Báthory Péter, 2008 (hu:User:BáthoryPéter) //További információk: User:BáthoryPéter/interwikiFordito // //A program szabadon felhasználható, GNU GPL licensz szerint. / This program uses GNU GPL licence. //If you want to use the script in your language, copy the code to your Wikipedia, and translate the content of variable "LangList" //  and in function createMenu change: Eredeti -> Original; Magyar -> your language; Vegyes -> Both ///////////////////////////////////////////////////////////////////////////////////////////////////// function iwTranslator {} iwTranslator.prototype={ LangList : new Object({		'en': 'Angol',		'aa': 'Afar',		'ab': 'Abház',		'af': 'Afrikaans',		'ak': 'Akan',		'als': 'Alemann',		'am': 'Amhara',		'an': 'Aragóniai spanyol',		'ang': 'Óangol/angoszász',		'ast': 'Asztúriai spanyol',		'ar': 'Arab',		'arc': 'Asszír újarámi',		'arz': 'Egyiptomi arab',		'as': 'Asszámi',		'av': 'Avar',		'ay': 'Ajmara',		'az': 'Azeri',		'bcl': 'Bikol',		'ba': 'Baskír',		'bar': 'Bajor',		'bat-smg': 'Szamogitiai litván',		'be': 'Fehérorosz',		'be-x-old': 'Taraskevica fehérorosz',		'bg': 'Bolgár',		'bh': 'Bhódzspuri/bihári',		'bi': 'Biszlama',		'bm': 'Manding/bambara',		'bn': 'Bengáli',		'bo': 'Tibeti',		'bpy': 'Bisnuprija manipuri',		'br': 'Breton',		'bs': 'Bosnyák',		'bug': 'Bugisz',		'bxr': 'Burját',		'ca': 'Katalán',		'cbk-zam': 'Zamboangai chavacano',		'cdo': 'Min-tung',		'ce': 'Csecsen',		'ceb': 'Szebuano',		'ch': 'Csamorro',		'chr': 'Cseroki',		'chy': 'Cheyenne', 'co': 'Korzikai', 'cr': 'Krí', 'crh': 'Krími tatár', 'cs': 'Cseh', 'csb': 'Kasub', 'cu': 'Óegyházi szláv', 'cv': 'Csuvas', 'cy': 'Walesi', 'da': 'Dán', 'de': 'Német', 'diq': 'Zázá', 'dsb': 'Alsószorb', 'dv': 'Divehi', 'dz': 'Dzongkha', 'ee': 'Eve', 'el': 'Görög', 'eml': 'Emiliano-romagnolo', 'eo': 'Eszperantó', 'es': 'Spanyol', 'et': 'Észt', 'eu': 'Baszk', 'ext': 'Extremadurai', 'fa': 'Perzsa', 'fi': 'Finn', 'fiu-vro': 'Võro', 'fj': 'Fidzsi', 'ff': 'Ful', 'fy': 'Nyugati fríz', 'fo': 'Feröeri', 'fr': 'Francia', 'frp': 'Frankoprovanszál', 'fur': 'Friuli', 'ga': 'Ír', 'gan': 'Kan', 'gd': 'Skót', 'gl': 'Galiciai', 'glk': 'Gilaki', 'gn': 'Guarani', 'got': 'Gót', 'gu': 'Gudzsaráti', 'gv': 'Manx', 'ha': 'Hausza', 'hak': 'Hakka', 'haw': 'Hawaii', 'he': 'Héber', 'hi': 'Hindi', 'hif': 'Fidzsi hindi', 'ho': 'Hiri-motu', 'hr': 'Horvát', 'hsb': 'Felsőszorb', 'ht': 'Haiti kreol', 'hu': 'Magyar', 'hy': 'Örmény', 'ia': 'Interlingva', 'ie': 'Occidental', 'ii': 'Szecsuáni ji/lolo', 'ig': 'Igbo', 'id': 'Indonéz', 'ik': 'Inupiak', 'ilo': 'Ilokano', 'io': 'Ido', 'is': 'Izlandi', 'it': 'Olasz', 'iu': 'Inuktitut', 'ja': 'Japán', 'jbo': 'Lojban', 'jv': 'Jávai', 'ka': 'Grúz', 'kaa': 'Karakalpak', 'kab': 'Kabyle', 'kg': 'Kikongo', 'ki': 'Kikuju', 'kj': 'Kvanyama', 'kk': 'Kazah', 'kl': 'Grönlandi', 'km': 'Khmer', 'kn': 'Kannada', 'ko': 'Koreai', 'ks': 'Kasmíri', 'ksh': 'Ripuári', 'ku': 'Kurd', 'kv': 'Komi', 'kw': 'Korni', 'ky': 'Kirgiz', 'la': 'Latin', 'lad': 'Ladino', 'lb': 'Luxemburgi', 'lbe': 'Lak', 'lg': 'Ganda', 'li': 'Limburgi', 'lij': 'Ligur', 'lmo': 'Lombard', 'ln': 'Lingala', 'lo': 'Lao', 'lt': 'Litván', 'lv': 'Lett', 'map-bms': 'Malajálam', 'mdf': 'Moksa', 'mg': 'Malgas', 'mh': 'Marshall-szigeteki', 'mi': 'Maori', 'ml': 'Malajálam', 'mk': 'Macedón', 'mn': 'Mongol', 'mo': 'Moldovai', 'mr': 'Maráthi', 'ms': 'Maláj', 'mt': 'Máltai', 'my': 'Burmai', 'myv': 'Erza', 'mzn': 'Mázandaráni', 'na': 'Naurui', 'nah': 'Azték', 'nap': 'Nápolyi', 'nds': 'Alnémet', 'nds-nl': 'Holland alsószász', 'ne': 'Nepáli', 'new': 'Névári', 'ng': 'Ndonga', 'nl': 'Holland', 'nn': 'Újnorvég', 'no': 'Norvég', 'nov': 'Novial', 'nrm': 'Normandiai', 'nv': 'Navahó', 'ny': 'Cseva', 'oc': 'Okcitán', 'om': 'Oromo', 'or': 'Orija', 'os': 'Oszét', 'pa': 'Pandzsábi', 'pag': 'Pangasinan', 'pam': 'Pampanga', 'pap': 'Papiamentu', 'pdc': 'Pennsylvaniai német', 'pi': 'Páli', 'pih': 'Norfuk', 'pl': 'Lengyel', 'pms': 'Piemontei', 'ps': 'Pasto', 'pt': 'Portugál', 'qu': 'Kecsua', 'ro': 'Román', 'roa-rup': 'Aromán', 'roa-tara': 'Tarantino', 'rm': 'Rétoromán', 'rmy': 'Romani', 'rn': 'Kirundi', 'ru': 'Orosz', 'rw': 'Kinyarvanda', 'sa': 'Szanszkrit', 'sah': 'Jakut/szaha', 'se': 'Északi számi', 'sc': 'Szárd', 'scn': 'Szicíliai', 'sco': 'Skóciai angol', 'sd': 'Szindhi', 'sh': 'Szerbhorvát', 'sg': 'Szango', 'si': 'Szingaléz', 'simple': 'Egyszerűsített angol', 'sk': 'Szlovák', 'sl': 'Szlovén', 'sm': 'Szamoai', 'sn': 'Sona', 'so': 'Szomáli', 'sq': 'Albán', 'sr': 'Szerb', 'srn': 'Sranan', 'ss': 'Swati', 'st': 'Szoto', 'stq': 'Saterlandi fríz', 'su': 'Szundai', 'sv': 'Svéd', 'sw': 'Szuahéli', 'szl': 'Sziléz', 'ta': 'Tamil', 'te': 'Telugu', 'tet': 'Tetum', 'tg': 'Tádzsik', 'th': 'Thai', 'ti': 'Tigrinya', 'tk': 'Türkmén', 'tl': 'Tagalog', 'tn': 'Csvana', 'to': 'Tonga', 'tpi': 'Tok-piszin', 'tr': 'Török', 'ts': 'Conga', 'tt': 'Tatár', 'tum': 'Tumbuka', 'tw': 'Tvi', 'ty': 'Tahiti', 'udm': 'Udmurt', 'ug': 'Ujgur', 'uk': 'Ukrán', 'ur': 'Urdu', 'uz': 'Üzbég', 've': 'Venda', 'vec': 'Velencei', 'vi': 'Vietnami', 'vls': 'Nyugati flamand', 'vo': 'Volapük', 'wa': 'Vallon', 'war': 'Waray', 'wo': 'Volof', 'wuu': 'Wu', 'xal': 'Kalmük', 'xh': 'Yhosza', 'yi': 'Jiddis', 'yo': 'Joruba', 'za': 'Csuang', 'zea': 'Zeelandi', 'zh': 'Kínai', 'zh-classical': 'Klasszikus kínai', 'zh-min-nan': 'Min Nan', 'zh-yue': 'Kantoni', 'zu': 'Zulu' }),	LangSpecABC : new Array(['á','a'],['é','e'],['í','i'],['ó','o'],['ö','oz'],['ő','ou'],['ú','u'],['ü','uz'],['ű','uz']) }; iwTranslator.prototype.init = function {	var langdiv = document.getElementById('p-lang');	if (!langdiv) return;	var i=0;	while( (i < langdiv.childNodes.length) && (langdiv.childNodes[i].nodeName != 'DIV') && (langdiv.childNodes[i].className!=='pBody') )		++i;	if (i < langdiv.childNodes.length) {		this.langul = langdiv.getElementsByTagName('ul')[0];		var i=0; var j=1;		var nodes=this.langul.childNodes;		if (nodes[nodes.length-1].id == 'interwiki-completelist') //enwiki miatt, mert ott a completelist nem class hanem id			nodes[nodes.length-1].setAttribute('class','interwiki-completelist');		while( nodes[i] !== undefined) {			if (nodes[i].childNodes[0] !== undefined && nodes[i].className.indexOf('interwiki-') > -1 && nodes[i].childNodes[0].nodeName == 'A') {				this.bovit(nodes[i], j);				++j;			}			++i;		}		this.createMenu;		var nyelvsuti=getCookie('interwikiNyelv') - 1;		if ( nyelvsuti !== '') {			this.changeLang(nyelvsuti, true);		}else			this.changeLang(0, true);	} } iwTranslator.prototype.zeroFill = function(num) {	num=String(num);	for (var i=num.length; num.length < 4; ++i)		num="0"+num;	return num; } iwTranslator.prototype.huABCtoEN = function(str) {	str=str.toLowerCase;	for (var i=0; i -1) nyelv=nyelv.slice(10,nyelv.indexOf(' ',10)); else nyelv=nyelv.substr(10); var magyarul=this.nyelv2magyar(nyelv); if (node.childNodes[1] !== undefined && node.childNodes[1].nodeName == "#text") node.removeChild(node.childNodes[1]);	//IE hiba jav //Magyar név hozzáadása zárójel nélküli alakban var ujlink1 = document.createElement('a'); ujlink1.href=node.childNodes[0].href; ujlink1.style.display='none'; ujlink1.appendChild(document.createTextNode( magyarul )); ujlink1.setAttribute('rendnyelv',this.huABCtoEN(magyarul)); node.appendChild(ujlink1); //Magyar név hozzáadása zárójeles alakban var ujlink2 = document.createElement('a'); ujlink2.href=node.childNodes[0].href; ujlink2.style.display='none'; ujlink2.style.color='black'; ujlink2.appendChild(document.createTextNode( ' ('+magyarul+')')); ujlink2.setAttribute('rendnyelv',this.zeroFill(eredetiSorrend)); node.appendChild(ujlink2); node.childNodes[0].setAttribute('rendnyelv',this.zeroFill(eredetiSorrend)); } iwTranslator.prototype.sort = function(type) { function listSort(a, b) { if (a.childNodes[2] !== undefined && b.childNodes[2] !== undefined) { if (a.childNodes[type].getAttribute('rendnyelv') < b.childNodes[type].getAttribute('rendnyelv')) return -1; if (a.childNodes[type].getAttribute('rendnyelv') > b.childNodes[type].getAttribute('rendnyelv')) return 1; return 0; }	}	var list_temp = this.langul.getElementsByTagName('li'); //Ezt az Objektum listát még nem lehet rendezni (IE6), ezért átmásoljuk egy "rendes" tömbbe var list = new Array; for (var i=0; i < list_temp.length; ++i) list[i]=list_temp[i]; //A főoldalon a rendezés idejére kivesszük a "Teljes lista"-t, hogy legalul maradjon if (list[list.length-1].className == 'interwiki-completelist') var IWcompletelist = list.pop; //Rendezés list.sort(listSort); if (IWcompletelist) list.push(IWcompletelist); //Végül újraépítjük a listát for (var i=0; i < list.length; ++i) this.langul.appendChild(list[i]); } iwTranslator.prototype.createMenu = function { var menu=document.createElement('div'); menu.setAttribute('id','interwikiNyelvValtMenu'); menu.style.marginLeft='-15px'; menu.style.marginBottom='5px'; menu.style.fontSize='.9em'; var menuA1=document.createElement('a'); menuA1.href='javascript:interwikiTranslator.changeLang(0)'; menuA1.appendChild(document.createTextNode('Eredeti')); var menuA2=document.createElement('a'); menuA2.href='javascript:interwikiTranslator.changeLang(1)'; menuA2.appendChild(document.createTextNode('Magyar')); var menuA3=document.createElement('a'); menuA3.href='javascript:interwikiTranslator.changeLang(2)'; menuA3.appendChild(document.createTextNode('Vegyes')); var menuSpacer=document.createTextNode(' / '); //Menüelemek egyás után rakása: Eredeti /  Magyar  /  Vegyes menu.appendChild(menuA1); menu.appendChild(menuSpacer); menu.appendChild(menuA2); menu.appendChild(menuSpacer.cloneNode(true)); menu.appendChild(menuA3); this.langul.insertBefore(menu,this.langul.firstChild); } iwTranslator.prototype.changeLang = function(type, nemrendez) { var nyelvMenu = document.getElementById('interwikiNyelvValtMenu'); //Menü átváltása, és rendezés switch (type) { case 0: { if ( !nemrendez) this.sort(0); nyelvMenu.childNodes[0].style.color='black'; nyelvMenu.childNodes[2].style.color=''; nyelvMenu.childNodes[4].style.color=''; break;} case 1: {// if ( !nemrendez) Betöltéskor csak a magyart rendezzük this.sort(1); nyelvMenu.childNodes[0].style.color=''; nyelvMenu.childNodes[2].style.color='black'; nyelvMenu.childNodes[4].style.color=''; break;} case 2: { if ( !nemrendez) this.sort(2); nyelvMenu.childNodes[0].style.color=''; nyelvMenu.childNodes[2].style.color=''; nyelvMenu.childNodes[4].style.color='black'; break;} }	//Minden nyelvre beállítja a láthatóságot for (var i=0; i < this.langul.childNodes.length; ++i) { if (this.langul.childNodes[i].nodeName=='LI' && this.langul.childNodes[i].childNodes[2] != undefined				&& this.langul.childNodes[i].className !== 'interwiki-completelist') { switch(type) { case 0: { this.langul.childNodes[i].childNodes[0].style.display='inline'; this.langul.childNodes[i].childNodes[1].style.display='none'; this.langul.childNodes[i].childNodes[2].style.display='none'; break;} case 1: { this.langul.childNodes[i].childNodes[0].style.display='none'; this.langul.childNodes[i].childNodes[1].style.display='inline'; this.langul.childNodes[i].childNodes[2].style.display='none'; break;} case 2: { this.langul.childNodes[i].childNodes[0].style.display='inline'; this.langul.childNodes[i].childNodes[1].style.display='none'; this.langul.childNodes[i].childNodes[2].style.display='inline'; break;}} }	}	if ( !nemrendez) {	//Csak akkor mentjük a sütit, ha kattintással hívódott meg ez a függvény var time=new Date; time.setTime(time.getTime + 60*24*3600000); //60 napig // type+1, mert 0-nál IE törli a sütit setCookie('interwikiNyelv',type+1, time); } } //Ez a magyar wikiben benne van, de az angolon nincs, így ott nem működnének a sütik function getCookie(name) { var cookieText; var cookiePos = document.cookie.indexOf(name + '='); if(cookiePos!=-1) { var results = document.cookie.match(name+'=(.*?)(|$)'); if(results) cookieText = unescape(results[1]); return cookieText; } else return null; } function setCookie(name, text, expires) { if(text) { if(expires) { document.cookie = name + '=' + escape(text) + '; expires=' + expires.toUTCString + '; path=/'; } else { document.cookie = name + '=' + escape(text) + '; path=/'; }	} else { document.cookie = name + '=; expires=Thu, 01-Jan-1970 00:00:01 GMT; path=/'; // delete cookie } } var interwikiTranslator = new iwTranslator; $(function {interwikiTranslator.init})