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 *********************************** // (PDD: note to self: version auch in alert-Funktion ändern!) var version = '0.99a'; var user = wgUserName; // username wird automatisch übernommen // aktuelle Zeit ermitteln var jetzt = new Date(); // recalculate 4 furriners var jetztfixed = jetzt.getTime(); jetztfixed += (timezoneshift * 3600 * 1000); jetzt.setTime(jetztfixed); // fill date variables var Monate = new Array("", "Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"); var Monatekurz = new Array("", "Jan", "Feb", "Mär", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"); var Jahr = jetzt.getYear(); if (Jahr < 999) Jahr += 1900; var Monat = jetzt.getMonth() + 1; var Tag = jetzt.getDate(); var Stunde = jetzt.getHours(); var Minute = jetzt.getMinutes(); // fill WP date variables var WPDatum = Tag + '._' + Monate[Monat] + '_' + Jahr; var WPDatum2 = Jahr + '/' + Monate[Monat] + '/' + Tag; var WPDatum3 = Monate[Monat] + ' ' + Jahr; var WPDatum4 = Jahr + '-' + LeadingZero(Monat); var WPDatum5 = Jahr + LeadingZero(Monat) + '/'; var refDatum = Tag + '. ' + Monatekurz[Monat] + '. ' + Jahr; var refDatumlang = Tag + '. ' + Monate[Monat] + ' ' + Jahr; // Lemma-Varianten (work in progress) + redundant zu addLogsLink etc. // get page title var pagetitle = wgPageName; var spagetitle = wgTitle; // do real spaces; fix for lemmas with '&' var ptitle = pagetitle.replace(/_/g, " ").split('&').join('%26'); var sptitle = spagetitle.replace(/_/g, " ").split('&').join('%26'); // do + escaped (" " to "+") var pesctitle = spaceEscape(ptitle); var spesctitle = spaceEscape(sptitle); // lemmatitle for external lookup var spesctitlelookup = spesctitle.split('+(')[0]; // Komma-Lemma für Personen (Klammerzusätze weg etc.) var personlemma = spagetitle.split(' (')[0]; var titlesplit = personlemma.split(' '); if (titlesplit.length > 1) { personlemma = titlesplit[titlesplit.length-1] + ','; for (i=0; i<(titlesplit.length-1); i++) personlemma=personlemma + " "+titlesplit[i]; } // get URL parameters (used for page type variables) var UrlParameters = new Array (); readparams(); function readparams() { var asReadInUrlParameters; var asReadInUrlParameter; // Get URL parameters asReadInUrlParameters = location.search.substring(1, location.search.length).split("&"); for (i = 0; i < asReadInUrlParameters.length; i++) { asReadInUrlParameter = asReadInUrlParameters[i].split("="); UrlParameters[decodeURIComponent(asReadInUrlParameter[0])] = decodeURIComponent(asReadInUrlParameter[1]); } } // page type variables: namespaces var isArticle = (wgNamespaceNumber == 0); var isArticleTalk = (wgNamespaceNumber == 1); var isDatei = (wgCanonicalNamespace == "File"); var isCategory = (wgCanonicalNamespace == "Category"); var isTemplate = (wgCanonicalNamespace == "Template"); var isGeneric = false; if ((!isDatei) && (!isCategory) && (!isTemplate)) isGeneric = true; var isProject = (wgCanonicalNamespace == "Project"); /* NR Wikipedia: */ var isHelp = (wgCanonicalNamespace == "Help"); /* NR Hilfe */ // page type variables: namespace == -1 var isSpecial = (wgCanonicalNamespace == "Special"); var isRestore = (isSpecial && (wgCanonicalSpecialPageName == "Undelete")); var isContrib = (isSpecial && (wgCanonicalSpecialPageName == "Contributions")); var isDelContrib = (isSpecial && (wgCanonicalSpecialPageName == "DeletedContributions")); var isWatchlist = (isSpecial && (wgCanonicalSpecialPageName == "Watchlist")); // page type variables: namespace == -1 var isTalk = (!isSpecial && isOdd(wgNamespaceNumber)); // page type variables: other stuff var isPHP = (document.URL.indexOf('index.php') > 0); var isDiff = UrlParameters["diff"]; var isEdit = ( (UrlParameters['action']=='edit') || (UrlParameters['action']=='submit') ); var isHistory = (UrlParameters['action']=='history'); // individual page specials var isLKpage = false; if ((isProject) && (wgTitle.indexOf('Löschkandidaten') != -1)) isLKpage = true; // userpage/name stuff, vor allem für IPs var userPageOwner = ""; if (isContrib || isDelContrib) { if (UrlParameters['target']) userPageOwner = UrlParameters['target'].split('+').join('_'); else { userPageOwner = decodeURIComponent(location.href.substring(location.href.indexOf("/wiki/") + 6)).split('#')[0]; userPageOwner = userPageOwner.substring(userPageOwner.indexOf("Beiträge/") + 9); } } // page type variables: user & user discussion lumped together var isUserpage = ( (wgCanonicalNamespace == "User") || (wgCanonicalNamespace == "User_talk") ); var isUserMainpage = false; if (isUserpage) if (wgTitle == wgTitle.split("/")[0]) { isUserMainpage = true; userPageOwner = wgTitle; } // handelt es sich um eine IP? var isIPUser = false; if (userPageOwner != "") if (userPageOwner.match(/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/) != null) if ((userPageOwner.split(".")[0] > 1) && (userPageOwner.split(".")[0] < 255)) isIPUser = true; // Admin & editor functions var adminflag = false; if (hasRight("sysop")) adminflag = true; var editorflag = false; if (hasRight("editor")) editorflag = true; // Browserkram var userbrowser = "Standard"; if (navigator.userAgent.indexOf("Opera") > -1) userbrowser = "Opera"; if (navigator.userAgent.indexOf("Safari") > -1) userbrowser = "Standard"; if (navigator.userAgent.indexOf("MSIE") > -1) { userbrowser = "IE"; if (navigator.userAgent.indexOf("MSIE 7") > -1) userbrowser = "IE7"; } // force Browserswitches if ((userbrowser == "IE") || (userbrowser == "IE7")) { godmodelight = false; showredundantlinks = false; } if (userbrowser == "Opera") { godmodelight = false; } /* * 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)) } // ***** 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.