Benutzer:C-M/monobook-fast.js
aus Wikipedia, der freien encyclopedia
// var debugme=false; var autosave=true; var version='P098k'; var aerhistory = true; var godmodenewstyle = true; // neuer Rollback-Kommentartext? var editlinkoldversion = true; var diffwidth = true; // immer gleiche Breite der vergleichenden Versionen (diff.table)? var difffontsize = '85%'; var user = wgUserName ; // username wird automatisch übernommen var usersignature = '\~\~\~\~'; 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(); var WPDatum3 = Monate[jetzt.getMonth()] + ' ' + Jahr; var WPDatum4 = Jahr + '-' + LeadingZero(jetzt.getMonth() + 1); // Lemma-Varianten (work in progress) + redundant zu addLogsLink etc. // get page title var pagetitle = wgPageName; var spagetitle = wgTitle; // do real spaces; fix for lemmas with '&' var ptitle = pagetitle.split('_').join(' ').split('&').join('%26'); var sptitle = spagetitle.split('_').join(' ').split('&').join('%26'); // do + escaped var pesctitle = ptitle.split(' ').join('+'); var spesctitle = sptitle.split(' ').join('+'); // Komma-Lemma für Personen var personlemma = spagetitle; var titlesplit = spagetitle.split(' '); if (titlesplit.length > 1) { personlemma = titlesplit[titlesplit.length-1] + ','; for (i=0; i<(titlesplit.length-1); i++) personlemma=personlemma + " "+titlesplit[i]; } // get URL parameters (used for page type variables) var UrlParameters = new Array (); readparams(); function readparams() { var asReadInUrlParameters; var asReadInUrlParameter; // Get URL parameters asReadInUrlParameters = location.search.substring(1, location.search.length).split("&"); for (i = 0; i < asReadInUrlParameters.length; i++) { asReadInUrlParameter = asReadInUrlParameters[i].split("="); UrlParameters[decodeURIComponent(asReadInUrlParameter[0])] = decodeURIComponent(asReadInUrlParameter[1]); } } // page type variables: namespaces var isArticle = (mw.config.get('wgNamespaceNumber') == 0); var isArticleTalk = (mw.config.get('wgNamespaceNumber') == 1); var isBild = (wgCanonicalNamespace == "Image"); var isCategory = (wgCanonicalNamespace == "Category"); var isTemplate = (wgCanonicalNamespace == "Template"); var isGeneric = false; if ((!isBild) && (!isCategory) && (!isTemplate)) isGeneric = true; var isProject = (wgCanonicalNamespace == "Project"); // page type variables: namespace == -1 var isSpecial = (wgCanonicalNamespace == "Special"); var isRestore = (isSpecial && (wgCanonicalSpecialPageName == "Undelete")); var isContrib = (isSpecial && (wgCanonicalSpecialPageName == "Contributions")); var isWatchlist = (isSpecial && (wgCanonicalSpecialPageName == "Watchlist")); // page type variables: namespace == -1 var isTalk = (!isSpecial && isOdd(mw.config.get('wgNamespaceNumber'))); // page type variables: other stuff var isPHP = (document.URL.indexOf('index.php') > 0); var isDiff = UrlParameters["diff"]; var isEdit = ((UrlParameters['action']=='edit') || (UrlParameters['action']=='submit')); var isHistory = (UrlParameters['action']=='history'); // userpage/name stuff, vor allem für IPs var userPageOwner = ""; if (isContrib) { if (UrlParameters['target']) userPageOwner = UrlParameters['target'].split('+').join('_'); else { userPageOwner = decodeURIComponent(location.href.substring(location.href.indexOf("/wiki/") + 6)).split('#')[0]; userPageOwner = userPageOwner.substring(userPageOwner.indexOf("Beiträge/") + 9); } } // page type variables: user & user discussion lumped together var isUserpage = ( (wgCanonicalNamespace == "User") || (wgCanonicalNamespace == "User_talk") ); var isUserMainpage = false; if (isUserpage) if (wgTitle == wgTitle.split("/")[0]) { isUserMainpage = true; userPageOwner = wgTitle; } // handelt es sich um eine IP? var isIPUser = false; if (userPageOwner != "") if (userPageOwner.match(/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/) != null) if ((userPageOwner.split(".")[0] > 1) && (userPageOwner.split(".")[0] < 255)) isIPUser = true; // Admin functions var adminflag = false; if (isAdmin()) adminflag = true; /* * ab hier wird der Quickbar (der Kasten oben links) zusammengebaut * * zuerst die allgemeinen Variablen (hier bitte nix ändern!) */ var Quickbar = '<div class="pBody noprint" id="p-quickbar" style="position:absolute; top:5px; z-index:10; width:14em;">'; var xxx = ''; var trenner='<hr />'; var br ='<br />'; var qbtarget = '_self'; var dropdown = false; var scrpt = ''; var scrptn = 0; var indropdown; var ind; /* * Quickbar-Zusammenbau, Teil 1: * * zuerst die Reihenfolge der einzelnen Abschnitte: */ function buildQuickbar() { qbImageTemps(); qbUsertalkTemps(); // Automatisches Bausteinsetzen qbAutoTemps(); } /* * Quickbar-Zusammenbau, Teil 2: * * die Belegung der einzelnen Abschnitte */ function qbImageTemps() { if (!isBild) return; if (!isEdit) return; w (0,trenner,'Bildbausteine',''); w (4,"nowcomm();","NowCommons"); w (2,"'+BLU','{{subst:BLU}}\\n\\n',3","BLU"); w (2,"'+BLU-User','{{subst:BLU-User}}\\n\\n',3","BLU-User"); } function qbUsertalkTemps() { if (!isUserpage) return; if (!isTalk) return; if (!isEdit) return; w (0,trenner,'Benutzerbausteine',''); w (3,"'{{subst:Benutzer:C-M/VHinweis}}\\n','',''",'<b>VHinweis</b>'); w (3,"'{{subst:Benutzer:C-M/VBeobachtung}}\\n','',''",'<b>VBeobachtung</b>'); // w (3,"'{{subst:Benutzer:PDD/Greetings/Hallo|" + user + "}} " + usersignature + "\\n','',''","Hallo"); w (3,"'{{subst:Benutzer:PDD/Greetings/HalloG|" + user + "|" + usersignature + "}}\\n','','','Willkommen!'","Hallo",'','Baustein PDD:Hallo'); w (3,"'{{subst:Benutzer:PDD/Greetings/Danke}} " + usersignature + "\\n','',''",'Danke','','Baustein PDD:Danke'); w (3,"'{{subst:Benutzer:Complex/Greetings/TestMitStopschild}} " + usersignature + "\\n','',''",'Stop','','Baustein Complex:TestMitStopschild'); // Abwandlung von [[Benutzer:LKD/V/VHinweis]] // w (3,"'{{subst:Benutzer:Blah/Vorlage:Vandale}}\\n','',''",'Vand','','Baustein Blah:Vandale'); // w (3,"'{{subst:Benutzer:Tobi B./Vorlage:Löschvandale}} " + usersignature + "\\n','',''",'LöschV','','Baustein Tobi B.:Löschvandale'); w (3,"'{{subst:Benutzer:PDD/Greetings/KinderKinder!}}\\n','',''",'Kind','','Baustein PDD:Kind'); w (3,"'{{Diskussion}}\\n','',''",'Sign!','','{{Diskussion}}'); w (3,"'{{subst:Vorschau}} " + usersignature + "\\n','',''",'Vorschau','','{{subst:Vorschau}}'); w (3,"'{{subst:Benutzer:PDD/Greetings/Linkspam}} " + usersignature + "\\n','',''",'Linkspam','','Baustein PDD:Linkspam'); // w (3,"'{{subst:Benutzer:Complex/Greetings/WP-WEB}} " + usersignature + "\\n','',''",'LinkspamC','','Baustein Complex:WP-WEB'); // Abwandlung von [[Benutzer:LKD/V/LHinweis]] if (adminflag) w (3,"'{{subst:Benutzer:LKD/V/ALoesch}} " + usersignature + "\\n','',''",'SLA-ex','','Autorenbenachrichtigung nach Schnelllöschung'); } function qbAutoTemps() { if (isSpecial && !isContrib) return; w (0,trenner,'Auto-Bausteine',''); if (( isGeneric) && (!isSpecial)) w (4,"eintragen(1);","QS+","","+Qualitätssicherung"); if (( isGeneric) && (!isSpecial)) w (4,"eintragen(5);","URV+","","+URV"); if (( isGeneric) && (!isSpecial)) w (4,"eintragen(2);","LA+","","+Löschantrag"); if (( isBild) && (!isSpecial)) w (4,"eintragen(4);","BildLA+","","+Löschantrag Bild"); // if (( isBild) && (!isSpecial)) w (4,"eintragen(9);","BLU+","","+BLU"); if (( isCategory) && (!isSpecial)) w (4,"eintragen(7);","KatLA+","","+Löschantrag Kategorie"); if (( isTemplate) && (!isSpecial)) w (4,"eintragen(8);","VorLA+","","+Löschantrag Vorlage"); if ( (!isSpecial)) w (4,"eintragen(3);","SLA+","","+Schnelllöschantrag"); if (( isContrib) || ( isUserpage)) w (4,"eintragen(6);","VANDAL+","","+Vandalismusmeldung"); if (wgPageName == "Wikipedia:Spielwiese") w (4,"eintragen(10);","SP-Reset","","Spielwiese zurücksetzen"); } /* * hier wird der Quickbar in die Seite geschrieben * (ab hier bitte nichts ändern) */ buildQuickbar(); document.write(Quickbar); if (typeof(version) == 'undefined') var version = "?"; if (!isEdit || isPHP) { document.write( '<div align=right>', '<a href="/w/index.php?title=Spezial%3APrefixindex&from=',user, '&namespace=2" target="', qbtarget, '" title="Meine Seiten im Benutzernamensraum">', (user.split(' ')[0].length < 10) ? user.split(' ')[0] : 'MyPages', '</a>', '</div>'); } document.write(xxx,'</div>'); if (scrpt > '') { document.write('<script> function _doopt (was) { switch (was) {', scrpt, '}}<\/script>'); scrpt=''; } // // ab hier functions // function w (was,lurl,linktext,targt,title) { if (!title) title=linktext; title=''; if (!dropdown) { switch (was) { case 0 : xxx=xxx+lurl;break; case 1 : xxx=xxx+'<a href="'+lurl+'" target="'+targt+'" title="'+title+'">'+linktext+'</a> ';break; case 2 : xxx=xxx+'<a href="#" onclick="newtext('+ lurl +')" title="'+title+'">'+linktext+'</a> ';break; case 3 : xxx=xxx+'<a href="#" onclick="insertTagsWrapper('+ lurl +')" title="'+title+'">'+linktext+'</a> ';break; case 4 : xxx=xxx+'<a href="#" onclick="'+ lurl +'" title="'+title+'">'+linktext+'</a> ';break; } } //if else //todo: Hilfe bei Dropdowns. Benutzt die überhaupt jemand???? { var ltext='__________'.substr(1,ind)+linktext; switch (was) { case 0 : if (lurl==br) {xxx=xxx+'<option>'+linktext+'</option>';ind=2;} else if (lurl==trenner) newdropdown(linktext); break; case 1 : xxx=xxx+'<option value="1|'+lurl+'">'+ltext+'</option>';break; case 2 : xxx=xxx+'<option value="2|'+scrptn+'">'+ltext+'</option>'; scrpt=scrpt+'case '+scrptn+':newtext('+lurl+');break;';scrptn++;break; case 3 : xxx=xxx+'<option value="3|'+scrptn+'">'+ltext+'</option>'; scrpt=scrpt+'case '+scrptn+':insertTagsWrapper('+lurl+');break;';scrptn++;break; case 4 : xxx=xxx+'<option value="4|'+scrptn+'">'+ltext+'</option>'; scrpt=scrpt+'case '+scrptn+':'+lurl+';break;';scrptn++;break; } //switch } //else } //w function dodropdown (aktion) { var zutun = aktion.split('|'); var was = Number(zutun[0]); var wie = zutun[1]; switch (was) { case 1 : window.open (wie); break; case 2 : _doopt (Number(wie)); break; case 3 : _doopt (Number(wie)); break; case 4 : _doopt (Number(wie)); break; } //switch } //dodropdown function newdropdown (oname) { closedropdown(); xxx=xxx+'<select size=1 onchange="dodropdown(this.value);" style="width:135px;font-size:9px;">'; if (oname > '') {xxx=xxx+'<option>'+oname+'</option>';} indropdown = true; ind=2; } function closedropdown () { if (indropdown) xxx=xxx+'</select>'; indropdown = false; } function newtext (subj,text,wo) { //wo=1 : Text austauschen //wo=2 : Text am Ende anhängen //wo=3 : Text vorne Einfügen if (subj > "") { if (document.editform.wpSummary.value > "") document.editform.wpSummary.value += ", "; document.editform.wpSummary.value = document.editform.wpSummary.value + subj; } switch (wo) { case 1 : document.editform.wpTextbox1.value=text+'\n'; break; case 2 : document.editform.wpTextbox1.value=document.editform.wpTextbox1.value+'\n'+text;break; case 3 : document.editform.wpTextbox1.value=text+'\n'+document.editform.wpTextbox1.value;break; } document.editform.wpTextbox1.focus(); } function insertTagsWrapper(tagOpen, tagClose, sampleText, subj) { if (subj > "") { if (document.editform.wpSummary.value > "") document.editform.wpSummary.value += ", "; document.editform.wpSummary.value = document.editform.wpSummary.value + subj; } insertTags(tagOpen, tagClose, sampleText) } // Krimskrams function isEven(myNumber) { return (myNumber % 2 == 0); } function isOdd(myNumber) { return (! isEven(myNumber)); } function LeadingZero(x) { return (x >= 10 || x < 0 ? "" : "0") + x; } function isAdmin() { var specialrights = false; if (typeof wgUserGroups != 'object') return(specialrights); if (typeof wgUserGroups[0] != 'string') return(specialrights); for (i=0;i<wgUserGroups.length;i++) { if (wgUserGroups[i] == "sysop") specialrights = true; } return(specialrights); } // Funktion: importPage() // zum Einbinden der Module function importPage(seite, lang) { // all languages support name='User:'; // international name, works in all wikipedias if(!lang) lang = wgContentLanguage; // new version seite = 'http://' + lang + '.wikipedia.org' + wgScriptPath + '/index.php?title=' + name + seite + '&action=raw&ctype=text/javascript&smaxage=2678400&dontcountme=s'; var head = document.getElementsByTagName('head').item(0); var js = document.createElement('script'); js.setAttribute('type', 'text/javascript'); js.setAttribute('src', seite); js.setAttribute('charset', 'utf-8'); head.appendChild(js); return false; // old version // document.write('<SCRIPT TYPE="text/javascript" SRC="http://' + lang // + '.wikipedia.org/w/index.php?title=' + name + seite // + '&action=raw&ctype=text/javascript&smaxage=2678400&dontcountme=s"><\/SCRIPT>'); } // ***** FOOT-Block ***** // <- nicht löschen!!!
// ausgelagerte obligatorische Funktionen importPage('PDD/helperFunctions.js'); // Benutzer:PDD/helperFunctions.js importPage('PDD/eintragen.js'); // Benutzer:PDD/eintragen.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 }
// importPage('PDD/godmode-light.js'); // Benutzer:PDD/godmode-light.js
// Revert addEditAndRevertLinks if (!(!aerhistory && isHistory) && !isEdit) { if (editlinkoldversion || revertwithreason) importPage('C-M/addEditAndRevertLinks.js'); // }
importPage('C-M/morebits.js'); importPage('C-M/twinklefluff.js'); importPage('C-M/twinklespeedy.js'); if (wgCanonicalNamespace == "User_talk"){ addButton('http://www.christophmueller.org/wikipedia/button_vh.png','VHinweis','{'+'{'+'subst:Benutzer:C-M/VHinweis'+'}'+'}\n',,,'mw-editbutton-vh'); addButton('http://www.christophmueller.org/wikipedia/button_vb.png','VBeobachtung','{'+'{'+'subst:Benutzer:C-M/VBeobachtung'+'}'+'}\n',,,'mw-editbutton-vb'); addButton('http://www.christophmueller.org/wikipedia/button_web.png','Linkspam','{'+'{'+'subst:Benutzer:Complex/Greetings/WP-WEB'+'}'+'}\n',,,'mw-editbutton-web'); addButton('http://www.christophmueller.org/wikipedia/button__leer.png',,,,,'clear'); } //</nowiki>