Wikipedia:WikiProjekt Marxismus/monobook.js
Erscheinungsbild
// *************** SETUP Teil 1 ********************************** // Parameter für diese monobook.js (Quickbar, Module etc.) var zeigeversion = false; // monobook-Version anzeigen? var zeigehilfe = false; // kurze Hilfetexte beim überfahren mit der Maus anzeigen? var qbnewpage = true; // sollen Seiten aus dem QuickBar im neuen Fenster aufgerufen werden? var rclimit = 500; // angezeigte Anzahl auf "Letzte Änderungen" var nplimit = 500; // angezeigte Anzahl auf "Neue Artikel" var nulimit = 1000; // angezeigte Anzahl auf "Neuanmeldungs-Logbuch" var nvlimit = 500; // angezeigte Anzahl auf "Alte, gesichtete Seiten" var usedropdown = false; // Wenn keine Dropdowns gewünscht sind, hier false eintragen! var timeout = 50000; // 50 Sekunden auf das Neuladen der Seite warten var timezoneshift = 0; // Unterschied lokale Zeit zur Systemzeit (bleibt für Mitteleuropäer 0) var debugme = false; // Debug-Modus? var qbfontsize = 100; // Schriftgröße im QuickBar (relativ in Prozent) // systemweite Default-Optionen aus MediaWiki:Monobook.js NavigationBarShowDefault = 0; // Navi-Leisten: alle einklappen == 0; alle ausklappen == 15 (z.B.) var oldEditsectionLinks = false; // "Bearbeiten"-Links bei Abschnitten ganz nach rechts? var enable_linkFA = true; // "Featured Articles" in fremdsprachigen Wikipedias markieren? // // Modul: hinweise.js var hinweis = true; // Portal- und Redaktionshinweis verwenden? // // **************** SETUP Ende *********************************** /* * ab hier wird der Quickbar (der Kasten oben links) zusammengebaut * * zuerst die allgemeinen Variablen (hier bitte nix ändern!) */
var Quickbar = '
');
if (scrpt > ) { document.write('<script> function _doopt (was) { switch (was) {', scrpt, '}}<\/script>'); scrpt=; } // // ab hier functions // function w (was,lurl,linktext,targt,title) { if (!title) title=linktext; if (!zeigehilfe) title=; if (!dropdown) { switch (was) { case 0 : xxx=xxx+lurl;break; case 1 : xxx=xxx+'<a href="'+lurl+'" target="'+targt+'" title="'+title+'">'+linktext+'</a> ';break; case 2 : xxx=xxx+'<a href="#" onclick="newtext('+ lurl +')" title="'+title+'">'+linktext+'</a> ';break; case 3 : xxx=xxx+'<a href="#" onclick="insertTagsWrapper('+ lurl +')" title="'+title+'">'+linktext+'</a> ';break; case 4 : xxx=xxx+'<a href="#" onclick="'+ lurl +'" title="'+title+'">'+linktext+'</a> ';break; } } //if else //todo: Hilfe bei Dropdowns. Benutzt die überhaupt jemand???? { var ltext='__________'.substr(1,ind)+linktext; switch (was) { case 0 : if (lurl==br) { xxx = xxx+'<option>'+linktext+'</option>';ind=2; } else if (lurl==trenner) newdropdown(linktext); break; case 1 : xxx=xxx+'<option value="1|'+lurl+'">'+ltext+'</option>';break; case 2 : xxx=xxx+'<option value="2|'+scrptn+'">'+ltext+'</option>'; scrpt=scrpt+'case '+scrptn+':newtext('+lurl+');break;';scrptn++;break; case 3 : xxx=xxx+'<option value="3|'+scrptn+'">'+ltext+'</option>'; scrpt=scrpt+'case '+scrptn+':insertTagsWrapper('+lurl+');break;';scrptn++;break; case 4 : xxx=xxx+'<option value="4|'+scrptn+'">'+ltext+'</option>'; scrpt=scrpt+'case '+scrptn+':'+lurl+';break;';scrptn++;break; } //switch } //else } //w function dodropdown (aktion) { var zutun = aktion.split('|'); var was = Number(zutun[0]); var wie = zutun[1]; switch (was) { case 1 : window.open (wie); break; case 2 : _doopt (Number(wie)); break; case 3 : _doopt (Number(wie)); break; case 4 : _doopt (Number(wie)); break; } //switch } //dodropdown function newdropdown (oname) { closedropdown(); xxx = xxx+'<select size=1 onchange="dodropdown(this.value);" style="width:135px;font-size:9px;">'; if (oname > ) { xxx = xxx+'<option>'+oname+'</option>'; } indropdown = true; ind=2; } function closedropdown () { if (indropdown) xxx=xxx+'</select>'; indropdown = false; } function newtext (subj,text,wo) { //wo=1 : Text austauschen //wo=2 : Text am Ende anhängen //wo=3 : Text vorne Einfügen if (subj > "") { if (document.editform.wpSummary.value > "") document.editform.wpSummary.value += ", "; document.editform.wpSummary.value = document.editform.wpSummary.value + subj; } switch (wo) { case 1 : document.editform.wpTextbox1.value=text+'\n'; break; case 2 : document.editform.wpTextbox1.value=document.editform.wpTextbox1.value+'\n'+text;break; case 3 : document.editform.wpTextbox1.value=text+'\n'+document.editform.wpTextbox1.value;break; } document.editform.wpTextbox1.focus(); } function insertTagsWrapper(tagOpen, tagClose, sampleText, subj) { if (subj > "") { if (document.editform.wpSummary.value > "") document.editform.wpSummary.value += ", "; document.editform.wpSummary.value = document.editform.wpSummary.value + subj; } insertTags(untagEscape(tagOpen), untagEscape(tagClose), untagEscape(sampleText)) } // Krimskrams function isEven(myNumber) { return (myNumber % 2 == 0); } function isOdd(myNumber) { return (! isEven(myNumber)); } function LeadingZero(x) { return (x >= 10 || x < 0 ? "" : "0") + x; } function hasRight(right) { var specialrights = false; if (typeof wgUserGroups != 'object') return(specialrights); if (typeof wgUserGroups[0] != 'string') return(specialrights); for (i=0;i<wgUserGroups.length;i++) { if (wgUserGroups[i] == right) specialrights = true; } return(specialrights); } function quickEscape(text, esctype) { // esctype = 1 -> normal umlaut escapes // esctype = 2 -> wikisort umlaut escapes text = text.replace(/ß/g, "ss"); text = text.replace(/Á/g,"A").replace(/á/g,"a") .replace(/À/g,"A").replace(/à/g,"a") .replace(/Ă/g,"A").replace(/ă/g,"a") .replace(/Â/g,"A").replace(/â/g,"a") .replace(/Å/g,"A").replace(/å/g,"a") .replace(/Ā/g,"A").replace(/ā/g,"a") .replace(/Ć/g,"C").replace(/ć/g,"c") .replace(/Č/g,"C").replace(/č/g,"c") .replace(/Ç/g,"C").replace(/ç/g,"c") .replace(/Đ/g,"Dj").replace(/đ/g,"dj") .replace(/É/g,"E").replace(/é/g,"e") .replace(/È/g,"e").replace(/è/g,"e") .replace(/Ë/g,"e").replace(/ë/g,"e") .replace(/Ě/g,"e").replace(/ě/g,"e") .replace(/Ğ/g,"G").replace(/ğ/g,"g") .replace(/Í/g,"I").replace(/í/g,"i") .replace(/Ì/g,"I").replace(/ì/g,"i") .replace(/Ï/g,"I").replace(/ï/g,"i") .replace(/İ/g,"I").replace(/ı/g,"i") .replace(/Î/g,"I").replace(/î/g,"i") .replace(/Ł/g,"L").replace(/ł/g,"l") .replace(/Ļ/g,"L").replace(/ļ/g,"l") .replace(/Ń/g,"N").replace(/ń/g,"n") .replace(/Ñ/g,"N").replace(/ñ/g,"n") .replace(/Ň/g,"N").replace(/ň/g,"n") .replace(/Ņ/g,"N").replace(/ņ/g,"n") .replace(/Ó/g,"O").replace(/ó/g,"o") .replace(/Ò/g,"O").replace(/ò/g,"o") .replace(/Ô/g,"O").replace(/ô/g,"o") .replace(/Ø/g,"O").replace(/ø/g,"o") .replace(/Õ/g,"O").replace(/õ/g,"o") .replace(/Ő/g,"O").replace(/ő/g,"o") .replace(/Ř/g,"R").replace(/ř/g,"r") .replace(/Ś/g,"S").replace(/ś/g,"s") .replace(/Š/g,"S").replace(/š/g,"s") .replace(/Ş/g,"S").replace(/ş/g,"s") .replace(/Ţ/g,"T").replace(/ţ/g,"t") .replace(/Ú/g,"U").replace(/ú/g,"u") .replace(/Ù/g,"U").replace(/ù/g,"u") .replace(/Ű/g,"U").replace(/ű/g,"u") .replace(/Ů/g,"U").replace(/ů/g,"u") .replace(/Ý/g,"Y").replace(/ý/g,"y") .replace(/Ÿ/g,"Y").replace(/ÿ/g,"y") .replace(/Ź/g,"Z").replace(/ź/g,"z") .replace(/Ž/g,"Z").replace(/ž/g,"z") .replace(/Ż/g,"Z").replace(/ż/g,"z") .replace(/Æ/g,"Ae").replace(/æ/g,"ae") .replace(/Œ/g,"Oe").replace(/œ/g,"oe"); if (esctype == 1) { text = text.replace(/Ä/g,"Ae").replace(/ä/g,"ae") .replace(/Ö/g,"Oe").replace(/ö/g,"oe") .replace(/Ü/g,"Ue").replace(/ü/g,"ue") .replace(/Ə/g,"Ae").replace(/ə/g,"ae"); } else { text = text.replace(/Ä/g,"A").replace(/ä/g,"a") .replace(/Ö/g,"O").replace(/ö/g,"o") .replace(/Ü/g,"U").replace(/ü/g,"u") .replace(/Ə/g,"A").replace(/ə/g,"a"); } return(text); } function tagEscape(text) { text = text.replace(/'/g, "%27"); text = text.replace(/"/g, "%22"); return(text); } function untagEscape(text) { text = text.replace(/%27/g, "'"); text = text.replace(/%22/g, "\""); return(text); } function spaceEscape(text) { text = text.replace(/ /g, "+"); text = text.replace(/_/g, "+"); return(text); } // functions for getting API timestamp function getAPItimestamp(dateobject) { return (dateobject.getFullYear() * 10000000000) + ((dateobject.getMonth() + 1) * 100000000) + (dateobject.getDate() * 1000000) + (dateobject.getHours() * 10000) + (dateobject.getMinutes() * 100); } function getFutureDate() { var dateobject = new Date(); // adding 3 hours to dateobject dateobject.setTime(dateobject.getTime() + (3 * 3600 * 1000)); return (getAPItimestamp(dateobject)); } function getPastDate() { var dateobject = new Date(); // subtracting 3 days from dateobject dateobject.setTime(dateobject.getTime() - (3 * 24 * 3600 * 1000)); return (getAPItimestamp(dateobject)); } // Funktion: importPage() // zum Einbinden der Module function importPage(seite, lang) { // all languages support name='User:'; // international name, works in all wikipedias if(!lang) lang = wgContentLanguage; // new version seite = 'http://' + lang + '.wikipedia.org' + wgScriptPath + '/index.php?title=' + name + seite + '&action=raw&ctype=text/javascript&smaxage=0'; var head = document.getElementsByTagName('head').item(0); var js = document.createElement('script'); js.setAttribute('type', 'text/javascript'); js.setAttribute('src', seite); js.setAttribute('charset', 'utf-8'); head.appendChild(js); return false; // old version // document.write('<SCRIPT TYPE="text/javascript" SRC="http://' + lang // + '.wikipedia.org/w/index.php?title=' + name + seite // + '&action=raw&ctype=text/javascript&smaxage=0"><\/SCRIPT>'); } /* * 3xImport von Benutzer:Revvar * aus Benutzer:Revvar/wikibits.js und Benutzer:Revvar/monobook.js */ /** Imports a user javascript page from any wikipedia project into the actual document. @version 0.1 @date 2007/03/22 @author: based on function importPage from de:User:PDDs monobook.js, extended by de:User:Revvar @param page Name of the user page without the "user:" prefix and the ".js" appendix @param lang (optional) Language code of the corresponding wikipedia project. Default is the callers project. @return "true" on success, "false" otherwise */ function importJavascriptL(page, lang) { try { /* check the parameters and set defaults */ if(!page) throw("importJavascriptL: Missing parameter page."); if(!lang) lang = wgContentLanguage; /* create import url */ var import_url = 'http://' + lang + '.wikipedia.org' + wgScriptPath + '/index.php?title=User:' + page + '.js&action=raw&ctype=text/javascript&smaxage=0'; /* import page */ var Head = document.getElementsByTagName('head').item(0); var Script = document.createElement('script'); Script.setAttribute('type', 'text/javascript'); Script.setAttribute('src', import_url); Script.setAttribute('charset', 'utf-8'); Head.appendChild(Script); return true; } catch(e) { alert(e.message); return false; } } /** Imports a user css page from any wikipedia project into the actual document. @version 0.1.1 @date 2007/03/26 @author: based on function importPage from de:User:PDDs monobook.js, rewritten by de:User:Revvar @param page Name of the user page without the "user:" prefix and the ".css" appendix @param lang (optional) Language code of the corresponding wikipedia project. Default is the callers project. @return "true" on success, "false" otherwise */ function importCSSL(page, lang) { try { /* check the parameters and set defaults */ if(!page) throw("importCSSL: Missing parameter page."); if(!lang) lang = wgContentLanguage; /* create import url */ var import_url = 'http://' + lang + '.wikipedia.org' + wgScriptPath + '/index.php?title=User:' + page + '.css&action=raw&ctype=text/css&smaxage=0'; /* import page */ var Head = document.getElementsByTagName('head').item(0); var CSS = document.createElement('style'); CSS.setAttribute('type', 'text/css'); CSS.setAttribute('charset', 'utf-8'); CSS.appendChild(document.createTextNode("@import url(" + import_url + ");")); Head.appendChild(CSS); return true; } catch(e) { alert(e.message); return false; } } /** Asynchron import of a Javascript file from the toolserver. @version 0.1 @date 2007/04/24 @author based on function importPage from de:User:PDDs monobook.js, rewritten by de:User:Revvar @param path Path to the toolserver script without the ".js" appendix */ function import_JS_from_TS(path) { try { /* check the parameter */ if(!path) throw("import_JS_from_TS: Missing parameter path."); /* create import url */ var import_url = 'http://toolserver.org/' + path + '.js'; /* import */ setTimeout(function(e) { var Head = document.getElementsByTagName('head').item(0); var Script = document.createElement('script'); Script.setAttribute('type', 'text/javascript'); Script.setAttribute('src', import_url); Script.setAttribute('charset', 'utf-8'); Head.appendChild(Script); }, 1000); } catch(e) { alert(e.message); return; } } // ***** FOOT-Block ***** // </nowiki> <- nicht löschen!!! // ausgelagerte obligatorische Funktionen importJavascriptL('PDD/supportFuncs','de'); // Benutzer:PDD/supportFuncs.js importJavascriptL('PDD/helperFunctions','de'); // Benutzer:PDD/helperFunctions.js importJavascriptL('PDD/eintragen','de'); // Benutzer:PDD/eintragen.js importJavascriptL('PDD/alertOnChanges','de'); // Benutzer:PDD/alertOnChanges.js // obligatorisch nur für editpages if (isEdit) { importJavascriptL('PDD/wpTextReplace','de'); // Benutzer:PDD/wpTextReplace.js importJavascriptL('BLueFiSH.as/JS/replaceQuoteSigns','de'); // Benutzer:BLueFiSH.as/JS/replaceQuoteSigns.js importJavascriptL('BLueFiSH.as/JS/markup','de'); // Benutzer:BLueFiSH.as/JS/markup.js importJavascriptL('PDD/convertEntities','de'); // Benutzer:PDD/convertEntities.js importJavascriptL('Euku/persDaten','de'); // Benutzer:Euku/persDaten.js } // Und hier ist die monobook.js zu Ende.