Benutzer:1steenfa/markAdmins.js
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
- Edge: Strg+F5 drücken oder Strg drücken und gleichzeitig Aktualisieren anklicken
// <nowiki>
// 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 markAdmins() {
// Variables that should be defined in your monobook
if (typeof(markadmins) == 'undefined')
markadmins = true;
if (!markadmins)
return; //nichts zu tun, schnell weg hier
var langUser = "Benutzer:"; // in German 'Benutzer:'
if (typeof(marksubpages) == 'undefined')
marksubpages = false;
if (typeof(dontmarkmyself) == 'undefined')
dontmarkmyself = false;
if (typeof(isSpecial) == 'undefined')
isSpecial = (wgCanonicalNamespace == "Special");
if (typeof(isHistory) == 'undefined')
isHistory = (wgAction == 'history');
if (typeof(isUserpage) == 'undefined')
isUserpage = ( (wgCanonicalNamespace == "User") || (wgCanonicalNamespace == "User_talk") );
if (typeof(isTalk) == 'undefined')
isTalk = (wgNamespaceNumber %2 == 1);
if (typeof(isProject) == 'undefined')
isProject = (wgCanonicalNamespace == "Project");
if (typeof(isDatei) == 'undefined')
isDatei = (wgCanonicalNamespace == "File");
if (typeof(isHelp) == 'undefined')
isHelp = (wgCanonicalNamespace == "Help");
if (typeof(isDiff) == 'undefined')
isDiff = UrlParameters["diff"];
if (markadmins) {
// statische Liste
// Stand: 08.06.2012
var admins=new Array("0nusplz", "7kraemer", "8bui", "ArneKoehn", "Julian F.", "MariusStuebs", "Muelli", "PatrickFey", "R00t", "Roland Illig", "Steenfatt", "T", "Thorben", "Timon");
var admins_str = '|'+admins.join('|')+'|';
var bureaucrats=new Array("7kraemer", "ArneKoehn", "Julian F.", "MariusStuebs", "Muelli", "PatrickFey", "R00t", "Roland Illig", "Steenfatt", "T");
var bureaucrats_str = '|'+bureaucrats.join('|')+'|';
if (typeof(markatxt) == 'undefined')
markatxt = "A";
if (typeof(markbureautxt) == 'undefined')
markbureautxt = "B";
if (typeof(markstewtxt) == 'undefined')
markstewtxt = "S";
}
if (isSpecial || isHistory || isUserpage || isTalk || isProject || isDatei || isHelp || isDiff) {
var i;
var aNode;
var allanchors = document.getElementsByTagName("A");
var searchExp = /.wiki.Benutzer.(.+)/;
var trenn="/wiki/" + langUser;
var marker;
var mainpageanchor;
appendCSS('span.adminMark { font-weight: bold; }');
for (i=0; i < allanchors.length; i++) {
aNode = allanchors[i];
mainpageanchor = true;
// if it's a link to a user
if ((href = aNode.getAttribute("href")) && (href.indexOf(trenn) != -1)) {
currUser = searchExp.exec(href)[1];
/* if (isUserpage) */ currUserClean = currUser.replace(/\/.*/,'');
if (currUserClean != currUser) mainpageanchor = false;
currUser= "|" + currUserClean + "|";
marker = new Array();
if (markadmins) {
// is this user an admin?
if (admins_str.indexOf(currUser) != -1) marker.push(markatxt);
// is this user a bureaucrat?
if (bureaucrats_str.indexOf(currUser) != -1) marker.push(markbureautxt);
}
// don't mark certain pages, except link to user main page
if (mainpageanchor ||
(marksubpages && (wgCanonicalSpecialPageName != "Prefixindex")
&& (wgCanonicalSpecialPageName != "Allpages")) )
// check finished, now append node
if ((marker.length > 0) && !(dontmarkmyself && (currUserClean == wgUserName))) {
// Variante 1 (traditionell)
// var aMark = document.createElement("b");
// Variante 2
var aMark = document.createElement("span");
aMark.className = "adminMark";
var aMarkText = document.createTextNode(" (" + marker.join("/") + ")");
aMark.appendChild(aMarkText);
aNode.appendChild(aMark);
}
}
}
}
}
addOnloadHook(markAdmins);
// </nowiki>