Zum Inhalt springen

Benutzer:PDD/monobook.js

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 30. April 2006 um 11:10 Uhr durch PDD (Diskussion | Beiträge) (+addeditsection0). Sie kann sich erheblich von der aktuellen Version unterscheiden.

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
  • Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
 // 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]] (2006-04-22)
 
 // Änderungen PDD:
 // - modularisiert
 // - ein paar Zusatzskripte übernommen
 //   (Gänsefüßchen ersetzen, Admins markieren, doppelte Links anzeigen...)
 // - kleinere Fixes, myTypoKorr() entfernt
 // - automatische Signatur von [[Benutzer:Olliminatore]]
 // - Markierung von "Sonderzeichenbenutzernamen"
 // - "Nullabschnitt" separat editierbar
 
 // ab hier Text aus Originalversion von Littl:
 // getestet mit Firefox und IE
 // am besten monobook.css gleich mitkopieren.
 //
 // 21.02.06 - optional : Tooltips unter IP-Contributions Links für RIPE-Info
 //
 // 19.02.06 - Textbausteine für Bilder (NowCommons mit Abfrage des neuen Namens und Bild-Lizenz-fehlt)
 //          - *Automatisierter Löschantrag für Bilder
 //	     - optional : (rv) sind minor-Edits.
 //
 // 17.02.06 - Version von Schwalbe übernommen. 
 //          - Appers Rechtschreibprüfung deaktiviert,
 //	     - Godmode-Light durch selbst modifizierte, hoffentlich funktionierende Version ersetzt.
 //           Muss alles noch getestet werden. Bin weiter auf Suche nach Bugs die währen meiner Abwesenheit durch neue Mediawikiversionen entstanden sind.
 //
 // (2005)   *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".
  
 // *************** SETUP *****************************************
 var user  = 'PDD';	        // <- bitte beim Kopieren anpassen !!!
 var usedropdown = false;        // Wenn keine Dropdowns gewünscht sind, hier false eintragen!
 var autosave = true;            // automatisches Speichern von QS/LA/SLA/BildLA-Einträgen?
 var rvisminor = true;           // sind Reverts mit "(rev)"-Link Minor-Changes?
 var timeout = 50000;            // 50 Sekunden auf das Neuladen der Seite warten
 
 // ausgelagerte Funktionen:
 var ripe = false;               // Ripe - Tooltips?
 var rechtschreibpruefung = false;  // APPERs Rechtschreibprüfung?
 var godmodelight = true;        // "Zurücksetzen" einblenden
 var moveeditsection = true;     // Links zum Abschnitt bearbeiten direkt neben Überschrift?
 var beschriftungen = true;      // kosmetische Änderungen an der MediaWiki-Oberfläche
 var showredundantlinks = true;  // zeigt doppelte Links an
 var hideown = false;            // eigene Änderungen in Beobachtungsliste verstecken
 var markadmins = true;          // Admins etc. besonders hervorheben
 var markutf8 = true;            // Sonderzeichenbenutzernamen besonders hervorheben
 var signing = false;            // *NEU* aut. Unterschrift
 var addeditsection0 = true;     // TAB zum Editieren des nullten Abschnitts einer Seite
 
 var revlinkshowuser = true;    // beim Revertieren über (Rev)-Link letzten Benutzer angeben?
 
 var zeigeversion = true;  
 var debugme = false;
 var NavigationBarShowDefault = 0; // Alle Navi-Leisten einklappen
 
 // **************** Setup Ende ***********************************
 
 // <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: 14em;">';
 var version  = 'P093';
 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 isBild   = ( document.URL.indexOf ( 'Bild:' ) > 0 );
 var isEdit   = ( document.URL.indexOf ( 'action=edit' ) > 0 || document.URL.indexOf ( 'action=submit' ) > 0);
 var isSpecial= ( document.URL.indexOf ( 'Spezial:' ) > 0);
 var isRestore= ( document.URL.indexOf ( 'Spezial:Undelete' ) > 0);
 var isPHP =    ( document.URL.indexOf ( 'index.php' ) > 0);
 
 //uri-parameter für aktion() und revertme()
 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
 
 //
 // Ab hier der Inhalt des "Fensters" oben links
 //
 if (usedropdown) {
   w (0,trenner,'--Wikipedia--','');
 }
 
 w (1,'/wiki/Hilfe:MediaWiki','Hilfe','_blank');
 w (1,'/wiki/Wikipedia:Fragen zur Wikipedia','FzW','_blank');
 w (1,'/wiki/Wikipedia:Abkürzungen','WP:xx','_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&days=7&limit=250','RCs','_blank');
 w (1,'/wiki/Spezial:Contributions/newbies','NCs','_blank');
 w (1,'/wiki/Spezial:Newpages','New','_blank');
 w (1,'/wiki/Spezial:Log/newusers','Newbies','_blank');
 w (1,'/wiki/Spezial:Log','Log','_blank');
 
 w (0,br,'--More Special--','');
 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 (1,'/wiki/Wikipedia:Löschkandidaten/Bilder','BildLK','_blank');
 w (1,'/wiki/Kategorie:Wikipedia:Schnelllöschen','SLK','_blank');
 
 w (0,trenner,'--Externe--','');
 w (1,'http://tools.wikimedia.de/~kate/cgi-bin/count_edits?user='+user+'&dbname=dewiki_p','Kate','_blank');
 w (1,'http://tools.wikimedia.de/~interiot/cgi-bin/count_edits?user='+user+'&dbname=dewiki_p','(+)','_blank');
 w (1,"http://www.ripe.net/whois",'ripe','_blank');
 w (1,"http://www.affenkrieger.de/wiki/wikicc.php",'URV-Test','_blank');
 w (1,"http://www.copyscape.com",'copyscape','_blank');
 w (1,"http://www.canoo.net",'canoo','_blank'); 
 w (1,"http://www.cia.gov/cia/publications/factbook/index.html",'Factbook','_blank');
 // 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?");
 
 closedropdown();
 dropdown=false;
 
 if (isEdit && !isBild) {
   w (0,trenner,'','');
 
   w (3,"br,'',''",'br');   
   w (3,"'†','',''",'†');
   w (3,"'<!-- ',' -->',''",'// Comment');
   w (0,br,'','');
   w (3,"'<small>','</small>',''",'small');
   w (3,"'<s>','</s>',''",'<s>strike</s>');
   w (3,"'<u>','</u>',''",'<u>under</u>');
   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/Vorlage:Hallo}} \~\~\~\~\\n','',''","Hallo");  
   w (3,"'{{subst:Benutzer:RoswithaC/Danke}} \~\~\~\~\\n','',''",'Danke');
   w (3,"'{{subst:Benutzer:PDD/Vorlage:Kinderkinder}}\\n','',''",'Kind');
   w (3,"'{{Diskussion}}\\n','',''",'Sign!');
   w (3,"'{{subst:Vorschau}} \~\~\~\~\\n','',''",'Vorschau');
   w (3,"'{{subst:Benutzer:PDD/Vorlage:Linkspam}} \~\~\~\~\\n','',''",'Linkspam');
   closedropdown();dropdown=false;
 
   w (0,trenner,'','');
   w (4,"myReplace();","Replace");
   //w (4,"myTypoKorr();","TypoKorr");
   //w (4,"spellcheck();","Spellchk");
   w (4,"ReplaceQuoteSigns();","FixQuotes");
   w (4,"ReplaceMarkup();","FixMarkup");
 } //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) {
   w (0,trenner,'','');
   if (!isBild) w (4,"eintragen(1);","QS");
   if (!isBild) w (4,"eintragen(2);","LA");
   if ( isBild) w (4,"eintragen(4);","LABILD");   
   if (!isBild) w (4,"eintragen(3);","SLA");
   if (!isBild) w (4,"eintragen(5);","URV");
 }
 
 //if (isEdit) w (2,"'+URV','{{URV}} von [hier] --\~\~\~\~',1","URV");
 
 if (isRestore) {
   w (0,trenner,'','');
   w (4,"TaggAll();","Alle Versionen, außer?");
 } //if (isRestore)
 
 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 nowcomm() {  
  var lemma=prompt('Neuer Dateiname',getLemma());
  if (lemma != null ) newtext('NowCommons','{{NowCommons|' + lemma +'}}',3);
 }	
  
 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');
   }
 }
 
 function importPage(seite) //BLueFiSH.as
 {
  document.write('<SCRIPT SRC="http://de.wikipedia.org/w/index.php?title='+ seite +'&action=raw&ctype=text/javascript"><\/SCRIPT>');
 }
 
 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();
 }
 
 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 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 getLemma () { //Littl
   var lemma =  ( UrlParameters["title"] > "" ) ?
              UrlParameters["title"] :
              decodeURIComponent((location.href.substr(location.href.indexOf("/wiki/") + 6,99))).split('#')[0];          
   if (lemma.substr(0, 5) == "Bild:") lemma=lemma.slice(5);
   return lemma;
 }
 
 // ausgelagerte obligatorische Funktionen
 importPage('Benutzer:PDD/addEditLinkToOldVersionLinks.js');
 importPage('Benutzer:PDD/eintragen.js');
 importPage('Benutzer:PDD/replaceQuoteSigns.js');
 importPage('Benutzer:PDD/markStimmrecht.js');
 importPage('Benutzer:BLueFiSH.as/JS/markup');
 
 // ausgelagerte optionale Funktionen (Load in Init())
 if (ripe) importPage('Benutzer:PDD/tooltips.js');
 if (markadmins) importPage('Benutzer:PDD/markAdmins.js');
 if (markutf8) importPage('Benutzer:PDD/markUTF8.js');
 
 // ******************** Init ****** Littl ************************************************* 
 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();
    }
    AddEditLinkToOldVersionLinks(revlinkshowuser);
    }
    else
    {
      if (!isSpecial)
        aktion();
    }
 
    if (ripe) ipcontribs();
    if (markadmins) MarkAdmins();
    if (markutf8) MarkUTF8();
 }
 aOnloadFunctions[aOnloadFunctions.length] = Init;
 
 if (ripe) initmtt();
 
 // ****** Rechtschreibprüfung von Apper *********
 if (!isSpecial && rechtschreibpruefung) importPage('Benutzer:APPER/RP/js');
 
 // ausgelagerte optionale Funktionen (Autoload)
 if (godmodelight) importPage('Benutzer:PDD/godmode-light.js');
 if (moveeditsection) importPage('Benutzer:PDD/moveEditsection.js');
 if (beschriftungen) importPage('Benutzer:PDD/changeBeschriftungen.js');
 if (showredundantlinks) importPage('Benutzer:PDD/showRedundantLinks.js');
 if (hideown) importPage('Benutzer:PDD/hideOwn.js');
 if (signing) importPage('Benutzer:Olliminatore/Signatur.js');
 if (addeditsection0) importPage('Benutzer:PDD/addEditSection0.js');
 
 // </nowiki> <- nicht löschen!!!