User:Peti610/monobook.js
Appearance
Code that you insert on this page could contain malicious content capable of compromising your account. If you import a script from another page with "importScript", "mw.loader.load", "iusc", or "lusc", take note that this causes you to dynamically load a remote script, which could be changed by others. Editors are responsible for all edits and actions they perform, including by scripts. User scripts are not centrally supported and may malfunction or become inoperable due to software changes. A guide to help you find broken scripts is available. If you are unsure whether code you are adding to this page is safe, you can ask at the appropriate village pump. This code will be executed when previewing this page. |
![]() | The accompanying .css page for this skin can be added at User:Peti610/monobook.css. |
//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<this.LangSpecABC.length;++i){
str=str.replace(this.LangSpecABC[i][0],this.LangSpecABC[i][1]);
}
return str;
}
iwTranslator.prototype.nyelv2magyar = function(nyelv) {
if (this.LangList[nyelv])
return this.LangList[nyelv];
else
return nyelv;
}
iwTranslator.prototype.bovit = function(node, eredetiSorrend) {
//Nyelvkód meghatározása a LI id-jából (pl: interwiki-en)
var nyelv=new String(node.className);
if (nyelv.indexOf(' ',10) > -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()})