Benutzer:Augiasstallputzer/monobook.js

aus Wikipedia, der freien Enzyklopädie

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
 // Fragen und Antworten findest du hier: [[Benutzer:PDD/monobook FAQ]]
 // <nowiki> {{subst:Benutzer:PDD/monobook.js.DLWS}} </nowiki> <--- diese Zeile bitte nicht löschen

 // *************** SETUP Anfang **********************************
 // Funktionen im Quickbar (monobook.js)
 
 var zeigeversion = false;  // monobook-Version anzeigen?
 var zeigehilfe = true;     // kurze Hilfetexte beim überfahren mit der Maus anzeigen?
 var qbnewpage = false;     // sollen Seiten aus dem QuickBar im neuen Fenster aufgerufen werden?
 var usedropdown = false;   // Wenn keine Dropdowns gewünscht sind, hier false eintragen!
 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 timeout = 60000;       // 60 Sekunden auf das Neuladen der Seite warten
 var timezoneshift = 0;     // Unterschied lokale Zeit zur Systemzeit (bleibt für Mitteleuropa 0)
 var debugme = false;       // Debug-Modus?
 
 // systemweite Default-Optionen aus [[MediaWiki:Monobook.js]]
 NavigationBarShowDefault = 0;    // Navi-Leisten: alle einklappen == 0; alle ausklappen == 15
 var oldEditsectionLinks = false; // "Bearbeiten"-Links bei Abschnitten ganz nach rechts?
 var enable_linkFA = false;       // "Featured Articles" in fremdsprachigen Wikipedias markieren?
 
 // <nowiki>
 // Modul: newgallery.js
 var newgallery = true;           // Anzahl Bilder/Zeile in Galerien verändern?
 var gallery_len = 5;             // Breite der Galerien
// var bCategory = false;            // nur in Kategorien?
// var bArticle = false;             // (oder/und) nur in Artikeln?

 // Modul: changeBeschriftungen.js
 var beschriftungen = true;       // kosmetische Änderungen an der MediaWiki-Oberfläche?
 var markhandsoff   = false;      // fremde Benutzerseiten grafisch markieren?
 var markbecareful  = false;      // verschiedene Buttons rot markieren?

 // Beschriftungen: personal toolbar
 var cbmytalk    = "Meine Diskussion";
 var cbprefs     = "Einstellungen";
 var cbwatchlist = "Beobachtungsliste";
 var cbmyconts   = "Meine Beiträge";
 var cblogout    = "Logout";


 // Beschriftungen: current article
 var cbedit      = "Bearbeiten";
 var cbhistory   = "Versionen";
 var cbmove      = "Verschieben";
 var cbwatch     = "Beobachten";
 var cbunwatch   = "Ignorieren";

 // Beschriftungen: tools
 var cbwhatlinkshere = "Links a. d. Seite";
 var cblinked        =  "Verlinkte Änderungen";
 var cbmail          = "E-Mail senden";
 var cbupload        = "Bild hochladen";
 var cbprint         = "Druckversion";
 var cbblock         = "User sperren";

 // Beschriftungen: portlets
 var cblang = "Interwiki";
 
 // Modul: changeSZtoSS.js
 var changeszlig = false;    // "ß" in "ss" ändern (nach Schweizer Rechtschreibung)?
 
 // Modul: eintragen.js
 var autosave          = false;            // automatisches Speichern von QS/LA/SLA/BildLA/Vandal-Einträgen?
 var signogrundparam   = false;            // auf true setzen, wenn Signatur das SLA-Eintragen behindert
 var emptylinesafterhr = 1;                // Leerzeilen zwischen LA-Baustein und Artikeltext
 var defaultSLA        = "Kein Artikel";   // Standard-SLA-Grund
 var defaultVandal     = "vandaliert in [[]]";  // Standardgrund für Vandalismusmeldung
 
 // Modul: hinweise.js
 var hinweis = false;            // Portal- und Redaktionshinweis verwenden?
 
 // Modul: delete.js
 var delreasons = false;         // Löschgründe ergänzen?
 
 // Modul: godmode-light.js
 var godmodelight = false;        // "Zurücksetzen" einblenden?
 var godmodenewstyle = false;     // neuer Rollback-Kommentartext?
 
 // Modul: addEditAndRevertLinks.js
 var editlinkoldversion = false;  // Bearbeiten-Link für ältere Versionen anzeigen?
 var editlinktxt = "Edit";        // Text des Edit-Links
 var revertwithreason = false;    // Revert-Link mit Grund-Eingabe anzeigen?
 var revlinktxt = "rev";          // Text des Revert-Links
 var revlinkshowuser = false;     // beim Revertieren über (Rev)-Link letzten Benutzer angeben?
 var rvisminor = false;           // sind Reverts mit "(rev)"-Link Minor-Changes?
 var aearldefault = "Unfug";      // Defaultgrund beim Revertieren
 var aerhistory = false;          // Links auch in der Versionsgeschichte?
 var aearlhere = false;           // Revertaktion im selben Browserfenster?
 
 // Modul: addLogsLink.js
 var addlogslink = false;           // Zusatzlinks zu Spezial:Log einfügen?
 var pagelogtext = "Page:Log";      // Text des Seitenlogbuch-Links
 var userlogtext1 = "User:Log:1";   // Texte der beiden Benutzerlog-Links
 var userlogtext2 = "User:Log:2";   // Texte der beiden Benutzerlog-Links
 
 var addusercontriblink = true;             // auf Benutzerseiten Link auf Contributions?
 var usercontribtext =   "User:Contribs";    // Text des Contributions-Links ("Benutzerbeiträge")
 var userstatstext =     "User:Stats";       // Text des Links auf Benutzerstatistik
 var userstimmrechttext = "User:Stimmrecht"; // Text des Links auf Stimmrechtcheck
 
 var adduserarticlelink = false;             // auf Benutzerseiten Link auf erstellte Artikel?
 var userarticletext = "User:Artikel";       // Text des Links auf erstellte Artikel
 
 var addbrowselink     = false;     // auf allen Seiten Link zum alphabetischen Browsen?
  var browseuserprefix = false;     // Auf Nutzerseiten  alle Unterseiten des Nutzers zeigen?
  var browsetext       = "Browse";  // Text des Links auf Browsing-Seite
 
 var addiusagelink = true;           // bei Bildern Link zur Bildnutzung (Commons)?
  var imgusagetext = "IMG:C-Usage";  // Text des Links auf Bildnutzung
 
 // Modul: modifyCA.js
 var addeditintro   = true;                // TAB zum Editieren des ersten Abschnitts hinzufügen?
  var editintrotext = "Intro Bearbeiten";  // Beschriftung des TABs
 var addpurge       = false;               // TAB zum Purgen (Servercache-Updaten) einer Seite hinzufügen?
  var purgetext     = "Purge";             // Beschriftung des TABs
 
 // Modul: markAdmins.js
 var markadmins = true;         // Admins besonders hervorheben?
 var marksubpages = true;       // auch Links auf Admin-Unterseiten markieren?
 var mawatchlist = true;        // auch auf der Beobachtungsliste?
 var macontribs = true;         // auch auf den Benutzerbeiträgen?
 var markatxt = "A";            // Markierung für Admins
 var markrenatxt = "A-Ren";     // Markierung für umbenannte Admins
 var markbureautxt = "B";       // Markierung für Bürokraten
 var markstewtxt = "S";         // Markierung für Stewards
 var markcomadmins = true;      // Commons-Admins besonders hervorheben?
 var markcomatxt = "Com-A";     // Markierung für Commons-Admins
 var markexadmins = true;       // Ex-Admins besonders hervorheben?
 var markexatxt = "Ex-A";       // Markierung für Ex-Admins
 var markexbureautxt = "Ex-B";  // Markierung für Ex-Bürokraten
 
 // Modul: markUTF8.js
 var markutf8 = true;           // Sonderzeichenbenutzernamen besonders hervorheben?
 var muwatchlist = true;        // auch auf der Beobachtungsliste?
 var mucontribs = true;         // auch auf den Benutzerbeiträgen?
 var markutf8txt = "UTF8!";     // Markierung für UTF8-kodierte Nutzernamen etc.
 var markltrtxt = "UTF8:LTR!";  // Markierung für Lemmata mit LTR-Mark
 
 // Modul: reftoggle.js
 var reftoggle = false;         // "Quellen verstecken"/"Quellen anzeigen"-Schalter für Fußnoten?
 
 // Modul: newgallery.js
 var newgallery = false;          // Anzahl Bilder/Zeile in Galerien verändern?
 var gallery_len = 5;             // Breite der Galerien
// var bCategory = false;         // nur Kategorien?
// var bArticle = true;           // in Artikeln?
 
 // Modul: quickedit.js
 var qeEnabled = false;           // QuickEdit aktivieren?
 var qeEnableSection0 = true;     // QuickEdit-Link für Abschnitt 0 (Einleitung)?
 var qeEnableAccessKeys = false;  // Tastaturbefehle aktivieren?
 var qeTextboxHeight = 20;        // Höhe des Textfelds
 
 // Modul: APPERs RP
 var rechtschreibpruefung = false;  // Rechtschreibprüfung aktivieren?
 var AutorunRP = false;             // false = RP durch Anklicken; true = automatische RP
 
 // Modul: APPERs IP-Patrol Vandalenmarkierer
 var ippvandalmark = false;   // IP-Patrol-Vandalenmarkierung aktivieren?
 
 // Modul: fixdiffwidth
 var diffwidth = true;        // immer gleiche Breite der vergleichenden Versionen (diff.table)?
 var difffontsize = '85%';    // Fontgröße in der Diff-Tabelle
 
 // Modul: wikiminiatlas2.js
 var miniatlas = false;       // WikiMiniAtlas anschalten?
 
 // Modul: coordinates.js
 // (für dieses Modul im CSS #editpage-copywarn nicht ausblenden!)
 var coordinates = false;     // Koordinate_Artikel in Editfenster generierbar?
 
 // Modul: unsigned.js
 var unsigning = false;       // Einfügen von Unsigned bei unsignierten Beiträgen auf D-Seiten?
 var ssubst =  true;          // unsigniert-Baustein mit subst einfügen?
 
 // Modul: signing.js
 var signing = false;         // automatische Unterschrift auf Diskussionsseiten?

 // Liste der Nicht-Diskussionsseiten, die ebenfalls unterschrieben werden sollen:
 var regpages = new Array(':Verbesserungsvorschläge', ':Löschkandidaten', ':Adminkandidaturen', ':Qualitätssicherung', ':Fragen_zur_Wikipedia', ':Meinungsbilder', ':Review', ':Bilderwünsche',':Kandidaten');
 
 // Modul: SearchBox.js
 var searchbox = false;       // erweitertes suchen/ersetzen
 
 // </nowiki>
 // Modul: customToolbar.js
 var customtoolbar = false;   // mehr Buttons in der Symbolleiste?
 // Anzahl und Reihenfolge wählbar (siehe: [[Benutzer:Olliminatore/Extra-Editbuttons]])
 var customEditButtons   = "A,A3,B,C,E,F,G,H,I,I1,I2,J1,K,M,O,P,PO,Q,R,R3,S,T,T1,U,V,W,X,Y1,Y2,VP,VC,VN,SM";
 // zu entfernende Standard-Edit buttons (0...10)
 // var rmEditButtons    = [6,7,10]; // Standardbutton entfernen
 
 // Modul: popups.js (Lupin, Navpop)
  var lupinpopups  =  false;        // Popup-Modul einbinden?
  // Optionen für Lupin-Popups
  // (ausführliche Liste siehe [[Wikipedia:Helferlein/Navigation-Popups#Optionen]] bzw.
  // aktueller und auf englisch [[:en:Wikipedia:Tools/Navigation popups#Options]])
  popupDelay       = 1;           //Popupverzögerung in s (DEFAULT: 0.5)
  simplePopups     = false;     //auf true setzen, wenn Laden im Hintergrund unerwünscht (Def.:false)
  popupStructure   = 'menus';    // Aussehen der Popups         (DEFAULT: 'shortmenus')
  popupActionsMenu = false;    // separates "actions"-Menu    (DEFAULT: true)
  popupImages      = true;          // Bilder im Popup erwünscht?  (DEFAULT: true)
  popupSubpopups   = true;       // Popups für Links innerhalb von Popups generieren? (Def.: true)
  popupAdminLinks  = false;     // Funktionen, die nur Admins nutzen können (DEFAULT: false)
  //nächste Option sollte bei Verwendung von showRedundantLinks.js *nicht* auf true gesetzt werden
  removeTitles              = false;    // Originaltitel der Links nach popups verschieben? (DEFAULT: true)
  popupFixRedirs            = false;    // Links auf Redirects korrigieren? (DEFAULT: false)
 popupWatchRedirredPages    = false;    // korrigierte Seite beobachten? (DEFAULT: null)
 popupRedirAutoClick        = 'wpSave'; // ausgeführte Aktion beim Korrigieren von Redirects (DEFAULT: 'wpDiff')
 popupRedlinkRemoval        = false;    // Rote Links entfernen? (DEFAULT: false)
 popupFixDabs               = true;     // Links auf BKLs korrigieren? (DEFAULT: false)
 popupWatchDisambiggedPages = false;    // korrigierte Seite beobachten? (DEFAULT: null)
 popupLastModified          = true;     // Zeit seit letzter Änderung anzeigen? (DEFAULT: true)
 popupDiffDates             = true;     // Änderungsdaten bei Diffs anzeigen? (DEFAULT: true)
 popupOnlyArticleLinks      = true;     // Popups nur für Artikel-Links (DEFAULT: true)
 imagePopupsForImages       = false;    // Bildvorschau Mouseover? (DEFAULT: true)
 popupMaxWidth              = 400;      // Maximalbreite des Popup-Fensters (DEFAULT: 350)
 popupRevertSummaryPrompt   = true;     // Prompt zum Ändern des Revert-Kommentars? (DEFAULT: false)
 popupMaxPreviewSentences   = 2;        // Anzahl der angezeigten Sätze in der Vorschau (DEFAULT: 4)
 // <nowiki>
 // Link auf Popups zu Messages hinzufügen?
 addpopuplink = true;
  // deutsche Texte für Lupin
 popupFixDabsSummary                 = "Ersetze BKL-Seite [[%s]] durch [[%s]]" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : "");
 popupExtendedRevertSummary          = "Revert auf Version vom %s von Benutzer %s, oldid %s" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : "");
 popupRevertSummary                  = "Revert auf Version %s" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : "");
 popupRevertToPreviousSummary        = "Revert auf Vorgängerversion der Version %s" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : "");
 popupQueriedRevertSummary           = "Revert auf Version $1 vom $2 von $3" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : "");
 popupQueriedRevertToPreviousSummary = "Revert auf Vorgängerversion der Version $1 vom $2 von $3" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : "");
 popupFixRedirsSummary               = "Ersetze Redirect [[%s]] durch [[%s]]" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : "");
 popupRedlinkSummary                 = "Entferne Link auf leere Seite [[%s]]" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : "");
 popupRmDabLinkSummary               = "Entferne Link auf BKL-Seite [[%s]]" + (addpopuplink ? " mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]" : "");
 
 // weitere Module
 var showredundantlinks = false;     // zeigt doppelte Links an
 var ripe               = false;     // Ripe - Tooltips?
 var js_highlight       = false;     // javascript-code farbig hervorheben  (.js and pre-tags)
 
 // special rights options
 var dellinknowcommons  = true;

 // Quickbar einpassen
 var releasequickbar = false;
 

 
 // **************** SETUP Ende ***********************************
 
 // (PDD: note to self: version auch in alert-Funktion ändern!)
 var version  = 'P098k';
 
 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 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");
 
 // 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;
 
 /*
  * ab hier wird der Quickbar (der Kasten oben links) zusammengebaut
  *
  * zuerst die allgemeinen Variablen (hier bitte nix ändern!)
  */

/* var Quickbar = '<div class="pBody noprint" id="p-quickbar" style=" position:absolute; top:5px; left:0px; width:130px; z-index:10;">'; */
 // optional:  opacity:0.9;

 var Quickbar = '<div class="pBody noprint" id="p-quickbar" style=" position:absolute; top:5px; left:0px; width:130px; z-index:10;">';

 var xxx      = '';
 
 var trenner='<hr />';
 var br     ='<br />';
 
 var qbtarget = '_self';
 if (qbnewpage) qbtarget = '_blank';
 
 var dropdown = usedropdown;
 var scrpt    = '';
 var scrptn   = 0;
 var indropdown;
 var ind;
 
 /*
  * Quickbar-Zusammenbau, Teil 1:
  *
  * zuerst die Reihenfolge der einzelnen Abschnitte:
  */
 
 function buildQuickbar() {
    if (!isEdit) qbEigene();
    if (!isEdit) qbBot();
    qbWPIntern();
    if (!isEdit) qbWartung();
    if (!isEdit) qbAktuell();
//    qbToolserver();
//    qbExternTools();
 
    // ab hier keine Dropdowns mehr
    closedropdown();
    dropdown=false;
 
    // die folgenden werden nur im Edit-Modus eingeblendet
    qbEditTags();
    qbArticleTemps();
//    qbMarkupTools();
//    qbImageTemps();
//    qbUsertalkTemps();
 
    // Automatisches Bausteinsetzen
//     qbAutoTemps();
 }
 
 
  /*
  * Quickbar-Zusammenbau, Teil 2:
  *
  * die Belegung der einzelnen Abschnitte
  */
   /*
    w (1,'','',qbtarget,'');
   */
 
  function qbEigene() {
    w (0,trenner,'Eigenes','Eigenes');
    w (1,'/wiki/Benutzer:Augiasstallputzer/Index','INDEX',qbtarget,'Mein Index');
    w (1,'/wiki/Benutzer:Augiasstallputzer/monobook.css','CSS-Datei',qbtarget,'Meine CSS-Datei');
    w (1,'/wiki/Benutzer:Augiasstallputzer/monobook.js','JS-Datei',qbtarget,'Meine JS-Datei');
    w (1,'/w/index.php?title=Spezial%3APr%C3%A4fixindex&from=Augiasstallputzer&namespace=2','Eigenes',qbtarget,'eigene Seiten');
  }

  function qbBot() {
    w (0,trenner,'Bot','Botseiten');
    w (1,'/wiki/Benutzer:PortalBot','PortalBot',qbtarget,'Mein Bot');
    w (1,'/wiki/Spezial:Listusers/Bot','Botverzeichnis',qbtarget,'Botliste');
    w (1,'/wiki/Wikipedia:Bots/Anfragen','Anfragen',qbtarget,'Bot-Anfragen');
    w (1,'/w/index.php?title=Spezial:Beitr%C3%A4ge&limit=100&target=PortalBot','Bot-Edits','Botaktionen');
  }

  function qbWPIntern() {
    w (0,trenner,'Wikipedia','Wikipedia');
    // w (1,'/wiki/Wikipedia:Textbausteine','Textbausteine',qbtarget,'');
    // w (1,'/wiki/Kategorie:Vorlage:Baustein','Bausteinkategorie',qbtarget,'');
    // w (1,'/wiki/Hilfe:Index','Hilfe-Index',qbtarget,'');
    w (1,'/wiki/Hilfe:Sonderzeichenreferenz','Sonderzeichenliste',qbtarget,'');
    w (1,'/wiki/Hilfe:Variablen','Variablen',qbtarget,'');
    w (1,'/wiki/Hilfe:Vorlagenprogrammierung','Programmierung',qbtarget,'');
    // w (1,'/wiki/Spezial:Linksearch','Weblink-Suche',qbtarget,'');
    // w (1,'/wiki/Spezial:Search','Suche',qbtarget,'');
    // w (1,'/wiki/Spezial:Disambiguations','BKL-Seiten',qbtarget,'');
    // w (1,'/wiki/Spezial:Listusers','Benutzerverzeichnis',qbtarget,'');
  }
 
  function qbWartung() {
    w (0,trenner,'Wartung','Wartung');
    w (1,"http://meta.wikimedia.org/wiki/Spam_blacklist",'Spam blacklist',qbtarget,'');
    // w (1,'/wiki/Wikipedia:Löschkandidaten/heute','Löschkandidaten heute',qbtarget,'');
    // w (1,'/wiki/Wikipedia:Löschregeln','WP:LR',qbtarget,'Löschregeln');
    // w (1,'/wiki/Kategorie:Wikipedia:Schnelllöschen','SLK',qbtarget,'Schnelllöschkandidaten');
    // w (1,'/wiki/Wikipedia:Löschkandidaten','LK',qbtarget,'Löschkandidaten');
    // w (1,'/wiki/Wikipedia:Löschkandidaten/'+WPDatum,'LKH',qbtarget,'Löschkandidaten (heute)');
    // w (1,'/wiki/Wikipedia:Löschkandidaten/Bilder/'+WPDatum,'BildLK',qbtarget,'Löschkandidaten (Bilder)');
    // w (1,'/wiki/Wikipedia:WikiProjekt_Kategorien/Diskussionen/'+WPDatum2,'KatLK',qbtarget,'Löschkandidaten (Kategorien)');
    // w (1,'/wiki/Wikipedia:Versionslöschungen','LKV',qbtarget,'Versionslöschungen');
    // w (1,'/wiki/Wikipedia:Löschprüfung','LP',qbtarget,'Löschprüfung');
    // w (1,'/wiki/Wikipedia:Entsperrwünsche','EW',qbtarget,'Entsperrwünsche');
 		// w (1,'/wiki/Wikipedia:Qualitätssicherung/'+WPDatum,'QS',qbtarget,'Qualitätssicherung');
    // w (1,'/wiki/Wikipedia:Redundanz/'+WPDatum3,'RED',qbtarget,'Redundanz');
    // w (1,'/wiki/Kategorie:Wikipedia:Unverständlich','Wirr',qbtarget,'Unverständlich');
    // w (1,'/wiki/Wikipedia:Löschkandidaten/Urheberrechtsverletzungen','URV',qbtarget,'Löschkandidaten (URVs)');
    // w (1,'/wiki/Wikipedia:Kandidaten für exzellente Artikel','KEA',qbtarget,'Kandidaten für exzellente Artikel');
    // w (1,'/wiki/Wikipedia:Kandidaten für lesenswerte Artikel','KLA',qbtarget,'Kandidaten für lesenswerte Artikel');
    // w (1,'/wiki/Wikipedia:Review','RV',qbtarget,'Review');
  }

  function qbAktuell() {
    w (1,'/wiki/MediaWiki:Common.css','Commons_css',qbtarget,'');
    // w (1,'/wiki/Vorlage_Diskussion:Prettytable/Bugs','Prettytable-Bugs',qbtarget,'');
  }
  

/* 
  function qbToolserver() 
  {
    w (0,trenner,'Toolserver','');
 
    if (isArticle) {
        w (1,"http://tools.wikimedia.de/~daniel/WikiSense/Contributors.php?wikilang=de&wikifam=.wikipedia.org&page="+pesctitle+"&since=&until=&grouped=on&order=-rev_timestamp&max=100&order=-rev_timestamp&format=html",'Conts',qbtarget,'Beiträge zu diesem Artikel');
    }
    // w (1,'http://tools.wikimedia.de/~interiot/cgi-bin/count_edits?user='+user+'&dbname=dewiki_p','EC+',qbtarget);
    w (1,"http://tools.wikimedia.de/~daniel/WikiSense/CategoryIntersect.php?wikilang=de&wikifam=.wikipedia.org&userlang=de",'CatScan',qbtarget);
    // w (1,"http://tools.wikimedia.de/~daniel/WikiSense/CategoryTree.php?&wikilang=de&wikifam=.wikipedia.org&m=c&cat=%21Hauptkategorie",'CatTree',qbtarget);
    // w (1,'http://tools.wikimedia.de/~daniel/WikiSense/CategoryTree.php?wikifam=commons.wikimedia.org&cat=Topics&m=a&userlang=de','Com-CatTree',qbtarget);
    // w (1,'http://tools.wikimedia.de/~gunther/adminaktivitaet.php','AdmA',qbtarget,'Adminaktivität');
    // w (1,'http://tools.wikimedia.de/~aka/cgi-bin/revstat.cgi?period=168','RStat',qbtarget,'Revert-Statistik');
    // w (1,'http://commons.wikimedia.org/wiki/Special:Upload','C-Upl',qbtarget,'Commons-Upload');
 
    if (isBild)
       w (1,"http://tools.wikimedia.de/~magnus/commonshelper.php?interface=de&lang=de&project=wikipedia&image="+spesctitle,'Move2C',qbtarget,'CommonsHelper');
    else
       w (1,"http://tools.wikimedia.de/~magnus/commonshelper.php?interface=de&lang=de&project=wikipedia",'Move2C',qbtarget,'CommonsHelper');
   }
*/

/* 
  function qbExternTools() {
    w (0,trenner,'Externe Tools','');
    if (isIPUser) {
        // w (1,"http://www.ripe.net/whois?form_type=simple&full_query_string=&searchtext="+userPageOwner+"&do_search=Search",'IPripe',qbtarget);
        w (1,"http://www.dnsstuff.com/tools/ipall.ch?domain="+userPageOwner,'IPinfo',qbtarget,'IPInfo/Whois');
        w (1,"http://www.dnsstuff.com/tools/tracert.ch?ip="+userPageOwner,'IPtrcrt',qbtarget,'Traceroute');
        w (1,"http://jodies.de/ipcalc?host="+userPageOwner+"&mask1=18&mask2=",'IPrange',qbtarget,'Range/Subnet Rechner');
    } else {
        // w (1,"http://www.ripe.net/whois",'ripe',qbtarget);
        w (1,"http://www.dnsstuff.com/",'whois',qbtarget,'Whois');
        w (1,"http://www.denic.de/de/",'denic',qbtarget,'Domain-Lookup');
        w (1,"http://www.iks-jena.de/cgi-bin/whois",'iks-whois',qbtarget,'IKS-Whois-Lookup');
   }
 
    if ((!isIPUser) && (userPageOwner != ""))
        w (1,"http://tools.wikimedia.de/~interiot/cgi-bin/queries/SUL?user="+userPageOwner,'SUL',qbtarget,'Single-user login conflict search');
 
    // w (1,"http://www.copyscape.com",'CopySc',qbtarget);
    w (1,"http://www.affenkrieger.de/wiki/wikicc.php",'AffenKr',qbtarget,'Affenkrieger');
    w (1,'http://vs.aka-online.de/cgi-bin/globalwpsearch.pl?search='+pesctitle+'&timeout=300&minor=1','GWS',qbtarget,'GlobalWikiSearch');
    w (1,'http://wikipedia.ramselehof.de/wikiblame.php?article='+pesctitle+'&user_lang=de&skipversions=2&ignorefirst=3&limit=250','WBlame',qbtarget,'Wikiblame');
    w (1,'http://vs.aka-online.de/cgi-bin/wppagehiststat.pl?lang=de&page='+pesctitle,'WPHS',qbtarget,'Seitenstatistik');
    // w (1,"http://www.itp.uni-hannover.de/~krohn/wscan.html.utf8",'Krohn',qbtarget);
 
    w (1,"http://www.canoo.net",'Canoo',qbtarget); 
    w (1,"http://www.cia.gov/cia/publications/factbook/index.html",'FactB',qbtarget,'CIA World Factbook');
    w (1,"http://de.encarta.msn.com/artcenter_/browse.html",'Enc',qbtarget,'MSN Encarta');
    w (1,"http://lexikon.meyers.de/index.php/Meyers-Meyers_Lexikon_online",'Meyers',qbtarget,'Meyers Lexikon online');
    w (1,"http://susi.e-technik.uni-ulm.de:8080/Meyers2/index/index.html",'Mey88',qbtarget,'Meyers Konversationslexikon 1888');
    w (1,"http://www.ddb.de",'DNB',qbtarget,'Deutsche Nationalbibliothek');
 
    if (isArticle) {
        w (1,"http://dispatch.opac.ddb.de/DB=4.1/CMD?ACT=SRCHA&IKT=8514&SRT=YOP&TRM="+personlemma,'DNB-PND',qbtarget,'DNB (PND-Suche)');
    } else {
        w (1,"http://dnb.ddb.de/",'DNB-PND',qbtarget,'DNB (PND-Suche)');
    }
 
    w (1,"http://www.ubka.uni-karlsruhe.de/kvk.html",'KVK',qbtarget,'Karlsruher Virtueller Katalog');
    w (1,"http://mdz1.bib-bvb.de/~ndb/ndbmaske.html",'ADB',qbtarget,'Allgemeine/Neue Deutsche Biographie');
  }
*/ 

 function qbEditTags() {
    if (isBild) return;
    if (!isEdit) return;
 
    w (0,trenner,'Editierhilfen','');
 
    w (3,"br,'',''",'br','','Zeilenumbruch');
    w (3,"'&','nbsp;',''",'nbsp','','Geschütztes Leerzeichen');
    w (3,"'†','',''",'†','','Kreuz');
    w (3,"'–','',''",'–','','Gedankenstrich');
    w (3,"'?','',''",'?','','Pfeil nach rechts');
    w (3,"'<!-- ',' -->',''",'// comment','','<!--Kommentar-->');
    w (3,"'„','“',''",'„“','','Anführungszeichen');
 // </nowiki>
    w (3,"'<nowiki>','</nowiki>',''",'Nowiki','','<nowiki>');
    w (3,"'<code><nowiki>','</nowiki></code>',''",'Code','','<code+nowiki>');
 // <nowiki>
    w (3,"'<small>','</small>',''",'<small>small</small>','','Klein');
    w (3,"'<s>','</s>',''",'<s>strike</s>','','Durchstreichen');
    w (3,"'<u>','</u>',''",'<u>under</u>','','Unterstreichen');
    w (3,"'<ref>','</ref>',''",'<small>[ref]</small>','','Referenz');
    w (3,"'<ref name=\\u0022name\\u0022>','</ref>',''",'<small>[refN]</small>','','Referenz-Name');
    w (3,"'<ref name=\\u0022name\\u0022 />','',''",'<small>[refR]</small>','','Referenz-Name-Wiederholung');
    w (3,"'<math>','</math>',''",'Math'); 
    w (3,"':<math>\\u005Cmathrm{','}</math>',''",'ChemForm');
 }
 
 function qbArticleTemps() {
    if (isBild) return;
    if (!isEdit) return;
 
    w (0,trenner,'Artikelbausteine','');
    w (3,"'== Weblinks ==\\n','',''",'Weblinks','','== Weblinks ==');
    w (3,"'== Quellen ==\\n<references />\\n','',''",'Refs','','== Quellen ==');
    w (3,"'[[Kategorie:',']]\\n',''","Kat:",'','[[Kategorie:]]');
    w (3,"'{{DEFAULTSORT:"+escpersonlemma+"}}\\n','',''","DefSrt",'','{{DEFAULTSORT:');
    w (3,"'[[Benutzer:',']]',''","User:",'','[[Benutzer:]]');
    w (3,"'[[Wikipedia:',']]',''","WP:",'','[[Wikipedia:]]');
 
    w (0,br,'','');
 
    w (3,"'{{Personendaten\\n|NAME="+personlemma+"\\n|ALTERNATIVNAMEN=\\n|KURZBESCHREIBUNG=\\n|GEBURTSDATUM=\\n|GEBURTSORT=\\n|STERBEDATUM=\\n|STERBEORT=\\n}}\\n','',''",'PD','','{{Personendaten...');
    w (3,"'* {{IMDb Name|','|"+wgTitle+"}}\\n',''","IMdb-n",'','{{IMDb Name...');
    w (3,"'* {{IMDb Titel|','|"+wgTitle+"}}\\n',''","IMdb-t",'','{{IMDb Titel...');
    w (3,"'* {{OFDb Titel|','|"+wgTitle+"}}\\n',''","OFDb-t",'','{{OFDb Titel...');
 
    w (0,br,'','');
 
    w (2,"'Redirect angelegt','#REDIRECT [[]]',1","Redir",'','#REDIRECT [[]]');
    w (2,"'+Überarbeiten','{{Überarbeiten}}\\n\\n',3","Überarb",'','{{Überarbeiten}}');
    w (2,"'+Quelle','{{Quelle}}\\n\\n',3","Quelle?",'','{{Quelle}}');
    // w (2,"'+Stub','{{Stub}}\\n\\n',2","Stub");
    // w (2,"'+Lückenhaft','{{Lückenhaft|Es fehlen...}}\\n\\n',2","Lücke","","Lückenhaft");
    // w (2,"'+Rechtshinweis','{{Rechtshinweis}}',2","Recht");
    // w (2,"'+Gesundheitshinweis','{{Gesundheitshinweis}}',2","Gesundh.");
 }
 
 /*
 function qbMarkupTools() {
    if (isBild) return;
    if (!isEdit) return;
 
    w (0,trenner,'Markup-Tools','');
    w (4,"addPersData();","AutoPD",'','Automatische Kategorien und Personendaten'); // extern
    w (4,"wpTextReplace();","Replace",'','Suchen und Ersetzen');
    if (rechtschreibpruefung && !AutorunRP && !isSpecial)
        w (4,"spellcheck();","SpellChk",'','Rechtschreibprüfung');
    w (4,"replaceQuoteSigns();","FixQuotes",'','Anführungszeichen korrigieren');  // extern
    w (4,"ReplaceMarkup();","FixMarkup",'','Verschiedene Markup-Korrekturen');  // extern
    w (4,"undate();","UnDate",'','Daten entlinken');
 }
*/ 
 
/*
  function qbImageTemps() {
    if (!isBild) return;
    if (!isEdit) return;
 
    w (0,trenner,'Bildbausteine','');
    w (4,"nowcomm();","NowCommons");
    // w (2,"'+BLU','{{subst:BLU}}\\n\\n',3","BLU"); 
    // w (2,"'+BLU-User','{{subst:BLU-User}}\\n\\n',3","BLU-User");      
  }
*/
 
/*
  function qbUsertalkTemps() {
    if (!isUserpage) return;
    if (!isTalk) return;
    if (!isEdit) return;
 
    w (0,trenner,'Benutzerbausteine','');
 
    // w (3,"'{{subst:Benutzer:PDD/Greetings/Hallo|" + user + "}} " + usersignature + "\\n','',''","Hallo");
    // w (3,"'{{subst:Benutzer:PDD/Greetings/HalloG|" + user + "|" + usersignature + "}}\\n','','','Willkommen!'","Hallo",'','Baustein PDD:Hallo'); 
    // w (3,"'{{subst:Benutzer:PDD/Greetings/Danke}} " + usersignature + "\\n','',''",'Danke','','Baustein PDD:Danke');
    // w (3,"'{{subst:Benutzer:Complex/Greetings/TestMitStopschild}} " + usersignature + "\\n','',''",'Stop','','Baustein Complex:TestMitStopschild'); // Abwandlung von [[Benutzer:LKD/V/VHinweis]]
    // w (3,"'{{subst:Benutzer:Blah/Vorlage:Vandale}}\\n','',''",'Vand','','Baustein Blah:Vandale');
    // w (3,"'{{subst:Benutzer:Tobi B./Vorlage:Löschvandale}} " + usersignature + "\\n','',''",'LöschV','','Baustein Tobi B.:Löschvandale');
    // w (3,"'{{subst:Benutzer:PDD/Greetings/KinderKinder!}}\\n','',''",'Kind','','Baustein PDD:Kind');
    // w (3,"'{{Diskussion}}\\n','',''",'Sign!','','{{Diskussion}}');
    // w (3,"'{{subst:Vorschau}} " + usersignature + "\\n','',''",'Vorschau','','{{subst:Vorschau}}');
    // w (3,"'{{subst:Benutzer:PDD/Greetings/Linkspam}} " + usersignature + "\\n','',''",'Linkspam','','Baustein PDD:Linkspam');
    // w (3,"'{{subst:Benutzer:Complex/Greetings/WP-WEB}} " + usersignature + "\\n','',''",'LinkspamC','','Baustein Complex:WP-WEB'); // Abwandlung von [[Benutzer:LKD/V/LHinweis]]
    // if (adminflag)
    //    w (3,"'{{subst:Benutzer:LKD/V/ALoesch}} " + usersignature + "\\n','',''",'SLA-ex','','Autorenbenachrichtigung nach Schnelllöschung');
 }
*/

/*
  function qbAutoTemps() {
    if (isSpecial && !isContrib) return;
 
    w (0,trenner,'Auto-Bausteine','');
 
    if (( isGeneric)  && (!isSpecial))  w (4,"eintragen(1);","QS+","","+Qualitätssicherung");
    if (( isGeneric)  && (!isSpecial))  w (4,"eintragen(5);","URV+","","+URV");
    if (( isGeneric)  && (!isSpecial))  w (4,"eintragen(2);","LA+","","+Löschantrag");
    if (( isBild)     && (!isSpecial))  w (4,"eintragen(4);","BildLA+","","+Löschantrag Bild");
    // if (( isBild)     && (!isSpecial))  w (4,"eintragen(9);","BLU+","","+BLU");
    if (( isCategory) && (!isSpecial))  w (4,"eintragen(7);","KatLA+","","+Löschantrag Kategorie");
    if (( isTemplate) && (!isSpecial))  w (4,"eintragen(8);","VorLA+","","+Löschantrag Vorlage");
    if (                 (!isSpecial))  w (4,"eintragen(3);","SLA+","","+Schnelllöschantrag");
    if (( isContrib)  || ( isUserpage)) w (4,"eintragen(6);","VANDAL+","","+Vandalismusmeldung");
    if (hinweis) {
       if (( isGeneric)  && (!isSpecial))  w (4,"hinweis(1);","PH+","","+Portalhinweis");
       if (( isGeneric)  && (!isSpecial))  w (4,"hinweis(2);","RH+","","+Redaktionshinweis");
    }
    if (wgPageName == "Wikipedia:Spielwiese") w (4,"eintragen(10);","SP-Reset","","Spielwiese zurücksetzen");
 }
*/ 
 
 /*
  * hier wird der Quickbar in die Seite geschrieben
  * (ab hier bitte nichts ändern)
  */
 releasequickbar = isEdit;
 buildQuickbar();
 document.write(Quickbar);
 
 if (typeof(version) == 'undefined') var version = "?";
 if (!isEdit || zeigeversion || isPHP) {
  document.write(
      '<div align=right>',
 
    (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=',user,
          '&namespace=2" target="', qbtarget, '" title="Meine Seiten im Benutzernamensraum">',
          (user.split(' ')[0].length < 10) ? user.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;
    }
 }
 
 
 // ********* FOOT-Block *********
 // *** Skriptimporte ***
 // </nowiki> <- nicht löschen!!!
 
 // 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]]

 /*  Durch eigene Variation ersetzt 
 // setGallery
 if (newgallery && !isSpecial)
    importJavascriptL('Olliminatore/newgallery','de'); // [[Benutzer:Olliminatore/newgallery.js]]
 */

 // INCREASE THE COUNT OF IMAGES IN A ROW OF GALLERIES
 // de: Mehr als 4 Bilder nebeneinander in der Wiki-Bildergalerie
 // var gallery_len = 5; // external var is needed, example: one image more 
 // created 26.08.2006 by [[User:Olliminatore]]

 function setGallery(){
   if (typeof bodyContent == 'undefined' && !(bodyContent = document.getElementById('bodyContent')))
     bodyContent = document.getElementById('article');
   if (typeof gallery_len == 'undefined') gallery_len = 5; // new width in a row
   var g_norm = 4, g_header;  // standard width/ row.length
   d_len = gallery_len - g_norm; // to do difference
   var table = bodyContent.getElementsByTagName("table");
   for (var t=0;t<table.length;t++){
     if (table[t].className!="gallery") continue;
     var tbody = table[t].getElementsByTagName('TBODY')[0];
     var g_rows = tbody.getElementsByTagName('TR');
     if (g_rows[0].getElementsByTagName('TD')[0].className=="galleryheader"){
       g_header=tbody.removeChild(g_rows[0]);
       g_header.setAttribute('colspan',gallery_len)
     }
     else g_header="";
     var gc=0, g_boxes = new Array();
     for (gr = 1; gr < g_rows.length; gr++){
       g_boxs = g_rows[gr].getElementsByTagName('TD');
       g_boxlen = g_boxs.length;
       for (gb = 0; gb < g_boxlen; gb++)
         g_boxes[gc++]=g_rows[gr].removeChild(g_boxs[0]);
     }
     for (gb = 0; gb < g_boxes.length; gb++)
       g_rows[Math.floor((gb+4) / gallery_len)].appendChild(g_boxes[gb]);
     if (g_header) tbody.insertBefore(g_header, g_rows[0]);
   }
 }
 addOnloadHook(setGallery);   // Lade immer
 /*
 if (typeof bCategory != 'undefined' || typeof bArticle != 'undefined'){ // Kategorie und oder Artikel??
   if ((wgNamespaceNumber == 14 && bCategory)||(!wgNamespaceNumber && bArticle)) 
 } else addOnloadHook(setGallery); // wenn nichts angegben, dann lade immer */







 
 // 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]]
 }
 // Und hier ist die monobook.js zu Ende.