// FAQ:
//
// Frage:   Wie übernehme ich dieses Skript?
//
// Antwort: Einfach "Quelltext betrachten", alles markieren und kopieren, und dann in deine eigene
//          monobook.js (also hierhinein: Benutzer:<DeinName>/monobook.js) kopieren.
//          Am sinnvollsten ist es dabei, wenn du die Originalversion von Benutzer:PDD/monobook.js
//          übernimmst, da diese immer auf dem neuesten Stand ist.
//
// Frage:   Kann ich dieses Skript einfach so übernehmen, oder muss ich da tausend Sachen ändern?
//
// Antwort: Du kannst natürlich alles ändern, aber du musst nicht. Einfach erstmal kopieren, ausprobieren,
//          und dann so anpassen, dass es deinem Bedarf gerecht wird.
//
// Weitere Fragen und Antworten findest du hier: Benutzer:PDD/monobook FAQ

//
// Hier bitte eine Signaturvariante aussuchen!
//

// 
 // (Signaturvariante 1: sinnvoll bei unter "Einstellungen" typografisch angepassten Signaturen)
 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 = '-- \~\~\~\~';
 // 

// Originalskript 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)

// *************** SETUP Anfang **********************************
// Funktionen im Quickbar (monobook.js)
var usedropdown = false;        // Wenn keine Dropdowns gewünscht sind, hier false eintragen!
var qbnewpage = true;           // sollen Seiten aus dem QuickBar im neuen Fenster aufgerufen werden?
var timeout = 50000;            // 50 Sekunden auf das Neuladen der Seite warten
var zeigeversion = true;        // monobook-Version anzeigen?
var zeigenutzer = false;        // eigener Benutzername nach Version angezeigt?
var debugme = false;            // Debug-Modus?

// systemweite Default-Funktionen 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?

// 
 // Modul: changeBeschriftungen.js
 var beschriftungen = true;      // kosmetische Änderungen an der MediaWiki-Oberfläche?
 var markhandsoff = true;        // 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";
 // {{subst:unsigned|Montag|22:34, 20. Okt 2006 (CEST)| -- ~~~~}}var cblogout = "X";
 // 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 blocken";
 // Beschriftungen: portlets
 var cblang = "Interwiki";
 
 // Modul: changeSZtoSS.js
 var changeszlig = false;        // "ß" in "ss" ändern (nach Schweizer Rechtschreibung)?
 
 // Modul: eintragen.js
 var autosave = true;            // automatisches Speichern von QS/LA/SLA/BildLA/Vandal-Einträgen?
 var usekatproject = true;       // LAs für Kategorien auf dem WikiProjekt eintragen?
 
 // Modul: godmode-light.js
 var godmodelight = true;        // "Zurücksetzen" einblenden?
 var godmodenewstyle = true;     // neuer Rollback-Kommentartext?
 
 // Modul: addEditAndRevertLinks.js
 var editlinkoldversion = true;  // Bearbeiten-Link für ältere Versionen anzeigen?
 var editlinktxt = "edit";       // Text des Edit-Links
 var revertwithreason = true;    // Revert-Link mit Grund-Eingabe anzeigen?
 var revlinktxt = "rev";         // Text des Revert-Links
 var revlinkshowuser = true;     // beim Revertieren über (Rev)-Link letzten Benutzer angeben?
 var rvisminor = true;           // sind Reverts mit "(rev)"-Link Minor-Changes?
 var aerhistory = true;                       // Links auch in der Versionsgeschichte?
 var aearlhere = true;                        // 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";
 
 var addusercontriblink = false;  // auf Benutzerseiten auch noch 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 addbrowselink = true;       // auf allen Seiten Link zum alphabetischen Browsen?
 var browseuserprefix = true;                 // bei Nutzerseiten stattdessen 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: addEditSection0.js
 var addeditsection0 = true;     // TAB zum Editieren des Nullabschnitts (Intros) einer Seite hinzufügen?
 var editintrotext = "IntroBearbeiten";  // Beschriftung des TABs
 
 // Modul: markAdmins.js
 var markadmins = true;          // Admins besonders hervorheben?
 var mawatchlist = true;              // auch auf der Beobachtungsliste?
 var macontribs = true;               // auch auf den Benutzerbeiträgen?
 var markatxt = "Adm";           // Markierung für Admins
 var markexadmins = true;        // Ex-Admins besonders hervorheben?
 var markexatxt = "Ex-Adm";      // Markierung für Ex-Admins
 var markrenadmins = true;       // Umbenannte Admins besonders hervorheben?
 var markrenatxt = "Adm-R";      // Markierung für umbenannte Admins
 
 // 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 = 6;            // Breite der Galerien
 var bCategory = true;                 // nur in Kategorien?
 var bArticle = true;                  // (oder/und) nur in Artikeln?
 
 // Modul: quickedit.js
 var qeEnabled = false;          // QuickEdit aktivieren?
 var qeEnableSection0 = false;   // QuickEdit-Link für Abschnitt 0 (Einleitung)?
 var qeShowErrors = false;       // Fehler anzeigen? (im Normalfall besser nicht (false))
 var qeEnableAccessKeys = true;  // Tastaturbefehle aktivieren?
 var qeTextboxHeight = 15;       // Höhe des Textfelds
 
 // Modul: APPERs RP
 var rechtschreibpruefung = false;  // Rechtschreibprüfung aktivieren?
 
 // 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 = true;           // Einfügen von Unsigned bei unsignierten Beiträgen auf Diskussionsseiten?
 
 // 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
 
 // 
// Modul: customToolbar.js
var customtoolbar = false;      // mehr Buttons in der Symbolleiste?
// Anzahl und Reihenfolge wählbar (siehe: Benutzer:Olliminatore/Extra-Editbuttons)
var customEditButtons = "A,B,C,E,F,G,H,I1,I2,J1,K,L,M,Q,R,R3,S,T,U,V,W,X";

// 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 (DEFAULT: 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? (DEFAULT: 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 = true;                  // 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 = true;             // 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 laden, wenn Mausposition über Bild? (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)
// 
 // deutsche Texte für Lupin
 popupFixDabsSummary = 'Ersetze BKL-Seite [[%s]] durch [[%s]] mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]';
 popupExtendedRevertSummary = 'Revert auf Version vom %s von Benutzer %s, oldid %s mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]';
 popupRevertSummary = 'Revert auf Version %s mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]';	
 popupRevertToPreviousSummary = 'Revert auf Vorgängerversion der Version %s mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]';	
 popupQueriedRevertSummary = 'Revert auf Version $1 vom $2 von $3 mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]';
 popupQueriedRevertToPreviousSummary = 'Revert auf Vorgängerversion der Version $1 vom $2 von $3 mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]';
 popupFixRedirsSummary = 'Ersetze Redirect [[%s]] durch [[%s]] mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]';
 popupRedlinkSummary = 'Entferne Link auf leere Seite [[%s]] mit [[Wikipedia:Helferlein/Navigation-Popups|Popups]]';
 popupRmDabLinkSummary = 'Entferne Link auf BKL-Seite [[%s]] 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)
 
 // **************** SETUP Ende ***********************************
 
 // (PDD: note to self: version auch in alert-Funktion ändern!)
 var version  = 'P097z';
 
 var user  = wgUserName ; // username wird automatisch übernommen
 
 var trenner='<hr />';
 var br     ='<br />';
 var Quickbar = '<div class="pBody noprint" id="p-quickbar" style="position:absolute; top:5px; z-index:10; width:14em;">';
 var xxx      = '';
 var scrpt    = '';
 var scrptn   = 0;
 var dropdown = usedropdown;
 
 var qbtarget = '_self';
 if (qbnewpage) qbtarget = '_blank';
 
 var Monate = new Array("Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember");
 var jetzt = new Date();
 var Jahr = jetzt.getYear(); if (Jahr < 999)  Jahr += 1900;
 var WPDatum = jetzt.getDate() + '._' + Monate[jetzt.getMonth()] + '_' + Jahr;
 var WPDatum2 = Jahr + '/' + Monate[jetzt.getMonth()] + '/' + jetzt.getDate();
 
 // 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 isBild     = (wgCanonicalNamespace == "Image");
 var isCategory = (wgCanonicalNamespace == "Category");
 var isTemplate = (wgCanonicalNamespace == "Template");
 var isGeneric  = false;
 if ((!isBild) && (!isCategory) && (!isTemplate))
     isGeneric  = true;
 
 // page type variables: user & user discussion lumped together
 var isUserpage = ( (wgCanonicalNamespace == "User") || (wgCanonicalNamespace == "User_talk") );
 
 // page type variables: namespace -1
 var isSpecial  = (wgCanonicalNamespace == "Special");
 var isRestore = (isSpecial && (wgTitle == "Undelete"));
 var isContrib = (isSpecial && (wgTitle == "Contributions"));
 var isWatchlist = (isSpecial && (wgTitle == "Watchlist"));
 
 // page type variables: other stuff
 var isPHP     = (document.URL.indexOf('index.php') > 0);
 var isDiff    = UrlParameters["diff"];
 var isEdit    = (document.URL.indexOf('action=edit') > 0) || (document.URL.indexOf ('action=submit') > 0);
 var isHistory = (document.URL.indexOf('action=history') > 0);
 
 // uri-parameter
 // benutzt in eintragen.js und addEditAndRevertLinks.js
 // (targets für fillActionPage() )
 var subjp      = 'subj';       //Subject
 var textp      = 'txt';        //Für Text-Austausch
 var insp       = 'ins';        //Vor dem Text einfügen
 var addp       = 'add';        //an Text anhängen
 var minorp     = 'minor';      //(k)leine Änderung
 var speichernp = 'speichern';  //Auf "Speichern" klicken 
 
 var reloadme   = 'neuladen';   //merker für reload
 
 // Belegung des Quickbars (oben links)
 if (usedropdown) {
   w (0,trenner,'--Wikipedia--','');
 }
 
 w (1,'/wiki/Hilfe:MediaWiki','Hilfe',qbtarget);
 w (1,'/wiki/Wikipedia:Fragen zur Wikipedia','FzW',qbtarget);
 w (1,'/wiki/Wikipedia:Auskunft','A',qbtarget);
 w (1,'/wiki/Wikipedia:Abkürzungen','WP:xx',qbtarget);
 w (1,'/wiki/Wikipedia:Verbesserungsvorschläge','VV',qbtarget);
 w (1,'/w/index.php?title=Spezial%3APrefixindex&from='+user+'&namespace=2','MyPages',qbtarget);
 
 w (0,br,'--Special--','');
 w (1,'/w/index.php?title=Spezial:Recentchanges&hideminor=0&hideliu=1&hidebots=1&hidepatrolled=0&days=7&limit=250','RCs',qbtarget);
 w (1,'/wiki/Spezial:Newpages','NewP',qbtarget);
 w (1,'/w/index.php?title=Spezial:Log&limit=1000&type=newusers','NewU',qbtarget);
 w (1,'/wiki/Spezial:Contributions/newbies','NewUP',qbtarget);
 w (1,'/wiki/Spezial:Log','Log',qbtarget);
 
 w (0,br,'--Löschdisks--','');
 w (1,'/wiki/Kategorie:Wikipedia:Schnelllöschen','SLK',qbtarget);
 w (1,'/wiki/Wikipedia:Löschkandidaten/'+WPDatum,'LK',qbtarget);
 w (1,'/wiki/Wikipedia:Löschkandidaten/Bilder/'+WPDatum,'BildLK',qbtarget);
 if (usekatproject)
     w (1,'/wiki/Wikipedia:WikiProjekt_Kategorien/Diskussionen/'+WPDatum2,'KatLK',qbtarget);
 w (1,'/wiki/Wikipedia:Löschkandidaten/Versionen','VersLK',qbtarget);
 
 w (0,br,'--Andere Disks--','');
 w (1,'/wiki/Wikipedia:Qualitätssicherung/'+WPDatum,'QS',qbtarget);
 w (1,'/wiki/Wikipedia:Löschkandidaten/Urheberrechtsverletzungen','URV',qbtarget);
 w (1,'/wiki/Wikipedia:Vandalensperrung','VS',qbtarget);
 // w (1,'http://commons.wikimedia.org/wiki/Special:Upload','C-Upload',qbtarget);
 
 w (0,trenner,'--Externe--','');
 // w (1,'http://tools.wikimedia.de/~kate/cgi-bin/count_edits?user='+user+'&dbname=dewiki_p','EC',qbtarget);
 // 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://www.copyscape.com",'CopySc',qbtarget);
 w (1,"http://www.affenkrieger.de/wiki/wikicc.php",'AffenKr',qbtarget);
 w (1,'http://wikipedia.ramselehof.de/wikiblame.php?article='+wgPageName+'&skipversions=2&ignorefirst=3&limit=250','WBlame',qbtarget);
 // w (1,"http://www.itp.uni-hannover.de/~krohn/wscan.html.utf8",'Krohn',qbtarget);
 w (1,"http://www.ripe.net/whois",'Ripe',qbtarget);
 w (1,"http://www.canoo.net",'Canoo',qbtarget); 
 w (1,"http://www.cia.gov/cia/publications/factbook/index.html",'FactB',qbtarget);
 w (1,"http://lexikon.meyers.de/index.php/Meyers-Meyers_Lexikon_online",'Meyers',qbtarget);
 w (1,"http://www.ubka.uni-karlsruhe.de/kvk.html",'KVK',qbtarget);
 w (1,"http://www.ddb.de",'ddb',qbtarget);
 w (1,"http://mdz1.bib-bvb.de/~ndb/ndbmaske.html",'ADB/NDB',qbtarget);
 // nur für Wikipedia Namensraum
 if ( (document.URL.indexOf('Wikipedia:') > 0) ||
      ((document.URL.indexOf('Benutzer:') > 0) && (document.URL.indexOf('Bewertung') > 0)) )
   w (4,"markStimmrecht();","Stimmrecht?");  // extern
 
 closedropdown();
 dropdown=false;
 
 if (isEdit && !isBild) {
   w (0,trenner,'','');
 
   w (3,"br,'',''",'br');   
   w (3,"'†','',''",'†');
   w (3,"'→','',''",'→');
   w (3,"'<!-- ',' -->',''",'// comment');
   w (3,"'<small>','</small>',''",'<small>small</small>');
   w (3,"'<s>','</s>',''",'<s>strike</s>');
   w (3,"'<u>','</u>',''",'<u>under</u>');
   w (3,"':<math>\\u005Cmathrm{','}</math>',''",'ChemForm');
   w (0,trenner,'','');
 
   if (usedropdown) {
     dropdown=true;
     w (0,trenner,'--Bausteine--','');
   }
   w (3,"'== Weblinks ==\\n','',''",'Weblinks');
   // w (2,"'*{{IMDb Titel||}}\\n','','');document.editform.wpSummary.value='Vorlage:IMDb Titel';document.editform.wpTextbox1.focus();","IMdb-t");
   
   w (3,"'[[Kategorie:',']]\\n',''","Kat:");
   w (3,"'[[Benutzer:',']]',''","Benutzer:");
   w (3,"'[[Wikipedia:',']]',''","WP:");
   w (0,br,'','');
 
   w (2,"'Redirect angelegt','#REDIRECT [[]]',1","Redir");
   w (2,"'+Überarbeiten','{{Überarbeiten}}\\n\\n',3","Überarb");
   // w (2,"'+Stub','{{Stub}}\\n\\n',2","Stub");
   w (2,"'+Lückenhaft','{{lückenhaft}}\\n\\n',3","Lücke");
   // w (2,"'+Rechtshinweis','{{Rechtshinweis}}',2","Recht");
   // w (2,"'+Gesundheitshinweis','{{Gesundheitshinweis}}',2","Gesundh.");
   closedropdown();dropdown=false;
 
   w (0,trenner,'--Benutzersteine--','');
   // w (3,"'{{subst:Benutzer:PDD/Greetings/Hallo|" + user + "}} " + usersignature + "\\n','',''","Hallo");
   w (3,"'{{subst:Benutzer:PDD/Greetings/HalloG|" + user + "|" + usersignature + "}}\\n','',''","Hallo"); 
   w (3,"'{{subst:Benutzer:PDD/Greetings/Danke}} " + usersignature + "\\n','',''",'Danke');
   w (3,"'{{subst:Benutzer:PDD/Greetings/KinderKinder!}}\\n','',''",'Kind');
   w (3,"'{{Diskussion}}\\n','',''",'Sign!');
   w (3,"'{{subst:Vorschau}} " + usersignature + "\\n','',''",'Vorschau');
   w (3,"'{{subst:Benutzer:PDD/Greetings/Linkspam}} " + usersignature + "\\n','',''",'Linkspam');
   closedropdown();dropdown=false;
 
   w (0,trenner,'','');
   w (4,"wpTextReplace();","Replace");
   // w (4,"myTypoKorr();","TypoKorr");
   // w (4,"spellcheck();","Spellchk");
   w (4,"replaceQuoteSigns();","FixQuotes");  // extern
   w (4,"ReplaceMarkup();","FixMarkup");  // extern
   // w (4,"undate();","UnDate");
 } //if (isEdit)
 
 if (isEdit && isBild) {
   w (0,trenner,'','');
   w (4,"nowcomm();","NowCommons");
   w (2,"'+Bild-Lizenz-unbekannt','{{Bild-Lizenz-unbekannt}}\\n\\n',3","Bild-Liz.-unb.");      
 }
 
 if ((!isSpecial) || (isContrib)) {
   w (0,trenner,'','');
   if (( isGeneric)  && (!isSpecial))  w (4,"eintragen(1);","QS+");
   if (( isGeneric)  && (!isSpecial))  w (4,"eintragen(5);","URV+");
   if (( isGeneric)  && (!isSpecial))  w (4,"eintragen(2);","LA+");
   if (( isBild)     && (!isSpecial))  w (4,"eintragen(4);","BildLA+");
   // if (( isBild)     && (!isSpecial))  w (4,"eintragen(9);","BLU+");
   if (( isCategory) && (!isSpecial))  w (4,"eintragen(7);","KatLA+");
   if (( isTemplate) && (!isSpecial))  w (4,"eintragen(8);","VorLA+");
   if (                 (!isSpecial))  w (4,"eintragen(3);","SLA+");
   if (( isContrib)  || ( isUserpage)) w (4,"eintragen(6);","VANDAL+");
   // if (( isGeneric)  && (!isSpecial))  w (4,"hinweis(1);","PH+");
   // if (( isGeneric)  && (!isSpecial))  w (4,"hinweis(2);","RH+");
 }
 
 if (isRestore) {
   w (0,trenner,'','');
   w (4,"TaggAll();","Alle Versionen, außer?");
 } //if (isRestore)
 
 var indropdown = false;
 var ind = 0;
    
 closedropdown();
 
 // Quickbar ins Dokument schreiben
 document.write(Quickbar);
 
 if (!isEdit || zeigeversion || isPHP) {
  document.write('<div align=right>',
                 !isEdit ?
                   ('Neu laden:<input type="checkbox" id="reloadme" name="reloadme" onchange="setReload()"></input>')
                   : '',
                 zeigeversion ?
                   (' ' + version)
                   : '',
                 (zeigeversion && zeigenutzer) ?
                   ('.')
                   : '',
                 zeigenutzer ?
                   (user)
                   : '',
                 '</div>');
 }                
 document.write(xxx,'</div>');
 
 if (scrpt > '') {
    document.write('<script> function _doopt (was) { switch (was) {', scrpt, '}}<\/script>');
    scrpt='';
 }
 
 //
 // ab hier functions
 //
 
 var timeoutaktiv; // sollte evtl. besser lokal sein?
 function setReload() {
   if (document.getElementById('reloadme').checked && (UrlParameters[reloadme] != "1")) {
       var uri = (document.URL.indexOf('?') >0) ? ('&' + reloadme + '=1') : ('?' + reloadme + '=1');
       timeoutaktiv = window.setTimeout(location.href=location.href+uri, timeout);
   }
   else if (document.getElementById('reloadme').checked	&& (UrlParameters[reloadme] == "1")) {
       timeoutaktiv=window.setTimeout("location.reload()", timeout);
   }
   else {
       window.clearTimeout(timeoutaktiv); // bizarr, timeoutaktiv ist hier gar nicht belegt?
   }
 }
 
 function w (was,lurl,linktext,targt) {
  if (!dropdown) {
   switch (was) {
    case 0 : xxx=xxx+lurl;break;
    case 1 : xxx=xxx+'<a href="'+lurl+'" target="'+targt+'">'+linktext+'</a>  ';break;
    case 2 : xxx=xxx+'<a href="#" onclick="newtext('+ lurl +')">'+linktext+'</a>  ';break;  	
    case 3 : xxx=xxx+'<a href="#" onclick="insertTags('+ lurl +')">'+linktext+'</a>  ';break;  	   
    case 4 : xxx=xxx+'<a href="#" onclick="'+ lurl +'">'+linktext+'</a>  ';break;  	   
   }	 	    
  } //if
  else
  {
   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+':insertTags('+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 closedropdown () {
  if (indropdown) xxx=xxx+'</select>';
  indropdown = false;
 }	
  
 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 newtext (subj,text,wo)
  {  //wo=1 : Text austauschen
     //wo=2 : Text am Ende anhängen
     //wo=3 : Text vorne Einfügen
     
   if (subj>"") 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='\n'+text+'\n'+document.editform.wpTextbox1.value;break;
   }    
   document.editform.wpTextbox1.focus();
  }
 
 function trim(str) {
   return str.replace(/^\s*|\s*$/g,"");
 }
 
 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);
    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>');
 }
 
 function TaggAll() { // Schwalbe nach Anregung von Poupou, ursprüngl. von BLueFiSH.as
  //(fast) alle Checkboxen auswählen, für Spezial:Undelete Versionenwiederherstellung
  for(var i=3;i<=10000;i++)
    document.getElementsByTagName("input")[i].checked=true;
 }
 
 function undate() { // von [[Benutzer:D]]
   var tb=document.editform.wpTextbox1;
   tb.value=tb.value.replace(/\[\[\s*(\d+(er)?( v. Chr.)?)\s*\]\]/g, "$1")
                    .replace(/\[\[\s*(\d+\. (Jahrhundert|Januar|Februar|März|April|Mai|Juni|Juli|August|September|Oktober|November|Dezember))\s*\]\]/g, "$1");
 }
 
 // function insertAfter
 function insertAfter(parent, node, referenceNode) {
   parent.insertBefore(node, referenceNode.nextSibling);
 }
 
 //  <- nicht löschen!!!

// ***** FOOT-Block *****
// obligatorische Funktionen (inline)

// absenden() aufgerufen aus fillActionPage()
function absenden() {
  if (!debugme)
    document.editform.wpSave.click();
  else
    alert ('Speichern');
}

// fillActionPage()  (früher aktion(), ganz früher loeschkandidat() )
// von Littl, ergänzt von Revvar
//
// Entnimmt Parameter aus der URI, fügt sie in die Textfelder ein und klickt ggf. auf "Speichern"

function fillActionPage() {
  if (UrlParameters[subjp]>"")
     document.editform.wpSummary.value = UrlParameters[subjp];
  if (UrlParameters[textp]>"")
     document.editform.wpTextbox1.value = UrlParameters[textp];
  if (UrlParameters[insp]>"")
     document.editform.wpTextbox1.value = UrlParameters[insp] + document.editform.wpTextbox1.value;
  if (UrlParameters[addp]>"")
     document.editform.wpTextbox1.value = document.editform.wpTextbox1.value + UrlParameters[addp];
  if (UrlParameters[minorp] == "1")
     document.editform.wpMinoredit.checked=true;
  if (UrlParameters[speichernp] == "1") {
     if (UrlParameters[subjp].search("SLA")==0) {
        if (document.getElementById("newarticletext")) {
           alert("Artikel wurde bereits gelöscht!");
        } else absenden();
     } else absenden();
  }
}
if ((isEdit) && (!isSpecial)) addOnloadHook(fillActionPage);

function initQuickbar() {     
  document.getElementById("column-one").style.paddingTop =
     (10+document.getElementById("p-quickbar").clientHeight)+"px";

  var quickbarpos = "fixed";
  // IE6- kann kein position:fixed und hat demzufolge Pech
  if ( navigator.userAgent.indexOf("MSIE") > 0 )
     quickbarpos = "absolute";
  // IE7 und als MSIE maskiertes Opera 8/9: können position:fixed
  if (( navigator.userAgent.indexOf("MSIE 7") > 0 ) || ( navigator.userAgent.indexOf("Opera") > 0 ))
     quickbarpos = "fixed";

  document.getElementById("p-quickbar").style.position = quickbarpos;
}
addOnloadHook(initQuickbar);

function doReload() {
  if (UrlParameters[reloadme] == "1") {
     document.getElementById('reloadme').checked=true;
     setReload();
  }
}
if (!isEdit) addOnloadHook(doReload);

// ausgelagerte obligatorische Funktionen
importPage('PDD/eintragen.js'); // Benutzer:PDD/eintragen.js
importPage('PDD/markStimmrecht.js'); // Benutzer:PDD/markStimmrecht.js
importPage('PDD/alertOnChanges.js'); // 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
   importPage('Olliminatore/fixdiffwidth.js'); // Benutzer:Olliminatore/fixdiffwidth.js
   // importPage('BLueFiSH.as/JS/fixdiffwidth'); // Benutzer:BLueFiSH.as/JS/fixdiffwidth
}

// obligatorisch nur für editpages
if (isEdit) {
   importPage('PDD/wpTextReplace.js'); // Benutzer:PDD/wpTextReplace.js
   importPage('PDD/replaceQuoteSigns.js'); // Benutzer:PDD/replaceQuoteSigns.js
   // importPage('PDD/replaceQuoteSigns2.js'); // Benutzer:PDD/replaceQuoteSigns2.js
   importPage('BLueFiSH.as/JS/markup'); // Benutzer:BLueFiSH.as/JS/markup
}

// ausgelagerte optionale Funktionen (Autoload)

// revert/loglink-Funktionen: möglichst früh einbinden
// Revert godmode-light
if (godmodelight && !isEdit && !(isSpecial && !isContrib)) {
    importPage('PDD/godmode-light.js'); // Benutzer:PDD/godmode-light.js
    // importPage('Olliminatore/godmode-light.js','en');  // en:User:Olliminatore/godmode-light.js
}
// Revert addEditAndRevertLinks
if (!(!aerhistory && isHistory) && !isEdit) {
   if (editlinkoldversion || revertwithreason)
      importPage('PDD/addEditAndRevertLinks.js'); // Benutzer:PDD/addEditAndRevertLinks.js
}
// LogLinks addLogsLink
if (addlogslink && !isSpecial) importPage('PDD/addLogsLink.js'); // Benutzer:PDD/addLogsLink.js

// jetzt alles andere, was optional ist
if (addeditsection0 && !isSpecial) importPage('PDD/addEditSection0.js'); // Benutzer:PDD/addEditSection0.js
// changeBeschriftungen *nach* addEditSection0 (!)
if (beschriftungen) importPage('PDD/changeBeschriftungen.js'); // Benutzer:PDD/changeBeschriftungen.js
if (changeszlig) importPage('PDD/changeSZtoSS.js'); // Benutzer:PDD/changeSZtoSS.js
if (rechtschreibpruefung && !isSpecial) {
    var DontAutorunRP = false;
    importPage('APPER/RP/js'); // Benutzer:APPER/RP/js
}
if (ippvandalmark && !isEdit) importPage('APPER/IP-Patrol/js'); // Benutzer:APPER/IP-Patrol/js
if (showredundantlinks && !isSpecial) importPage('PDD/showRedundantLinks.js'); // Benutzer:PDD/showRedundantLinks.js
if (signing) importPage('Olliminatore/signing.js'); // Benutzer:Olliminatore/signing.js
if (unsigning && isEdit) importPage('Olliminatore/unsigned.js');  // Benutzer:Olliminatore/unsigned.js

// extended search & replace feature
if (searchbox) importPage('Zocky/SearchBox.js','en');  // en:User:Zocky/SearchBox.js

// Syntax highlighter
if (js_highlight) importPage('Olliminatore/shCore.js','en');  // en:User:Olliminatore/shCore.js

// wikiminiatlas: Atlas bei Georeferenzen
if (miniatlas && !isSpecial) importPage('Dschwen/wikiminiatlas2.js');  // Benutzer:Dschwen/wikiminiatlas2.js

// coordinates: Generierung der Koordinaten-Vorlage
if (coordinates && isEdit) importPage('Dschwen/coordinates.js');  // Benutzer:Dschwen/coordinates.js

// showreftoggle
if (reftoggle && !isSpecial) importPage('Malte_Schierholz/reftoggle.js');  // Benutzer:Malte Schierholz/reftoggle.js

// setGallery
if (newgallery && !isSpecial) importPage('Olliminatore/newgallery.js'); // Benutzer:Olliminatore/newgallery.js

// custom toolbar buttons
if (customtoolbar) importPage('Olliminatore/customToolbar.js'); // Benutzer:Olliminatore/customToolbar.js

// quickedit
if (qeEnabled) importPage('ASM/quickedit.js'); // Benutzer:ASM/quickedit.js

// RIPE tooltips
if (ripe && !isEdit) importPage('PDD/tooltips.js'); // Benutzer:PDD/tooltips.js

// Lupin's popups
if (lupinpopups) importPage('Lupin/popups.js','en');   // en:User:Lupin/popups.js

// Markierskripte ganz zum Schluss einbinden, da sie innerHTML verändern
if (!(!mawatchlist && isWatchlist) && !(!macontribs && isContrib)) {
   if (markadmins || markexadmins || markrenadmins)
      importPage('PDD/markAdmins.js'); // Benutzer:PDD/markAdmins.js
}
if (!(!muwatchlist && isWatchlist) && !(!mucontribs && isContrib)) {
   if (markutf8) importPage('PDD/markUTF8.js'); // Benutzer:PDD/markUTF8.js
}
// Und hier ist die monobook.js zu Ende.