Benutzer:Baumanns/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
// This will add an [edit top] link at the top of all pages except preview pages
function addtoplink()
{
var edittop = '<span style="color:black;">[</span>edit top<span style="color:black;">]</span>';
  // if this is preview page or generated page, stop
  if(document.getElementById("wikiPreview") || window.location.href.indexOf("w/index.php?title=Special:") != -1) return;
  if(document.title.indexOf("Main Page") != -1) return;

  // get the page title
  var pageTitle = document.title.split(" - ")[0].replace(" ", "_"); 

  // create div and set innerHTML to link
  var divContainer = document.createElement("div");
  divContainer.innerHTML = '<div class="editsection" style="float:right;margin-left:5px;margin-right:45px;margin-top:3px;"><a href="/w/index.php?title='+pageTitle+'&action=edit&section=0" title="'+document.title.split(" - ")[0]+'">' + edittop + '</a></div>';

  // insert divContainer into the DOM before the h1
if (document.getElementById("content") !=undefined) {
  document.getElementById("content").insertBefore(divContainer, document.getElementsByTagName("h1")[0]);}
}
//END


 // Go-To-Top //
 var docURL = document.URL;
 var pagemode;
 if      (docURL.indexOf('action=edit') > 0 || docURL.indexOf('action=submit') > 0) pagemode = 'edit';
 else if (docURL.indexOf('action=delete') > 0)    pagemode = 'delete';
 else if (docURL.indexOf('Spezial:Undelete') > 0) pagemode = 'undelete';
 else if (docURL.indexOf('action=history') > 0)   pagemode = 'history';
 else if (docURL.indexOf('&diff=') > 0)           pagemode = 'diff';
 else if (docURL.indexOf('printable=yes') > 0)    pagemode = 'print';
 else                                             pagemode = 'view';

 if ( pagemode == 'view' )  
 var sidebarhoehe = 15;
   else var sidebarhoehe = 15;

 function importPage(seite)
 { document.write('<SCRIPT SRC="http://de.wikipedia.org/w/index.php?title='+ seite +'&action=raw&ctype=text/javascript"><\/SCRIPT>');
 }

 var top = '';

 if ( pagemode == 'view' )
 {
 top+='<a href="#globalWrapper" onclick="spellcheck();">top</a>';
 }
 // das ganze nachfolgende soll nur angezeigt werden, wenn man grad eine Seite bearbeitet
 else
 {
 top+='<a href="#globalWrapper" onclick="spellcheck();">top</a>';
 }


 if (pagemode != 'print')
 {
  if ( pagemode == 'view' )
   { document.write('<div id="myquickbar" style="font-size:11px; padding:1px; position:fixed; bottom:0px; left:0px; z-index:10; background-color:#fff; width:15px; padding:3px 3px 0 3px; border:1px solid #aaa; height:'+sidebarhoehe+'px">' + top + '</div>')
   }
  else
   { document.write('<div id="myquickbar" style="font-size:11px; padding:1px; position:fixed; bottom:0px; left:0px; z-index:10; background-color:#fff; width:15px; padding:3px 3px 0 3px; border:1px solid #aaa; height:'+sidebarhoehe+'px">' + top + '</div>')
   }
  
 }


 // Alle Unterseiten //
var pageTitle = document.title.split(" - ")[0].replace(" ", "_"); 
document.write('<div id="myquickbar" style="font-size:11px; padding:1px; position:fixed; bottom:0px; left:23px; z-index:10; background-color:#fff; width:15px; padding:3px 3px 0 3px; border:1px solid #aaa; height:15px"><a href="http://de.wikipedia.org/w/index.php?title=Spezial%3APrefixindex&from='+pageTitle+'">US</a></div>')


 // Ursprüngliche Version kopiert von [[Benutzer:BLueFiSH.as]] 
 // der hat es ursprünglich gefunden bei:
 //  http://de.wikipedia.org/wiki/Benutzer:SirJective/monobook.js 
 // 
 // Ich (Littl) würde mich über Rückmeldungen sehr freuen !
 // getestet mit Firefox und IE
 //
 //jetzt neu:*Automatisierter Löschantrag und Qualitätssicherung
 //            - Artikel müssen  nicht zum Bearbeiten geöffnet werden.
 //          *verbesserte Wartbarkeit
 //          *Revert-Button mit der Möglichkeit eine Begründung einzugeben
 //          *Optionale Dropdown-Auswahlfelder
 //          *Aussehen den anderen Feldern links angepasst, ist jetzt "seamless integratet" :-)
 //          *APPERs Rechtschreibprüfung
 //          *godmode-light
 //          *Man kann ein Häkchen setzen, wenn die Seite immer wieder neu geladen werden soll 
 //           -Nützlich für Recentchanges und andere Seiten. Für andere Zeitintervalle siehe Variable "timeout".
  
 var user   ='baumanns'; 		 // <- bitte anpassen !!!
 var usedropdown = false;        // Wenn keine Dropdowns gewünscht sind, hier false eintragen !
 var autosave = true;            // automatisches Speichern ja/nein
 var rechtschreibpruefung = true;// APPERS Rechtschreibprüfung aktivieren ?
 var godmodelight = true;
 var timeout = 50000;            // 50 Sekunden auf das Neuladen der Seite warten.
 
 var zeigeversion = false;  
 var debugme = false;
 
 // <nowiki>  <- nicht löschen !
 var trenner='<hr />';
 var br     ='<br />';
 var Quickbar = '<div class="pBody" id="quickba" style="position:absolute; top:5px; z-index:10; width: 135px;">';
 var version  = '0.7';
 var xxx      = '';
 var scrpt    = '';
 var scrptn   = 0;
 var dropdown = usedropdown; 
 
 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 UrlParameters = new Array ();
 readparams();

 var isEdit   = ( document.URL.indexOf ( 'action=edit' ) > 0 || document.URL.indexOf ( 'action=submit' ) > 0);
 var isSpecial= ( document.URL.indexOf ( 'Spezial:' ) > 0);
 var isPHP =    ( document.URL.indexOf ( 'index.php' ) > 0);
 
 //uri-parameter für aktion()
 var subjp      = 'subj';       //Subject
 var textp      = 'txt';        //Für Text-Austausch
 var insp       = 'ins';	//Vor dem Text einfügen
 var speichernp = 'speichern';  //Auf "Speichern" klicken 
 
 var reloadme   = 'neuladen';   //merker für reload
 
 //
 // Ab hier der Inhalt des "Fensters" oben links
 //
 if (usedropdown) {w (0,trenner,'--Wikipedia--','')};
 
 w (1,'/wiki/Wikipedia:Ich_brauche_Hilfe','IbH:','_blank');
 //w (1,'wiki/Wikipedia:Bearbeitungshelfer','edit','_blank');
 w (1,'/wiki/Wikipedia:Verbesserungsvorschläge','VV','_blank');
 
 w (0,br,'--Special--','');
 w (1,'/w/index.php?title=Spezial%3AAllpages&from='+user+'&namespace=2"','Meine','_blank');
 w (1,'/w/index.php?title=Spezial:Recentchanges&hideminor=0&hideliu=1&hidebots=1&hidepatrolled=0&limit=50&days=7&limit=250','RCs','_blank');
 w (1,'/wiki/Spezial:Newpages','New','_blank');
 w (1,'/wiki/Spezial:Contributions/newbies','Newbies','_blank');
 w (1,'/wiki/Spezial:Log','Log','_blank');
 w (1,'/wiki/Wikipedia:Löschkandidaten/Urheberrechtsverletzungen','URVs','_blank');
 //w (1,'http://commons.wikimedia.org/wiki/Special:Upload','C-Upload','_blank');
 w (1,'/wiki/Wikipedia:Löschkandidaten/'+WPDatum,'LK','_blank');
 
 w (0,trenner,'--Externe--','');
 w (1,'http://kohl.wikimedia.org/~kate/cgi-bin/count_edits?user='+user+'&dbname=dewiki','Kate','_blank'); 
 w (1,"http://www.ripe.net/whois",'ripe','_blank');
 w (1,"http://www.copyscape.com",'copyscape','_blank');
// w (1,"http://www.affenkrieger.de/wiki/wikicc.php",'Affenkrieger','_blank');
 w (1,"http://www.canoo.net",'canoo','_blank'); 
 w (1,"http://www.cia.gov/cia/publications/factbook/index.html",'Factbook','_blank'); 
 

 closedropdown();dropdown=false;
 
 if (isEdit) {
   w (0,trenner,'','');
 
   w (3,"br,'',''",'br');   
   w (3,"'†','',''",'†');
   w (3,"'<!-- ',' -->',''",'//');
   w (0,br,'','');
   w (3,"'<small>','</small>',''",'klein');
   w (3,"'<s>','</s>',''",'durch');
   w (3,"'<u>','</u>',''",'unter');
   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","Über");
   w (2,"'+Stub','{{Stub}}\\n\\n',2","Stub");
   w (2,"'+Lückenhaft','{{lückenhaft}}\\n\\n',3","Lücke");
   //w (3,"'{{Gesundheitshinweis','}}',''","Gesundheitshinweis");
   w (3,"'{{subst:Hallo','}}',''","Hallo");  
   closedropdown();dropdown=false;   

   w (0,trenner,'','');
   w (4,"myReplace();","Replace");
   w (4,"myTypoKorr();","TypoKorr");
 } //if (isEdit)
   
 //if (!isSpecial) {
 //w (0,trenner,'','');
 //w (4,"eintragen(1);","QS");
 //w (4,"eintragen(2);","LA");
 //w (4,"eintragen(3);","SLA");
 //}

 if (isEdit) w (2,"'+URV','{{URV}} von [hier] --\~\~\~\~',1","URV");
 

 var indropdown = false;
 var ind = 0;
    
 closedropdown();
 
 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 : '', '</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) {
  if (!dropdown) {
   switch (was) {
    case 0 : xxx=xxx+lurl;break;
    case 1 : xxx=xxx+'<a href="'+lurl+'" target="'+targt+'">'+linktext+'</a>&nbsp; ';break;
    case 2 : xxx=xxx+'<a href="#" onclick="newtext('+ lurl +')">'+linktext+'</a>&nbsp; ';break;  	
    case 3 : xxx=xxx+'<a href="#" onclick="insertTags('+ lurl +')">'+linktext+'</a>&nbsp; ';break;  	   
    case 4 : xxx=xxx+'<a href="#" onclick="'+ lurl +'">'+linktext+'</a>&nbsp; ';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 absenden () {if (!debugme) {document.editform.wpSave.click();} else {alert ('Speichern');}}
  
 function myReplace() //BLueFiSH.as
 { 
   var alt=prompt('Altes Wort','');var neu=prompt('Neues Wort','');
   var i=tkorr(alt,neu);        
   if ( i > 0 )
   { alert('Es wurde '+i+' Mal <'+alt+'> durch <'+neu+' ersetzt.');
     document.editform.wpMinoredit.checked=true;
     document.editform.wpSummary.value=alt+' -> '+neu;
     document.editform.wpSummary.focus();
   }
   else
   { alert('Es wurde kein Vorkommen gefunden');
   }
 }
 
 /* Im nun folgenden das Skript mit dem sich recht leicht Schreibfehler korrigieren lassen
    (natürlich muss man bei Zitaten aufpassen) ;-) BLueFiSH.as */
 
 function myTypoKorr() // BLueFiSH.as
 {var 
    i=tkorr(' im wesentlichen ',' im Wesentlichen ') + 
      tkorr('Des Weiteren ','Des weiteren ') +
      tkorr(' daß ',' dass ') +
      tkorr(' ass ',' as ');
            
  if ( i > 0 )
   { alert('Es wurden '+i+' Schreibfehler korrigiert.');
     document.editform.wpMinoredit.checked=true;
     document.editform.wpSummary.value='typo';
     document.editform.wpSummary.focus();
   }
   else
   { alert('Es wurde kein Schreibfehler gefunden');
   }
 }
 
 function tkorr(alt,neu) { //Littl
  var i=0;
  while(document.editform.wpTextbox1.value.search(alt)!=-1){i++;
  	document.editform.wpTextbox1.value=document.editform.wpTextbox1.value.replace(alt,neu);}
  return i; 	
 } 	
 
 function contrib() // BLueFiSH.as
 { wer=prompt('IP oder Name eingeben!','');
   newwin = window.open("http://de.wikipedia.org/w/index.php?title=Spezial:Contributions&target="+wer,"Beiträge");
   newwin.focus();
 }
 
 // ============================================================
 // BEGIN Add Edit Link To Old Version Links (von Berlin-Jurist so weit ich weiß)
 // Revert-Fkt hinzugefügt + Beschränkung auf Seiten wo es Sinn macht. Littl.
 
 function AddEditLinkToOldVersionLinks() {
  
  var ishistory = (UrlParameters['action']=='history');	
  //var iscontrib = (document.URL.indexOf ('Spezial:Contributions') > 0 );
  if (ishistory || ((UrlParameters['diff']>'') && (UrlParameters['oldid']>'')) ) {
   
   var Edit = '(bearbeiten)';
   var Rv   = '(rv)';
 
   var first= true;
   for (var i=0; aNode = document.getElementsByTagName("a")[i]; i++)
   { // if it's a link to an old version but not a diff-link
     if ( (href = aNode.getAttribute("href")) && (href.search(/oldid=/) != -1) 
          && ( (href.search(/diff=/) == -1) )
        )
     { // Create Edit Link
       var EditNode = document.createElement('a');
       EditNode.setAttribute('href', href + '&action=edit#summary'); 
       var EditTextNode = document.createTextNode(Edit);
       EditNode.appendChild(EditTextNode);
       // Add Edit Link To Old Version Link
       aNode.parentNode.insertBefore( EditNode, aNode.nextSibling );
       // Insert whitespace before Edit Link
       aNode.parentNode.insertBefore( document.createTextNode(' '), aNode.nextSibling );
       // jump over inserted <a-Link
       i++;
 
       
        // Create RV Link
       if ((ishistory && !first) || (!ishistory)) {  
        var Rvnode = document.createElement('a');
        Rvnode.setAttribute('href', 'javascript:revertme("'+encodeURI(href)+'")');     
        var RvTextNode = document.createTextNode(Rv);
        Rvnode.appendChild(RvTextNode);
        aNode.parentNode.insertBefore( Rvnode, aNode.nextSibling );
        aNode.parentNode.insertBefore( document.createTextNode(' '), aNode.nextSibling );      
        i++;
       } 
       first=false;
     }
   }
  } 
 }
 // END Add Edit Link At Old Version Links
 // ============================================================
 
 // START Rechtschreibprüfung
document.write('<SCRIPT SRC="http://de.wikipedia.org/w/index.php?title=Benutzer:APPER/RP/js&action=raw&ctype=text/javascript"><\/SCRIPT>');
 // END Rechtschreibprüfung
 
 //******************************************  
 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]);
  }
 } //function readparams
 //******************************************
 
 
 function revertme (href) { //Littl
   var grund=prompt('Grund des Reverts:','Revert');
   if (grund != null) {
    grund=trim(grund);
    if (grund=='') grund='Revert';
    href=href + "&action=edit&" + speichernp + "=1&" + subjp + "=" + encodeURIComponent(grund);
    window.open (href);   
    window.focus();
   }  
 }	
  
 // 
 // LA und QS eintragen
 // Fragt nach der Begründung, füllt die Eingabefelder aus, und ruft die Löschkandidatenseite/QSSeite auf.
 // Modifiziert, ursprünglich von BLueFiSH.as
 

 //function eintragen(kurz, vorlage,seite) 
 function eintragen(typ) {
   switch (typ) {
    case 1 : {var kurz="QS"; var vorlage="subst:Qualitätssicherung"; var seite="Qualitätssicherung";break;}
    case 2 : {var kurz="LA"; var vorlage="subst:Löschantrag"; var seite="Löschkandidaten";break;}
    case 3 : {var kurz="SLA"; var vorlage="Löschen"; var seite="";break;}
   } 	
 	
   var lemma = ( UrlParameters["title"] > "" ) ?
         UrlParameters["title"] :
         decodeURIComponent((location.href.substr(location.href.indexOf("/wiki/") + 6,99))).split('#')[0]; 
    
   var grund=prompt(kurz+'-Grund:','');   
   if ( grund != null ) {
     grund=trim(grund); 
     var speichernpa = (autosave) ? "&" + speichernp + "=1" : "";
     if (typ == 1 || typ == 2 ) { //QS oder LA
      
       // Öffnen der LA-Seite, gleich zum Eintragen des LA, Texte werden als Parameter übergeben
       var uri=encodeURI('http://de.wikipedia.org/w/index.php?title=Wikipedia:'+seite+'/'+WPDatum+'&action=edit&section=new') +
                "&" + subjp + "=" + encodeURIComponent( '[[' + lemma + ']]' ) +
                "&" + textp + "=" + encodeURIComponent( grund + '\n--~~~~\n' ) + speichernpa;
       window.open(uri);
     }
 
 
   // bearbeiten der Artikelseite und eintragen lassen (macht aktion() weiter unten)     
 
     // Vorlage eintragen 
     window.focus(); 
     var txt = '{{'+vorlage+'}}\n\n'+grund+'\n--~~~~\n----\n\n\n';
     if (isEdit) {   // wir sind schon im Edit-Modus
      document.editform.wpTextbox1.value= txt + document.editform.wpTextbox1.value;
      document.editform.wpSummary.value=kurz+'+';
      document.editform.wpWatchthis.checked=false;
      if (autosave) absenden();
     }
     else // Wir müssen die Seite erst zum editieren öffnen
     { 
      uri="http://de.wikipedia.org/w/index.php" +
               "?title=" + encodeURIComponent(lemma) + "&action=edit" +
               "&" + subjp + "=" + encodeURIComponent(kurz+"+") +
               "&" + insp + "=" + encodeURIComponent(txt) + speichernpa;
      location.href = uri;
     }
   }
 }
 
 // 
 // Funktion aktion (früher "loeschkandidat")
 // Entnimmt Parameter aus der URI, fügt sie in die Textfelder ein und klickt ggf. auf "Speichern"
 //
 
 function aktion() {  //Littl
  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[speichernp] == "1") absenden();
 }
 
 var timeoutaktiv;
 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)}	 	   	
 }
 
 function Init() {     
   document.getElementById("column-one").style.paddingTop =
              (10+document.getElementById("quickba").clientHeight)+"px"; 
   if (navigator.userAgent.indexOf("Firefox") > 0 ) document.getElementById("quickba").style.position = "fixed";

    	
   if (!isEdit) {
    if (UrlParameters[reloadme] == "1") {document.getElementById('reloadme').checked=true; setreload();}  
    //Patch: in godmode-light.js ist ein fehler (ein space zwischen <strong> und (aktuell))
    if (godmodelight && (location.href.indexOf(':Contributions') != -1)) {    
      document.getElementById('bodyContent').innerHTML= //Patch für Bug in godmode-light.js
       document.getElementById('bodyContent').innerHTML.replace(/\<strong\>\(aktuell\)/gi,"<strong> (aktuell)");           
    }
      AddEditLinkToOldVersionLinks();
    }
    else
    {
      if (!isSpecial) aktion();                
    }
   if (!isSpecial && rechtschreibpruefung) spellcheck();
 }
 

if (window.addEventListener) {
  window.addEventListener("load", Init, false);
} else if (window.attachEvent) {
  window.attachEvent("onload", Init);
}

// window.onload = Init;
// if (godmodelight) document.write('<SCRIPT SRC="http://sam.zoy.org/wikipedia/godmode-light.js"><\/SCRIPT>');



// -----------------------------------------------------------------------------
// God-like Monobook skin
// (c) 2005 Sam Hocevar <sam@zoy.org>
// $Id: godmode-light.js 1029 2006-01-09 11:05:19Z sam $
// -----------------------------------------------------------------------------

// -----------------------------------------------------------------------------
// XMLHttpRequest support
// -----------------------------------------------------------------------------
if (document.implementation.createDocument) {
  var gml_xmlparser = new DOMParser();
}

function gml_XMLParse(string) {
  if (document.implementation.createDocument) {
    return gml_xmlparser.parseFromString(string, "text/xml");
  } else if (window.ActiveXObject) {
    var gml_xmldoc = new ActiveXObject("Microsoft.XMLDOM");
    gml_xmldoc.async = "false";
    ret = gml_xmldoc.loadXML(string);      
    if (!ret)
      return null;
    return gml_xmldoc.documentElement;
  }
  return null;
}

var gml_xmlhttp;

function HTTPClient() {
  var gml_http;
  if(window.XMLHttpRequest) {
    gml_http = new XMLHttpRequest();
  } else if (window.ActiveXObject) {
    try {
      gml_http = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (e) {
      try {
        gml_http = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (E) {
        gml_http = false;
      }
    }
  }
  return gml_http;
}

// -----------------------------------------------------------------------------
// MD5 hash calculator
// -----------------------------------------------------------------------------
// Version 2.1 Copyright (C) Paul Johnston 1999 - 2002.
// Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet
// Distributed under the BSD License
// See http://pajhome.org.uk/crypt/md5 for more info.
// -----------------------------------------------------------------------------
var hexcase = 0;
var b64pad  = "";
var chrsz   = 8;

function hex_md5(s){ return binl2hex(core_md5(str2binl(s), s.length * chrsz));}

function core_md5(x, len)
{
  x[len >> 5] |= 0x80 << ((len) % 32);
  x[(((len + 64) >>> 9) << 4) + 14] = len;

  var a =  1732584193;
  var b = -271733879;
  var c = -1732584194;
  var d =  271733878;

  for(var i = 0; i < x.length; i += 16)
  {
    var olda = a;
    var oldb = b;
    var oldc = c;
    var oldd = d;

    a = md5_ff(a, b, c, d, x[i+ 0], 7 , -680876936); d = md5_ff(d, a, b, c, x[i+ 1], 12, -389564586); c = md5_ff(c, d, a, b, x[i+ 2], 17,  606105819); b = md5_ff(b, c, d, a, x[i+ 3], 22, -1044525330); a = md5_ff(a, b, c, d, x[i+ 4], 7 , -176418897); d = md5_ff(d, a, b, c, x[i+ 5], 12,  1200080426); c = md5_ff(c, d, a, b, x[i+ 6], 17, -1473231341); b = md5_ff(b, c, d, a, x[i+ 7], 22, -45705983); a = md5_ff(a, b, c, d, x[i+ 8], 7 ,  1770035416); d = md5_ff(d, a, b, c, x[i+ 9], 12, -1958414417); c = md5_ff(c, d, a, b, x[i+10], 17, -42063); b = md5_ff(b, c, d, a, x[i+11], 22, -1990404162); a = md5_ff(a, b, c, d, x[i+12], 7 ,  1804603682); d = md5_ff(d, a, b, c, x[i+13], 12, -40341101); c = md5_ff(c, d, a, b, x[i+14], 17, -1502002290); b = md5_ff(b, c, d, a, x[i+15], 22,  1236535329);

    a = md5_gg(a, b, c, d, x[i+ 1], 5 , -165796510); d = md5_gg(d, a, b, c, x[i+ 6], 9 , -1069501632); c = md5_gg(c, d, a, b, x[i+11], 14,  643717713); b = md5_gg(b, c, d, a, x[i+ 0], 20, -373897302); a = md5_gg(a, b, c, d, x[i+ 5], 5 , -701558691); d = md5_gg(d, a, b, c, x[i+10], 9 ,  38016083); c = md5_gg(c, d, a, b, x[i+15], 14, -660478335); b = md5_gg(b, c, d, a, x[i+ 4], 20, -405537848); a = md5_gg(a, b, c, d, x[i+ 9], 5 ,  568446438); d = md5_gg(d, a, b, c, x[i+14], 9 , -1019803690); c = md5_gg(c, d, a, b, x[i+ 3], 14, -187363961); b = md5_gg(b, c, d, a, x[i+ 8], 20,  1163531501); a = md5_gg(a, b, c, d, x[i+13], 5 , -1444681467); d = md5_gg(d, a, b, c, x[i+ 2], 9 , -51403784); c = md5_gg(c, d, a, b, x[i+ 7], 14,  1735328473); b = md5_gg(b, c, d, a, x[i+12], 20, -1926607734);

    a = md5_hh(a, b, c, d, x[i+ 5], 4 , -378558); d = md5_hh(d, a, b, c, x[i+ 8], 11, -2022574463); c = md5_hh(c, d, a, b, x[i+11], 16,  1839030562); b = md5_hh(b, c, d, a, x[i+14], 23, -35309556); a = md5_hh(a, b, c, d, x[i+ 1], 4 , -1530992060); d = md5_hh(d, a, b, c, x[i+ 4], 11,  1272893353); c = md5_hh(c, d, a, b, x[i+ 7], 16, -155497632); b = md5_hh(b, c, d, a, x[i+10], 23, -1094730640); a = md5_hh(a, b, c, d, x[i+13], 4 ,  681279174); d = md5_hh(d, a, b, c, x[i+ 0], 11, -358537222); c = md5_hh(c, d, a, b, x[i+ 3], 16, -722521979); b = md5_hh(b, c, d, a, x[i+ 6], 23,  76029189); a = md5_hh(a, b, c, d, x[i+ 9], 4 , -640364487); d = md5_hh(d, a, b, c, x[i+12], 11, -421815835); c = md5_hh(c, d, a, b, x[i+15], 16,  530742520); b = md5_hh(b, c, d, a, x[i+ 2], 23, -995338651);

    a = md5_ii(a, b, c, d, x[i+ 0], 6 , -198630844); d = md5_ii(d, a, b, c, x[i+ 7], 10,  1126891415); c = md5_ii(c, d, a, b, x[i+14], 15, -1416354905); b = md5_ii(b, c, d, a, x[i+ 5], 21, -57434055); a = md5_ii(a, b, c, d, x[i+12], 6 ,  1700485571); d = md5_ii(d, a, b, c, x[i+ 3], 10, -1894986606); c = md5_ii(c, d, a, b, x[i+10], 15, -1051523); b = md5_ii(b, c, d, a, x[i+ 1], 21, -2054922799); a = md5_ii(a, b, c, d, x[i+ 8], 6 ,  1873313359); d = md5_ii(d, a, b, c, x[i+15], 10, -30611744); c = md5_ii(c, d, a, b, x[i+ 6], 15, -1560198380); b = md5_ii(b, c, d, a, x[i+13], 21,  1309151649); a = md5_ii(a, b, c, d, x[i+ 4], 6 , -145523070); d = md5_ii(d, a, b, c, x[i+11], 10, -1120210379); c = md5_ii(c, d, a, b, x[i+ 2], 15,  718787259); b = md5_ii(b, c, d, a, x[i+ 9], 21, -343485551);

    a = safe_add(a, olda);
    b = safe_add(b, oldb);
    c = safe_add(c, oldc);
    d = safe_add(d, oldd);
  }
  return Array(a, b, c, d);

}

function md5_cmn(q, a, b, x, s, t) { return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s),b); }
function md5_ff(a, b, c, d, x, s, t) { return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t); }
function md5_gg(a, b, c, d, x, s, t) { return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t); }
function md5_hh(a, b, c, d, x, s, t) { return md5_cmn(b ^ c ^ d, a, b, x, s, t); }
function md5_ii(a, b, c, d, x, s, t) { return md5_cmn(c ^ (b | (~d)), a, b, x, s, t); }

function safe_add(x, y)
{
  var lsw = (x & 0xFFFF) + (y & 0xFFFF);
  var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
  return (msw << 16) | (lsw & 0xFFFF);
}

function bit_rol(num, cnt)
{
  return (num << cnt) | (num >>> (32 - cnt));
}

function str2binl(str)
{
  var bin = Array();
  var mask = (1 << chrsz) - 1;
  for(var i = 0; i < str.length * chrsz; i += chrsz)
    bin[i>>5] |= (str.charCodeAt(i / chrsz) & mask) << (i%32);
  return bin;
}

function binl2hex(binarray)
{
  var hex_tab = hexcase ? "0123456789ABCDEF" : "0123456789abcdef";
  var str = "";
  for(var i = 0; i < binarray.length * 4; i++)
  {
    str += hex_tab.charAt((binarray[i>>2] >> ((i%4)*8+4)) & 0xF) +
           hex_tab.charAt((binarray[i>>2] >> ((i%4)*8  )) & 0xF);
  }
  return str;
}

// -----------------------------------------------------------------------------
// Our nice Revert functions
// -----------------------------------------------------------------------------
var gml_vandal, gml_editor, gml_url;

function PerformRevert() {
  var l, token = '', revert = false;
  // Look for '&fakeaction=rollback' in URL
  gml_url = location.pathname;
  l = location.search.substring(1).split('&');
  for (i = 0; i < l.length; i++) {
    var n = l[i].indexOf('=');
    var name = l[i].substring(0, n);
    if (name == 'fakeaction') {
      if (l[i].substring(n + 1) == 'rollback')
        revert = true;
    } else if (name == 'vandal') {
      gml_vandal = unescape(l[i].substring(n + 1));
    } else if (name == 'token') {
      token = unescape(l[i].substring(n + 1));
    } else if (name == 'title') {
      gml_url += '?' + l[i];
    }
  }
  if (!revert)
    return;
  document.getElementById('bodyContent').innerHTML = 'Please wait, reverting edits by ' + gml_vandal + '...';
  // Avoid XSS kiddies by using a special token
  if (token == '' || token != hex_md5(gml_url + gml_vandal + document.cookie)) {
    document.getElementById('bodyContent').innerHTML += '<br />Bad authentication token!';
    return;
  }

  gml_xmlhttp = HTTPClient();
  if (!gml_xmlhttp)
    return;
  history_url = gml_url + '&action=history&limit=50';
  document.getElementById('bodyContent').innerHTML += '<br />Getting article history (' + history_url + ')...';
  gml_xmlhttp.open("GET", history_url, true);
  gml_xmlhttp.onreadystatechange = RevertStepTwo;
  gml_xmlhttp.send(null);
}

function RevertStepTwo() {
  if (gml_xmlhttp.readyState != 4)
    return;
  var l;
  var oldid;
  // Get the vandal and new editor names
  gml_vandal = gml_vandal.replace(/_/g, ' ');
  gml_editor = '';
  // Hack for a MediaWiki bug
  xml = gml_xmlhttp.responseText.replace(/<body.*"ns-4">/, '<body class="ns-4">');
  doc = gml_XMLParse(xml);
  if (!doc || !doc.getElementById('pagehistory')) {
    document.getElementById('bodyContent').innerHTML += '<br />Failed to parse XML data returned by the server.';
    document.getElementById('bodyContent').innerHTML += '<br /><b>Hint: try to disable both "Enable section editing by right-clicking on section titles (JavaScript)" and "Edit pages on double click (JavaScript)" in your editing preferences until a proper fix is found</b>.';
    document.getElementById('bodyContent').innerHTML += '<br />Dump of the unparseable page : <br />' + xml.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');
    return;
  }
  l = doc.getElementById('pagehistory').getElementsByTagName('li');
  //l = doc.selectSingleNode('//*[@id="pagehistory"]').getElementsByTagName('li');
  for (i = 0; i < l.length; i++) {
    var name = l[i].getElementsByTagName('span')[0].getElementsByTagName('a')[0].innerHTML.replace(/_/g, ' ');
    if (i == 0 && name != gml_vandal) {
      document.getElementById('bodyContent').innerHTML += '<br />Error: Last editor is ' + name + ', not ' + gml_vandal + '!';
      return;
    } else if (i > 0 && name != gml_vandal) {
      oldid = l[i].getElementsByTagName('input')[0].value;
      gml_editor = name;
      break;
    }
  }
  if (gml_editor == '') {
    document.getElementById('bodyContent').innerHTML += '<br />Error: ' + gml_vandal + ' is the only editor!';
    return;
  }

  gml_xmlhttp = HTTPClient();
  if (!gml_xmlhttp)
    return;
  document.getElementById('bodyContent').innerHTML += '<br />Getting article edit form (GET' + gml_url + '&action=edit&oldid=' + oldid + ')...';
  gml_xmlhttp.open('GET', gml_url + '&action=edit&oldid=' + oldid, true);
  gml_xmlhttp.onreadystatechange = RevertStepThree;
  gml_xmlhttp.send(null);
}

function RevertStepThree() {
  if (gml_xmlhttp.readyState != 4)
    return
  var form, newform, l;
  // Insert the downloaded form in our current page, using
  // only hidden form inputs.
  doc = gml_XMLParse(gml_xmlhttp.responseText);
  form = doc.getElementById('editform');
  newform = document.createElement('form');
  l = form.getElementsByTagName('textarea');
  for (i = l.length; i--; ) {
    var t = document.createElement('input');
    t.type = 'hidden';
    t.name = l[i].name;
    t.value = l[i].value;
    newform.appendChild(t);
  }
  l = form.getElementsByTagName('input');
  for (i = l.length; i--; ) {
    if (l[i].name == 'wpSummary') {
      l[i].value = revertpage.replace(/\$1/g, gml_editor).replace(/\$2/g, gml_vandal);
    } else if (l[i].name == 'wpMinoredit') {
      l[i].value = '1';
    } else if (l[i].name == 'wpWatchthis') {
      if (!l[i].checked)
        continue; // Don’t touch the "watch" status
      l[i].value = "on";
    } else if (l[i].name == 'wpPreview') {
      continue;
    } else if (l[i].name == 'wpDiff') {
      continue;
    }
    l[i].type = 'hidden';
    newform.appendChild(l[i]);
  }
  newform.name = form.name;
  newform.method = form.method;
  newform.id = form.id;
  newform.action = form.action;
  document.getElementById('bodyContent').innerHTML += '<br />Submitting form...';
  document.getElementById('bodyContent').appendChild(newform);
  // Submit the form
  newform.submit();
}

// -----------------------------------------------------------------------------
// Add revert buttons to the page
// -----------------------------------------------------------------------------
function AddRevertButtons() {
  var l, article = '', vandal;
  // Add 'revert' links to a diff page
  l = document.getElementById('bodyContent').getElementsByTagName('td');
  for (i = 0; i < l.length; i++) {
    if (l[i].className == 'diff-otitle') {
      article = l[i].getElementsByTagName('a')[0].href.split('&')[0].replace(/[^\/]*\/\/[^\/]*/, '');
    } else if (l[i].className == 'diff-ntitle') {
      var toplink = l[i].getElementsByTagName('a')[0].href;
      vandal = l[i].getElementsByTagName('a')[1].title.split(':')[1];
      var t = l[i].innerHTML
      n = t.indexOf('</a>) <br') + t.indexOf('</A>) <BR') + 1; // XXX: WOW HACK!!!!
      if (n >= 0 && article != '' && toplink.indexOf('oldid=') == -1) {
        l[i].innerHTML = t.substring(0, n + 5) + ' &nbsp;&nbsp;&nbsp;<strong>[<a href="' + article + '&fakeaction=rollback&vandal=' + vandal + '&token=' + hex_md5(article + vandal + document.cookie) + '">' + rollbacklink + '</a>]</strong> ' + t.substring(n + 5, t.length);
      }
    }
  }
  // Add 'revert' links to a contributions page
  if (location.href.indexOf(':Contributions') != -1) {
    var c = document.getElementById('contentSub');
    var a = c.getElementsByTagName('a');
    if (a.length == 2) {
      vandal = a[0].innerHTML;
    } else {
      vandal = c.innerHTML.replace(/ \(.*/, '').replace(/.* /, '');
    }
    l = document.getElementById('bodyContent').getElementsByTagName('li');
    for (i = 0; i < l.length; i++) {
      var t = l[i].innerHTML
      // If we are already a sysop on this wiki, abort
      if (t.indexOf('>' + rollbacklink + '</a>]') != -1)
          break;
      //if (t.indexOf('&amp;diff=0') != -1) {
      if (t.indexOf('<strong> (') != -1) {
        article = l[i].getElementsByTagName('a')[0].href.split('&')[0].replace(/[^\/]*\/\/[^\/]*/, '');
        l[i].innerHTML += ' [<a href="' + article + '&fakeaction=rollback&vandal=' + vandal + '&token=' + hex_md5(article + vandal + document.cookie) + '">' + rollbacklink + '</a>]';
      }
    }
  }
}

// -----------------------------------------------------------------------------
// Modify the page once it is loaded
// -----------------------------------------------------------------------------
if (window.addEventListener) {
  window.addEventListener("load", PerformRevert, false);
  window.addEventListener("load", AddRevertButtons, false);
} else if (window.attachEvent) {
  window.attachEvent("onload", PerformRevert);
  window.attachEvent("onload", AddRevertButtons);
}






 // </nowiki> <- nicht löschen !!!




 // ********************
 // 
 // monobook.js von bdk 
 // 
 // ********************

/* Ausklappen aller Navigationsleisten auf speziellen Seiten, von http://de.wikipedia.org/wiki/Benutzer:D */

function UnFold() {
    var headers  = document.getElementsByTagName("h1");
    if (headers.length < 1)  return;        
    var title   = headers[0].firstChild.nodeValue;
    if (title != "Benutzer:Rauenstein/Überblick" && title != "Benutzer:Haring/Navigationsleisten mit deutschen Landkreisen und kreisfreien Städten" && title != "Benutzer:Triebtäter/Überblick")       return;
        for (i=1; i<=500; i++) {
        toggleNavigationBar(i);
    }
}

/* add an OnLoad event handler */
function addLoadEvent(func) {
    var oldOnLoad = window.onload;
    if (typeof window.onload == 'function') {
        window.onload = function() {
            oldOnLoad();
            func();
        }
    }
    else {
        window.onload = func;
    }
}

addLoadEvent(UnFold);

/* Kleinkram von http://en.wikipedia.org/wiki/User:Alphax/monobook.js */

function myLoadFuncs()
{
    // &action=purge
    addPurge();
    
    // add history link to new messages box
    newmessagehistory();
}

/* Zusätzliches Purge-Tab */

function addPurge()
{
    ta['ca-purge'] = ['g', 'Den internen Cache dieser Seite leeren'];
    if(!document.getElementById) return;
    var x = document.getElementById('ca-history');
    var tabs = document.getElementById('p-cactions').getElementsByTagName('ul')[0];
    if(!x) return;
    if(x.children) x = x.children[0];
    else x = x.childNodes[0];
    
    var pf = document.createElement('form');
    pf.action = '?action=purge';
    pf.method = 'POST';
    pf.id = 'pf';
    x.appendChild(pf);
    
    addlilink(tabs, 'javascript:document.getElementById("pf").submit();', 'purge', 'ca-purge');
}

/* Zusätzlicher Versionslink im K***balken */

function newmessagehistory()
{
    var divs = document.getElementsByTagName('div');
    var talkmessagebox;
    
    for(var x = 0; x < divs.length; ++x)
    {
        if(divs[x].className.indexOf('usermessage') != -1)
        {
            talkmessagebox = divs[x];
            x = divs.length; // force break
        }
    }
    
    divs = ''; // release divs?
    if(!talkmessagebox) return false;
    
    var newmessagelink = talkmessagebox.getElementsByTagName('a')[0];
    
    var historylink = document.createElement('a');
    historylink.href = newmessagelink.href.replace(/\/wiki\//, '/w/index.php?title=') + '&action=history';
    historylink.className = 'extiw';
    historylink.appendChild(document.createTextNode('changes'));
    
    var talkmessagetext = 'Du hast ';
    talkmessagebox.innerHTML = talkmessagetext;
    
    talkmessagebox.appendChild(newmessagelink);
    talkmessagebox.appendChild(document.createTextNode(' ('));
    talkmessagebox.appendChild(historylink);
    talkmessagebox.appendChild(document.createTextNode(')'));
}

/* Sonstiges, alles und erstmal nichts */
/* document.write('<SCRIPT SRC="http://meta.wikimedia.org/w/index.php?title=User:D/monobook.js&action=raw"><\/SCRIPT>'); */




function moveEditsection() {

	var editsections = new Array();
	var divs = document.getElementById("bodyContent").getElementsByTagName("div");
	for(var i = 0; i < divs.length; i++) {
		if(divs[i].className == "editsection") {
			editsections.push(divs[i]);
		}
	}

	if (editsections.length != 0) {

		var i = 0;
		var element, heading;
		while (editsections[i] != null) {
			element = editsections[i];
			heading = element.nextSibling;
			while(!/^H[2-6]$/.test(heading.nodeName)) {
				heading = heading.nextSibling;
			}

			var spanElement = document.createElement("span");
			var spaceNode = document.createTextNode(" ");
			heading.appendChild(spaceNode);
			heading.appendChild(spanElement);
		
			spanElement.style.fontSize = "x-small";
			spanElement.style.fontWeight = "normal";
		
			while (element.childNodes.length != 0) {
				spanElement.appendChild(element.childNodes[0]);
			}
			element.parentNode.removeChild(element);
			i++;
		}
	}
}
aOnloadFunctions[aOnloadFunctions.length] = moveEditsection;



//
// Wikiminiatlas
// [[Benutzer:Dschwen/wikiminiatlas2.js]] - diese Zeile bitte mitkopieren
//

document.write('<script type="text/javascript" src="' 
     + 'http://de.wikipedia.org/w/index.php?title=User:Dschwen/wikiminiatlas2.js' 
     + '&action=raw&ctype=text/javascript&dontcountme=s"></script>');


/** 
 * shows the references tags contents when a reference link is clicked
 * and hides it when a backlink is clicked 
 */
function referencesOnDemand() {
    /** finds the references tag which sadly has no id */
    function findReferences() {
        var ols = document.getElementsByTagName("ol");
        for (var i=0; i<ols.length; i++) {
            var ol  = ols[i];
            if (ol.className == "references")    return ol;
        }
        return null;
    }
    
    /** show the references tag */
    function showReferences() {
        references.style.display    = null;
        return true;
    }
    
    /** hide the references tag */
    function hideReferences() {
        references.style.display    = "none";
        return true;
    }
    
    var references  = findReferences();
    if (!references)    return;

    // patch reference links to show the references tag
    var sups = document.getElementsByTagName("sup");
    for (var i=0; i<sups.length; i++) {
        var sup = sups[i];
        if (sup.className != "reference")   continue;
        var a   = sup.firstChild;
        a.onclick = showReferences; 
    }
    
   // patch reference backlinks to hide the references tag
    var as  = references.getElementsByTagName("a");
    for (var i=0; i<as.length; i++) {
        var a   = as[i];
        if (!/#_ref-/(a.href))  continue;
        a.onclick   = hideReferences;
    }

    // initially hide references tag
    hideReferences();
}
aOnloadFunctions[aOnloadFunctions.length] = referencesOnDemand;