사용자:*Youngjin/markadmins.js
참고: 설정을 저장한 후에 바뀐 점을 확인하기 위해서는 브라우저의 캐시를 새로 고쳐야 합니다. 구글 크롬, 파이어폭스, 마이크로소프트 엣지, 사파리: ⇧ Shift 키를 누른 채 "새로 고침" 버튼을 클릭하십시오. 더 자세한 정보를 보려면 위키백과:캐시 무시하기 항목을 참고하십시오.
//***********************************************************************
// Skript ursprünglich von [[Benutzer:Euku]], 28. Dez. 2005
// Adaptierung/zusätzliche Markierungen/Fixes: [[Benutzer:PDD]]
// Aufgeräumt & beschleunigt: [[Benutzer:Littl]]
// Etwas umgeräumt und potentielle Skinabhängigkeit entfernt: [[Benutzer:Guandalug]]
// 한국어 위키백과 소도구 도입을 위한 작업중입니다. 한글로된 관리자는 반드시 유니코드로 작성해주셔야 정상적으로 반영됩니다. --[[사용자:분당선M|분당선M]] ([[사용자토론:분당선M|토론]]) 2013년 3월 25일 (월) 03:15 (KST)
//***********************************************************************
// <nowiki>
// get URL parameters (used for page type variables)
var UrlParameters = [];
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 = "User:";
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 isHelp == 'undefined')
isHelp = (wgCanonicalNamespace == "Help");
if (typeof isDiff == 'undefined')
isDiff = UrlParameters["diff"];
if (markadmins) {
// static list
var admins=["Addshore", "Ajraddatz", "Amire80", "Arkanosis", "Bene*", "Benoit_Rochon", "Bill_william_compton", "CennoxX", "Conny", "Delusion23", "Hazard-SJ", "Hoo_man", "Hosiryuhosi", "Inkowik", "Iste_Praetor", "JAn_Dud%C3%ADk", "Jasper_Deng", "Jdforrester", "Jeblad", "Jitrixis", "Jon_Harald_S%C3%B8by", "Karol007", "Legoktm", "Leyo", "Lukas%C2%B2%C2%B3", "Mark91", "Meisam", "Merlissimo", "Moe_Epsilon", "NuvieK", "PinkAmpersand", "Raymond", "Riley_Huntley", "Romaine", "Rschen7754", "Rzuwig", "Sannita", "Sk!d", "Skull33", "Sotiale", "Stevenliuyi", "Stryn", "Sven_Manguard", "TBloemink", "Techman224", "Tpt", "ValterVB", "Vituzzu", "Vogone", "Wagino_20100516", "Whym", "Wiki13", "Yair_rand", "Ymblanter", "Zolo", "%EB%B6%84%EB%8B%B9%EC%84%A0M"];
var admins_str = '|'+admins.join('|')+'|';
// var bureaucrats=["Xxx", "Yyy"];
// var bureaucrats_str = '|'+bureaucrats.join('|')+'|';
// var checkusers=["Xxx", "Yyy"];
// var checkusers_str = '|'+checkusers.join('|')+'|';
// var oversights=["Xxx", "Yyy"];
// var oversights_str = '|'+oversights.join('|')+'|';
// Wikidata staff members from WMDE
var staff=["Abraham_Taherivand_(WMDE)", "Daniel_Kinzler_(WMDE)", "Denny_Vrande%C4%8Di%C4%87_(WMDE)", "Jeroen_De_Dauw_(WMDE)", "Katie_Filbert_(WMDE)", "Lydia_Pintscher_(WMDE)"];
var staff_str = '|'+staff.join('|')+'|';
// Stewards
var stewards=["Amqui", "Avraham", "Barras", "Bencmq", "Bennylin", "Billinghurst", "BRUTE", "Bsadowski1", "DerHexer", "Elfix", "J.delanoy", "Jon_Harald_S%C3%B8by", "Jusjih", "Jyothis", "Laaknor", "Leinad", "M7", "MarcoAurelio", "Mardetanha", "Matanya", "Mathonius", "MBisanz", "Melos", "Mentifisto", "MF-Warburg", "Millosh", "Pathoschild", "PeterSymonds", "Pundit", "Quentinv57", "QuiteUnusual", "Ruslik0", "Shizhao", "Snowolf", "Tegel", "Teles", "Thogo", "Trijnstel", "Vituzzu", "Wikitanvir", "Wpedzich"];
var stewards_str = '|'+stewards.join('|')+'|';
// Ombudsmen
var ombudsmen=["Deskana", "Erzbischof", "FloNight", "Huji", "Levg", "Sir48", "Thogo"];
var ombudsmen_str = '|'+ombudsmen.join('|')+'|';
// Global sysops: only mark users who are neither local sysops nor stewards
var globalsysops=["%C3%89rico_J%C3%BAnior_Wouters", "Fr33kman", "Frigotoni", "Herbythyme", "Hercule", "Igna", "Liliana-60", "MoiraMoira", "PiRSquared17", "Pmlineditor", "Ruy_Pugliesi", "Savh", "Shanmugamp7", "SPQRobin", "Tiptoety", "Toto_Az%C3%A9ro", "Zscout370"];
var globalsysops_str = '|'+globalsysops.join('|')+'|';
if (typeof markatxt == 'undefined')
markatxt = "A";
if (typeof markbureautxt == 'undefined')
markbureautxt = "B";
// if (typeof markcheckusertxt == 'undefined')
// markcheckusertxt = "CU";
// if (typeof markoversighttxt == 'undefined')
// markoversighttxt = "OS";
if (typeof markstafftxt == 'undefined')
markstafftxt = "Staff";
if (typeof markstewtxt == 'undefined')//***********************************************************************
// Skript ursprünglich von [[Benutzer:Euku]], 28. Dez. 2005
// Adaptierung/zusätzliche Markierungen/Fixes: [[Benutzer:PDD]]
// Aufgeräumt & beschleuni
markstewtxt = "S";
if (typeof markombtxt == 'undefined')
markombtxt = "Omb";
if (typeof markgstxt == 'undefined')
markgstxt = "GS";
}
if (isSpecial || isHistory || isUserpage || isTalk || isProject || isHelp || isDiff) {
var i;
var aNode;//***********************************************************************
// Skript ursprünglich von [[Benutzer:Euku]], 28. Dez. 2005
// Adaptierung/zusätzliche Markierungen/Fixes: [[Benutzer:PDD]]
// Aufgeräumt & beschleuni
var allanchors = document.getElementsByTagName("A");
var searchExp = /.wiki.User.(.+)/;
var trenn="/wiki/" + langUser;
var marker;
var mainpageanchor;
mw.util.addCSS('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 = [];
if (markadmins) {
// is this user an admin?
if (admins_str.indexOf(currUser) != -1) marker.push(markatxt);
// is this user a bureaucrat?
// if (bureaucrats_str.in************************************************
// Skript ursprünglich von [[Benutzer:Euku]], 28. Dez. 2005
// Adaptierung/zusätzliche Markierungen/Fixes: [[Benutzer:PDD]]
// Aufgeräumt & beschleunidexOf(currUser) != -1) marker.push(markbureautxt);
// is this user a checkuser?
// if (checkusers_str.indexOf(currUser) != -1) marker.push(markcheckusertxt);
// is this user an oversighter?
// if (oversights_str.indexOf(currUser) != -1) marker.push(markoversighttxt);
// is this user a staff member?
if (staff_str.indexOf(currUser) != -1) marker.push(markstafftxt);
// is this user a steward?
if (stewards_str.indexOf(currUser) != -1) marker.push(markstewtxt);
// is this user an ombudsman?
if (ombudsmen_str.indexOf(currUser) != -1) marker.push(markombtxt);
// is this user a global sysop?
if (globalsysops_str.indexOf(currUser) != -1) marker.push(markgstxt);
}
// 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 (vom Erzbschof)
var aMark = document.createElement("span");
aMark.className = "adminMark";
var aMarkText = document.createTextNode(" (" + marker.join("/") + ")");
aMark.appendChild(aMarkText);
aNode.appendChild(aMark);
}
}
}
}
}
addOnloadHook(markAdmins);
// </nowiki>