Benutzer:DerHexer/monobook.js
Erscheinungsbild
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
// 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]);
}
}
function fillActionPage() {
if (UrlParameters["deletereason"] > "") {
if (UrlParameters["deletereason"] != 'undefined') {
document.getElementById("deleteconfirm").wpReason.value = UrlParameters["deletereason"];
}
window.setTimeout(function() { document.getElementById("deleteconfirm").wpConfirmB.click(); }, 100);
}
if (UrlParameters["blockreason"] > "" && UrlParameters["blockduration"] > "") {
document.forms["blockip"].wpBlockReason.value = UrlParameters["blockreason"];
if (UrlParameters["blockduration"].match(/\s/) || UrlParameters["blockduration"] == 'indefinite') {
document.forms["blockip"].wpBlockOther.value = UrlParameters["blockduration"];
} else if (UrlParameters["blockduration"].match(/\d+/)) {
document.forms["blockip"].wpBlockOther.value = UrlParameters["blockduration"] + " hours";
}
window.setTimeout(function() { document.forms["blockip"].wpBlock.click(); }, 100);
}
if (UrlParameters["protectreason"] > "" && UrlParameters["protectduration"] > "" && UrlParameters["protecttype"] > "") {
document.getElementById("expires").value = UrlParameters["protectduration"];
document.getElementById("mwProtect-reason").value = UrlParameters["protectreason"];
protectLevelsUpdate(this);
if (UrlParameters["anotherprotecttype"] != '') {
document.getElementById("mwProtect-level-move").selectedIndex = UrlParameters["anotherprotecttype"];
} else {
document.getElementById("mwProtect-level-move").selectedIndex = UrlParameters["protecttype"];
}
document.getElementById("mwProtect-level-edit").selectedIndex = UrlParameters["protecttype"];
window.setTimeout(function() { document.getElementById("mw-Protect-submit").click(); }, 100);
}
if ((UrlParameters["title"] == "Wikipedia:Vandalismusmeldung") && (UrlParameters["section"] > '')) {
if (document.editform.wpTextbox1.value.search(/\(erl\.\)[\s]*==/) == -1 && document.editform.wpTextbox1.value.search(/\(erledigt\)[\s]*==/) == -1) {
document.editform.wpTextbox1.value = document.editform.wpTextbox1.value.replace(/==([^\d]*\d+\.\d+\.\d+\.\d+[^\d]*)==/, "==$1(erl.) ==");
document.editform.wpSummary.value = document.editform.wpSummary.value + " erl";
if (document.editform.wpTextbox1.value.search(/==([^\d]*\d+\.\d+\.\d+\.\d+[^\d]*)==/) != -1) {
insertTags(':', ' ' + usersignature, blockedtext);
}
}
}
if (UrlParameters["diff"] > "") {
function searchRollbackLink() {
var tds = document.getElementsByTagName("td");
for (var i=0; i<tds.length; i++) {
var td = tds[i];
if (td.className != "diff-ntitle") continue;
var as = td.getElementsByTagName("a");
for (var j=0; j<as.length; j++) {
var a = as[j];
if (!/.*action=rollback.*/(a.href)) continue;
return a;
}
}
return null;
}
function RollAndSpam(rolluri) {
var backrolled = rolluri.match(/\d+\.\d+\.\d+\.\d+/);
if (backrolled) {
location.href = rolluri;
window.setTimeout(function() { window.close(); }, 500);
var uri = "http://de.wikipedia.org/w/index.php?title=Benutzer_Diskussion:" + backrolled + "&action=edit&spam=1";
window.open(uri);
window.focus();
} else {
location.href = rolluri;
window.setTimeout(function() { window.close(); }, 500);
}
}
if (wgUserName == "Tönjes") {
var revlink = searchRollbackLink();
revlink.onclick = function() { RollAndSpam(revlink.href); return false; }
}
}
if (UrlParameters["spam"] > "") {
window.setTimeout(function() {
if (document.forms["editform"].wpTextbox1.value == "") {
document.forms["editform"].wpWatchthis.click();
document.editform.wpSummary.value = "Hinweis";
document.forms["editform"].wpTextbox1.value = "\{\{subst:Benutzer:PDD\/Greetings\/Danke\}\} \~\~\~\~";
document.editform.wpSave.click();
window.setTimeout(function() { window.close(); }, 500);
} else {
var blockurl = "http://de.wikipedia.org/w/index.php?title=Spezial:Sperren/" + wgTitle + "&blockduration=1&blockreason=Vandale&speichern=1";
window.setTimeout(function() { window.close(); }, 100);
window.open(blockurl);
window.focus();
}
}, 1000);
}
if ( (UrlParameters["title"] == 'Spezial:Logbuch') || (location.href.substring(location.href.indexOf("/wiki/")).search(/Spezial\:Logbuch\/newusers/) != -1) ) {
if ( (UrlParameters["limit"] < 51) || (document.body.getElementsByTagName("p")[1].childNodes[0].nodeValue.match(/\d+/) < 51) ) {
var as = document.body.getElementsByTagName("ul")[0].getElementsByTagName("a");
for (i=0; i < as.length; i++) {
if (as[i].childNodes[0].nodeValue == "sperren") {
var newlink = document.createElement('a');
newlink.setAttribute('href', 'http://de.wikipedia.org/w/index.php?title=Spezial:Sperren/' + as[i].title.replace(/Spezial:Sperren\//, '') + '&blockreason=Vandalismusaccount&blockduration=infinite&speichern=1');
var EditTextNode = document.createTextNode("schnellsperren");
newlink.appendChild(EditTextNode);
as[i].parentNode.insertBefore( newlink, as[i].nextSibling );
as[i].parentNode.insertBefore( document.createTextNode(' | '), as[i].nextSibling );
}
}
}
}
}
if (UrlParameters["deletereason"] > "" || (UrlParameters["spam"] > "") || (UrlParameters["diff"] > "") || ((UrlParameters["blockreason"] > "") && (UrlParameters["blockduration"] > "")) || (UrlParameters["protectreason"] > "" && UrlParameters["protectduration"] > "" && UrlParameters["protecttype"] > "") || (UrlParameters["title"] == "Wikipedia:Vandalismusmeldung") && (UrlParameters["section"] > '') || ((UrlParameters["title"] == 'Spezial:Logbuch') || (location.href.substring(location.href.indexOf("/wiki/")).search(/Spezial\:Logbuch\/newusers/) != -1))) {
addOnloadHook(fillActionPage);
}
// <nowiki>
// Funktionen im Quickbar (monobook.js)
var usedropdown = false; // Wenn keine Dropdowns gewünscht sind, hier false eintragen!
var qbnewpage = false; // sollen Seiten aus dem QuickBar im neuen Fenster aufgerufen werden?
var timeout = 50000; // 50 Sekunden auf das Neuladen der Seite warten
var zeigeversion = false; // monobook-Version anzeigen?
var zeigehilfe = true; // kurze Hilfetexte beim überfahren mit der Maus anzeigen ? default true
var debugme = false; // Debug-Modus?
var usersignature = '--\~\~\~\~'; //Standardsignatur
// Modul: hinweise.js
var hinweis = true; // Portal- und Redaktionshinweis verwenden?
// Modul: admin.js
var showadminbar = true; // Adminbar standardmäßig anzeigen?
// Wer nicht mit den Standardknöpfen zufrieden sein sollte, lese sich bitte das Tutorial auf [[Benutzer_Diskussion:DerHexer/admin.js]] durch.
var delreason = true; // Löschgründe ergänzen?
var deletereasons = "Unfug; Test; Kein Artikel; Unnötiger Redirect|Unnötiger Red.; Falschschreiberedirect; Werbung; Wiedergänger; Falsches Lemma; Wunsch des Benutzers; Verwaiste Diskussionsseite|Verwaiste Disk.; Offensichtlich enyzklopädisch irrelevant|Irrelevant; Siehe Löschdiskussion|Löschdiskussion; Urheberrechtsverletzung|URV; Unzureichende Lizenzierung|Unzureichende Lizenz; Ohne Lizenz; Unnötige Bildbeschreibungsseite zu Commons-Bild|Unnötig-ComBild";
var blockreason = true; // Blockgründe ergänzen?
var blockreasons = "Einstellen unsinniger Artikel|1|UA1; Vandale|1|V1; Vandale|2|-V2-; Vandale|7|-V7-; Vandalenaccount|indefinite|-VAi-; Ungeeigneter Benutzername|indefinite|UBi";
var protectreason = true; // Schutzgründe ergänzen?
var protectreasons = "IP-Vandalismus|3 months|1|P(IP-V+3m); IP-Vandalismus|indefinite|1|P(IP-V+i); Editwar|indefinite|2|P(EW+i); \{\{Gesperrter Benutzer\}\}|indefinite|2|P(GB+i)";
var blockedtext = " Zwei Stunden"; // Standardtext für die VM
// **************** SETUP Ende ***********************************
var user = wgUserName ; // username wird automatisch übernommen
// page type variables: namespaces
var isArticle = (wgNamespaceNumber == 0);
var isArticleTalk = (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(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');
var isUserpage = ( (wgCanonicalNamespace == "User") || (wgCanonicalNamespace == "User_talk") );
// 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';
if (qbnewpage) qbtarget = '_blank';
var dropdown = usedropdown;
var scrpt = '';
var scrptn = 0;
var indropdown;
var ind;
/*
* Quickbar-Zusammenbau, Teil 1:
*
* zuerst die Reihenfolge der einzelnen Abschnitte:
*/
function buildQuickbar() {
if (showadminbar) {
showadminbar2 = "block";
} else {
showadminbar2 = "none";
}
qbUsertalkTemps();
// Automatisches Bausteinsetzen
qbAutoTemps();
// der folgende Abschnitt wird nur bei Admins eingeblendet
qbAdminTools();
}
/*
* Quickbar-Zusammenbau, Teil 2:
*
* die Belegung der einzelnen Abschnitte
*/
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:Tönjes/Nazispam}}\\n','',''",'Nazi','','Nazispam');
w (3,"'{{subst:Benutzer:Tönjes/bitte_bearbeitung_begründen}}\\n','',''",'Löschung bitte begründen','','Löschung bitte begründen');
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 qbAdminTools() {
if (!adminflag) return;
if (showadminbar == false) {
w (0,'<hr />','','');
w (4,"switchbars('adminbar');switchbars('quickbar');","Adminbar an-/ausschalten","","Adminbar an-/ausschalten");
}
w (0,'<div id="adminbar" style="display:' + showadminbar2 + '"><hr />','Adminbar','');
if (delreason) {
w (0,'<center>Löschen</center>','Löschen','');
decodeadminreasons(deletereasons);
}
if (blockreason) {
w (0,'<center>Sperren</center>','Sperren','');
decodeadminreasons(blockreasons);
}
if (protectreason) {
w (0,'<center>Schützen</center>','Schützen','');
decodeadminreasons(protectreasons);
}
w (0,'</div>','','');
}
function qbAutoTemps() {
if (isSpecial && !isContrib) return;
w (0,trenner,'Auto-Bausteine','');
if (( isGeneric) && (!isSpecial)) w (4,"eintragen(1);","QS","","+Qualitätssicherung");
if (( isGeneric) && (!isSpecial)) w (4,"eintragen(5);","URV","","+URV");
if (( isGeneric) && (!isSpecial)) w (4,"eintragen(2);","LA","","+Löschantrag");
if (( isBild) && (!isSpecial)) w (4,"eintragen(4);","BildLA","","+Löschantrag Bild");
// if (( isBild) && (!isSpecial)) w (4,"eintragen(9);","BLU","","+BLU");
if (( isCategory) && (!isSpecial)) w (4,"eintragen(7);","KatLA","","+Löschantrag Kategorie");
if (( isTemplate) && (!isSpecial)) w (4,"eintragen(8);","VorLA","","+Löschantrag Vorlage");
if ( (!isSpecial)) w (4,"eintragen(3);","SLA","","+Schnelllöschantrag");
if (( isContrib) || ( isUserpage)) w (4,"eintragen(6);","VANDAL","","+Vandalismusmeldung");
if (hinweis) {
if (( isGeneric) && (!isSpecial)) w (4,"hinweis(1);","PH","","+Portalhinweis");
if (( isGeneric) && (!isSpecial)) w (4,"hinweis(2);","RH","","+Redaktionshinweis");
}
if (wgPageName == "Wikipedia:Spielwiese") w (4,"eintragen(10);","SP-Reset","","Spielwiese zurücksetzen");
}
/*
* hier wird der Quickbar in die Seite geschrieben
* (ab hier bitte nichts ändern)
*/
buildQuickbar();
document.write(Quickbar);
if (typeof(version) == 'undefined') var version = "?";
if (!isEdit || zeigeversion || isPHP) {
document.write(
'<div align=right>',
(zeigeversion) ?
('<a href="#" onclick="amIuptodate()" title="Versionscheck">' + (adminflag ? 'A/' : '') + version + '</a> ')
: '',
(!isEdit) ?
('<input type="checkbox" id="reloadme" name="reloadme" onchange="setReload()" title="Seite alle ' + (timeout/1000) + ' s neu laden?"></input> ')
: ' ',
'<a href="/w/index.php?title=Spezial%3APrefixindex&from=',user,
'&namespace=2" target="', qbtarget, '" title="Meine Seiten im Benutzernamensraum">',
(user.split(' ')[0].length < 10) ? user.split(' ')[0] : 'MyPages',
'</a>',
'</div>');
}
document.write(xxx,'</div>');
if (scrpt > '') {
document.write('<script> function _doopt (was) { switch (was) {', scrpt, '}}<\/script>');
scrpt='';
}
//
// ab hier functions
//
function w (was,lurl,linktext,targt,title) {
if (!title) title=linktext;
if (!zeigehilfe) title='';
if (!dropdown) {
switch (was) {
case 0 : xxx=xxx+lurl;break;
case 1 : xxx=xxx+'<a href="'+lurl+'" target="'+targt+'" title="'+title+'">'+linktext+'</a> ';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 isEven(myNumber) {
return (myNumber % 2 == 0);
}
function isOdd(myNumber) {
return (! isEven(myNumber));
}
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);
}
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)
}
function importJavascriptL(page, lang)
{
try {
/* check the parameters and set defaults */
if(!page) throw("importJavascriptL: Missing parameter page.");
if(!lang) lang = wgContentLanguage;
/* create import url */
var import_url = 'http://' + lang + '.wikipedia.org' + wgScriptPath + '/index.php?title=User:' + page +
'.js&action=raw&ctype=text/javascript&smaxage=2678400&dontcountme=s';
/* import page */
var Head = document.getElementsByTagName('head').item(0);
var Script = document.createElement('script');
Script.setAttribute('type', 'text/javascript');
Script.setAttribute('src', import_url);
Script.setAttribute('charset', 'utf-8');
Head.appendChild(Script);
return true;
} catch(e) {
alert(e.message);
return false;
}
}
function decodeadminreasons(adminreasons) { // DerHexer
var adminreason = adminreasons.split('; ');
for (i=0; i < adminreason.length; i++) {
var adminreasoncount = adminreason[i].split("|");
switch(adminreasoncount.length) {
case 1 : w (4,"deleting('" + adminreasoncount[0] + "');","" + adminreasoncount[0] + ""); break;
case 2 : w (4,"deleting('" + adminreasoncount[0] + "');","" + adminreasoncount[1] + ""); break;
case 3 : w (4,"blocking('" + adminreasoncount[0] + "', '" + adminreasoncount[1] + "');","" + adminreasoncount[2] + ""); break;
case 4 : w (4,"protecting('" + adminreasoncount[0] + "', '" + adminreasoncount[1] + "', '" + adminreasoncount[2] + "');","" + adminreasoncount[3] + ""); break;
case 5 : w (4,"protecting('" + adminreasoncount[0] + "', '" + adminreasoncount[1] + "', '" + adminreasoncount[2] + "', '" + adminreasoncount[3] + "');","" + adminreasoncount[4] + ""); break;
}
}
}
function switchbars(ids)
{
var element = document.getElementById(ids);
if(element.style.display == "none")
{
element.style.display = "block";
}
else
{
element.style.display = "none";
}
}
// ***** FOOT-Block *****
if (adminflag && (delreason || blockreason || protectreason) && wgUserName == 'Tönjes')
importJavascriptL('DerHexer/admin','de'); // [[Benutzer:DerHexer/admin.js]]
importJavascriptL('PDD/eintragen','de'); // [[Benutzer:PDD/eintragen.js]]