Benutzer:Flammingo/monobook.js

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Hinweis: Leere nach dem Veröffentlichen den Browser-Cache, um die Änderungen sehen zu können.

  • Firefox/Safari: Umschalttaste drücken und gleichzeitig Aktualisieren anklicken oder entweder Strg+F5 oder Strg+R (⌘+R auf dem Mac) drücken
  • Google Chrome: Umschalttaste+Strg+R (⌘+Umschalttaste+R auf dem Mac) drücken
  • Internet Explorer/Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
  • Opera: Strg+F5
 // [[Wikipedia:Skin]]

 var usersignature = '\~\~\~\~';
 // (Signaturvariante 2: Datum kleiner, kein Zeilenumbruch nach dem Leerzeichen)
 // var usersignature = '<span style=\"white-space:nowrap;\">-- \~\~\~ <small>\~\~\~\~\~<\/small><\/span>\n';
 // (Wiki-Standard-Signatur, bitte das Leerzeichen nach den zwei Strichen beachten)
 // var usersignature = '-- \~\~\~\~';
 // </nowiki>
 
 // Originalskript ursprünglich gefunden bei [[:en:User:Angela]]
 // bearbeitet von [[Benutzer:Maximus Rex]]
 // bearbeitet von [[Benutzer:SirJective]]
 // bearbeitet von [[Benutzer:BLueFiSH.as]]
 // bearbeitet von [[Benutzer:Littl]] (2005-09-07)
 // bearbeitet von [[Benutzer:Schwalbe]] (2006-02-03)
 // bearbeitet wieder von [[Benutzer:Littl]] (2006-02-21)
 // bearbeitet von [[Benutzer:PDD]] (ab 2006-04-22)
 
 // aktuelle Zeit ermitteln
 var jetzt = new Date();
 // recalculate 4 furriners
 var jetztfixed = jetzt.getTime();
 var timezoneshift = 0;          // Unterschied lokale Zeit zur Systemzeit (bleibt für Mitteleuropäer 0)
 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 Jahr = jetzt.getYear();
 if (Jahr < 999)  Jahr += 1900;
 var Monat = jetzt.getMonth() + 1;
 var Tag = jetzt.getDate();
 // 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);
 
 // 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
 var pesctitle = ptitle.split(' ').join('+');
 var spesctitle = sptitle.split(' ').join('+');
 // Komma-Lemma für Personen
 var personlemma = spagetitle;
 var titlesplit = spagetitle.split(' ');
 if (titlesplit.length > 1) {
    personlemma = titlesplit[titlesplit.length-1] + ',';
    for (i=0; i<(titlesplit.length-1); i++)
        personlemma=personlemma + " "+titlesplit[i];
 }
 var escpersonlemma = personlemma.replace(/Ä/g, "A").replace(/Ö/g, "O").replace(/Ü/g, "U").replace(/ä/g, "a").replace(/ö/g, "o").replace(/ü/g, "u").replace(/ß/g, "ss");
 
 // 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       = (mw.config.get('wgNamespaceNumber') == 0);
 var isArticleTalk   = (mw.config.get('wgNamespaceNumber') == 1);
 var isBild          = (wgCanonicalNamespace == "Image");
 var isCategory      = (wgCanonicalNamespace == "Category");
 var isTemplate      = (wgCanonicalNamespace == "Template");
 var isGeneric       = false;
 if ((!isBild) && (!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 isWatchlist = (isSpecial && (wgCanonicalSpecialPageName == "Watchlist"));
 
 // page type variables: namespace == -1
 var isTalk = (!isSpecial && isOdd(mw.config.get('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');
 
 // userpage/name stuff, vor allem für IPs
 var userPageOwner = "";
 if (isContrib) {
   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 functions
 var adminflag = false;
 if (isAdmin()) adminflag = true;

 resp = loadFile("User:"+ wgUserName + "/monobook.config.js"); // die Individuellen Einstellungen laden
 if (resp)
     eval(resp);
 else
     throw 'Konfiguration konnte nicht geladen werden. Breche monobook.js ab.';
 importModules();
 buildQuickbar(); // Standardeinstellungen ausführen
 document.write(Quickbar);
 
 if (typeof(version) == 'undefined') var version = "?";
 if (!isEdit || zeigeversion || isPHP) {
  document.write(
      '<div align=right>',
      '<a href="#" onclick="configMonobook()" title="Einstellungen der Monobook.js">Einstell.</a>&nbsp;&nbsp;',
    (zeigeversion) ?
      ('<a href="#" onclick="amIuptodate()" title="Versionscheck">' + (adminflag ? 'A/' : '') + version + '</a>&nbsp;&nbsp;')
         : '',
 
    (!isEdit) ?
      ('<input type="checkbox" id="reloadme" name="reloadme" onchange="setReload()" title="Seite alle ' + (timeout/1000) + ' s neu laden?"></input>&nbsp;&nbsp;')
         : '&nbsp;',
 
      '<a href="/w/index.php?title=Spezial%3APrefixindex&from=',wgUserName,
          '&namespace=2" target="', qbtarget, '" title="Meine Seiten im Benutzernamensraum">',
          (wgUserName.split(' ')[0].length < 10) ? wgUserName.split(' ')[0] : 'MyPages',
      '</a>',
 
      '</div>');
 }                
 document.write(xxx,'</div>');
 
 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>&nbsp; ';break;
    case 2 : xxx=xxx+'<a href="#" onclick="newtext('+ lurl +')" title="'+title+'">'+linktext+'</a>&nbsp; ';break;   
    case 3 : xxx=xxx+'<a href="#" onclick="insertTagsWrapper('+ lurl +')" title="'+title+'">'+linktext+'</a>&nbsp; ';break;        
    case 4 : xxx=xxx+'<a href="#" onclick="'+ lurl +'" title="'+title+'">'+linktext+'</a>&nbsp; ';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(tagOpen, tagClose, 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 isAdmin() {
   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] == "sysop") specialrights = true;
   }
   return(specialrights); 
 }
 
 // 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=2678400&dontcountme=s';
 
    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=2678400&dontcountme=s"><\/SCRIPT>');
 }
 
 /**
 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:PDD]]s 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=2678400&dontcountme=s';
 
        /* 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:PDD]]s 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=2678400&dontcountme=s';
 
        /* 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;
    }
 }
 
 /*
  * Lade individuelle Einstellungen, wenn vorhanden
  */
 function loadFile(file) {
     // load monobook.config.js via AJAX
     // Mit Hilfe von: [[Benutzer:MrMage]]
     xmlHttp = null;
     if (typeof XMLHttpRequest != 'undefined') { xmlHttp = new XMLHttpRequest(); }
     if (!xmlHttp) {
        try { xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); }
        catch(e) {
            try { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); }
            catch(e) { throw 'Konnte keinen XMLHttpRequest erstellen. Breche monobook.js ab.'; }
        }
     }
     if (xmlHttp) {
        xmlHttp.open('GET', 'http://de.wikipedia.org/w/index.php?title='+ file +'&action=raw&ctype=text/javascript&dontcountme=s', false);
        xmlHttp.send(null);
        return (xmlHttp.responseText);
     }
     return false;
 }
 
 // ***** FOOT-Block *****
 // </nowiki> <- nicht löschen!!!
 function importModules() {
	 // ausgelagerte obligatorische Funktionen
     importJavascriptL('PDD/helperFunctions','de'); // [[Benutzer:PDD/helperFunctions.js]]
     importJavascriptL('PDD/eintragen','de'); // [[Benutzer:PDD/eintragen.js]]
     importJavascriptL('PDD/alertOnChanges','de'); // [[Benutzer:PDD/alertOnChanges.js]]
     
     // semi-obligatorisch nur für diffpages
     if (diffwidth && isDiff) {
        // PDD: keine der beiden Versionen bisher getestet; weiß also nicht, welche besser funktioniert
        importJavascriptL('Olliminatore/fixdiffwidth','de'); // [[Benutzer:Olliminatore/fixdiffwidth.js]]
        // importPage('BLueFiSH.as/JS/fixdiffwidth'); // [[Benutzer:BLueFiSH.as/JS/fixdiffwidth]]
     }
     
     // obligatorisch nur für editpages
     if (isEdit) {
        importJavascriptL('PDD/wpTextReplace','de'); // [[Benutzer:PDD/wpTextReplace.js]]
        importJavascriptL('PDD/replaceQuoteSigns','de'); // [[Benutzer:PDD/replaceQuoteSigns.js]]
        // importJavascriptL('PDD/replaceQuoteSigns2','de'); // [[Benutzer:PDD/replaceQuoteSigns2.js]]
        importPage('BLueFiSH.as/JS/markup'); // [[Benutzer:BLueFiSH.as/JS/markup]]
        importJavascriptL('Spongo/persDaten','de'); // [[Benutzer:Spongo/persDaten.js]]
     }
     
     // ausgelagerte optionale Funktionen (Autoload)
     
     // revert/loglink-Funktionen: möglichst früh einbinden
     // Revert godmode-light
     if (godmodelight && !adminflag && !isEdit && !(isSpecial && !isContrib)) {
         importJavascriptL('PDD/godmode-light','de'); // [[Benutzer:PDD/godmode-light.js]]
         // importJavascriptL('Olliminatore/godmode-light','en');  // [[:en:User:Olliminatore/godmode-light.js]]
     }
     // Revert addEditAndRevertLinks
     if (!(!aerhistory && isHistory) && !isEdit) {
        if (editlinkoldversion || revertwithreason)
           importJavascriptL('PDD/addEditAndRevertLinks','de'); // [[Benutzer:PDD/addEditAndRevertLinks.js]]
     }
     // LogLinks addLogsLink
     if (addlogslink && !isSpecial) importJavascriptL('PDD/addLogsLink','de'); // [[Benutzer:PDD/addLogsLink.js]]
     
     // jetzt alles andere, was optional ist
     if (!isSpecial)
        if (addeditintro || addpurge) importJavascriptL('PDD/modifyCA','de'); // [[Benutzer:PDD/modifyCA.js]]
     // changeBeschriftungen *nach* modifyCA.js (!)
     if (beschriftungen) importJavascriptL('PDD/changeBeschriftungen','de'); // [[Benutzer:PDD/changeBeschriftungen.js]]
     if (changeszlig) importJavascriptL('PDD/changeSZtoSS','de'); // [[Benutzer:PDD/changeSZtoSS.js]]
     if (rechtschreibpruefung && !isSpecial) {
        DontAutorunRP = !AutorunRP;
        importPage('APPER/RP/js'); // [[Benutzer:APPER/RP/js]]
     }
     if (ippvandalmark && !isEdit) importPage('APPER/IP-Patrol/js'); // [[Benutzer:APPER/IP-Patrol/js]]
     if (showredundantlinks && !isSpecial)
        importJavascriptL('PDD/showRedundantLinks','de'); // [[Benutzer:PDD/showRedundantLinks.js]]
     // Signierfunktionen
     if (isEdit && !isArticle) {
        if (signing) importJavascriptL('Olliminatore/signing','de'); // [[Benutzer:Olliminatore/signing.js]]
        if (unsigning) importJavascriptL('Olliminatore/unsigned','de');  // [[Benutzer:Olliminatore/unsigned.js]]
     }
     
     // extended search & replace feature
     if (isEdit && searchbox) importJavascriptL('Zocky/SearchBox','en');  // [[:en:User:Zocky/SearchBox.js]]
     
     // Portal- und Redaktionshinweis
     if (hinweis) importJavascriptL('DerHexer/hinweise','de'); // [[Benutzer:DerHexer/hinweise.js]]
     
     // Löschgründe ergänzen
     if (adminflag && delreasons && !isSpecial)
        importJavascriptL('DerHexer/delete','de'); // [[Benutzer:DerHexer/delete.js]]
     
     // Syntax highlighter
     if (js_highlight) importJavascriptL('Olliminatore/shCore','en');  // [[:en:User:Olliminatore/shCore.js]]
     
     // wikiminiatlas: Atlas bei Georeferenzen
     if (miniatlas && !isSpecial)
        importJavascriptL('Dschwen/wikiminiatlas2','de');  // [[Benutzer:Dschwen/wikiminiatlas2.js]]
     
     // coordinates: Generierung der Koordinaten-Vorlage
     if (coordinates && isEdit) importJavascriptL('Dschwen/coordinates','de');  // [[Benutzer:Dschwen/coordinates.js]]
     
     // showreftoggle
     if (reftoggle && !isSpecial)
        importJavascriptL('Malte_Schierholz/reftoggle','de');  // [[Benutzer:Malte Schierholz/reftoggle.js]]
     
     // setGallery
     if (newgallery && !isSpecial)
        importJavascriptL('Olliminatore/newgallery','de'); // [[Benutzer:Olliminatore/newgallery.js]]
     
     // custom toolbar buttons
     if (customtoolbar)
        importJavascriptL('Olliminatore/customToolbar','de'); // [[Benutzer:Olliminatore/customToolbar.js]]
     
     // quickedit
     if (qeEnabled) importJavascriptL('ASM/quickedit','de'); // [[Benutzer:ASM/quickedit.js]]
     
     // RIPE tooltips
     if (ripe && !isEdit) importJavascriptL('PDD/tooltips','de'); // [[Benutzer:PDD/tooltips.js]]
     
     // dellinknowcommons
     if (dellinknowcommons && adminflag && isBild)
        importJavascriptL('PDD/dellink-nc','de'); // [[Benutzer:PDD/dellink-nc.js]]
     
     // Lupin's popups
     if (lupinpopups) importJavascriptL('Lupin/popups','en');   // [[:en:User:Lupin/popups.js]]
     
     // Markierskripte ganz zum Schluss einbinden, da sie innerHTML verändern
     if (!(!mawatchlist && isWatchlist) && !(!macontribs && isContrib)) {
        if (markadmins || markexadmins || markcomadmins)
           importJavascriptL('PDD/markAdmins','de'); // [[Benutzer:PDD/markAdmins.js]]
     }
     if (!(!muwatchlist && isWatchlist) && !(!mucontribs && isContrib)) {
        if (markutf8)
           importJavascriptL('PDD/markUTF8','de'); // [[Benutzer:PDD/markUTF8.js]]
     }
	 importPage('Spongo/configMonobook.js'); // [[Benutzer:Spongo/configMonobook.js]]
 }
 // Und hier ist die monobook.js zu Ende.