„Benutzerin:Anka Friedrich/markMentors.js“ – Versionsunterschied
Zur Navigation springen
Zur Suche springen
Inhalt gelöscht Inhalt hinzugefügt
Itti (Diskussion | Beiträge) + Toni Müller |
wikibits-Migration, vgl. Anfrage unter Special:Permalink/165028372#Skripte |
||
Zeile 19: | Zeile 19: | ||
// <nowiki> |
// <nowiki> |
||
mw.loader.using('mediawiki.util', function () { $(function () { |
|||
function markMentors() { |
|||
// Variables that should be defined in your monobook |
// Variables that should be defined in your monobook |
||
Zeile 71: | Zeile 71: | ||
var mainpageanchor; |
var mainpageanchor; |
||
mw.util.addCSS('span.mentorMark { font-weight: bold; }'); |
|||
for (i=0; i < allanchors.length; i++) { |
for (i=0; i < allanchors.length; i++) { |
||
mNode = allanchors[i]; |
mNode = allanchors[i]; |
||
Zeile 116: | Zeile 116: | ||
} |
} |
||
} |
} |
||
} |
}); }); |
||
jQuery(document).ready(markMentors); |
|||
// </nowiki> |
// </nowiki> |
Version vom 29. April 2017, 23:04 Uhr
//***********************************************************************
// [[Benutzerin:Itti]] darf in diesem Script neue Mentoren ein- und
// ehemalige austragen. Itti, Danke für Deine Hilfe.
//***********************************************************************
// Skript übernommen von [[Benutzer:PDD/markAdmins.js]] und angepasst
//***********************************************************************
// markAdmins.js:
// Skript ursprünglich von [[Benutzer:Euku]], 28. Dez. 2005
// Ex-Admin-Markierung von [[Benutzer:Sir]] und [[Benutzer:Olliminatore]]
// Adaptierung/zusätzliche Markierungen/Fixes: [[Benutzer:PDD]]
// Aufgeräumt & beschleunigt: [[Benutzer:Littl]]
// Etwas umgeräumt und potentielle Skinabhängigkeit entfernt: [[Benutzer:Guandalug]]
// markMentors.js:
// umgebaut: [[Benutzer:Anka Friedrich]]
// BugFix: [[Benutzer:DerHexer]]
//
// Einbindung: Siehe [[Wikipedia:Mentorenprogramm/Richtlinien#Mentoren kennzeichnen]]
//***********************************************************************
// <nowiki>
mw.loader.using('mediawiki.util', function () { $(function () {
// Variables that should be defined in your monobook
if (typeof(markmentors) == 'undefined')
markmentors = true;
if (!markmentors)
return; //nichts zu tun, schnell weg hier
if (typeof(markmsubpages) == 'undefined')
markmsubpages = 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 = mw.util.getParamValue('diff') !== null; //Danke an [[Benutzer:TMg]]
if (markmentors) {
// statische Liste (dynamisch: http://toolserver.org/~daniel/WikiSense/CategoryIntersect.php?wikilang=de&wikifam=.wikipedia.org&basecat=Benutzer+ist+Mentor&basedeep=1&templates=&mode=al&go=Scannen&format=html&userlang=de )
// Stand: 21.8.2011
var mentors=new Array("Aeggy", "Albinfo", "Alraunenstern", "Altsprachenfreund", "Anka_Friedrich", "Anton-kurt", "Artregor", "Artmax", "Austriantraveler", "Barnos", "Berita", "Boonekamp", "CennoxX", "Chewbacca2205", "Chricho", "Codc", "DCB", "CTHOE", "DerMaxdorfer", "DerHexer", "Der_Wolf_im_Wald", "Don-kun", "Doc.Heintz", "Emes", "Faltenwolf", "Fish-guts", "Gamma127", "Graf_Umarov", "Grueslayer", "Hans_Koberger", "Hephaion", "HerrSonderbar", "Hofres", "Icodense99", "Icy2008", "Innobello", "Itti", "JCS", "Jivee_Blau", "Jojhnjoy", "KaiMartin", "Kenny_McFly", "Logograph", "M._Krafft", "MAGISTER", "Manfred_Kuzel", "Markus_Schulenburg", "Memorino", "Mussklprozz", "Nikkis", "Nolispanmo", "Orci", "Parzi", "Perrak", "Plani", "Polarlys", "Ptolusque", "Queryzo", "Redlinux", "Reinhard_Kraasch", "RudolfSimon", "Schnabeltassentier", "SDKmac", "Thomas_Glintzer", "THWZ", "Timk70", "Tkarcher", "Tkkrd", "Tmv23", "Toffel", "Toni_M%C3%BCller", "UweRohwedder", "Werner_von_Basil", "Wo_st_01", "Zulu55", "Zweioeltanks");
var mentors_str = '|'+mentors.join('|')+'|';
if (typeof(markmtxt) == 'undefined')
markmtxt = "M";
}
if (isSpecial || isHistory || isUserpage || isTalk || isProject || isDatei || isHelp || isDiff) {
var i;
var mNode;
var allanchors = document.getElementsByTagName("A");
var allanchorsuser = new Array();
var followupmark;
var searchExp = /\/wiki\/Benutzer(in)?([ _]Diskussion)?:(.+)/;
var searchExpTalk = /[ _]Diskussion:/;
var marker;
var mainpageanchor;
mw.util.addCSS('span.mentorMark { font-weight: bold; }');
for (i=0; i < allanchors.length; i++) {
mNode = allanchors[i];
mainpageanchor = true;
talkpageanchor = false;
// if it's a link to a user
if ((href = mNode.getAttribute("href")) && (searchExp.exec(href) != null)) {
currUser = searchExp.exec(href)[3];
/* if (isUserpage) */ currUserClean = currUser.replace(/\/.*/,'');
if (currUserClean != currUser) mainpageanchor = false;
if (searchExpTalk.exec(href) != null) talkpageanchor = true;
if (mainpageanchor) allanchorsuser[i] = currUserClean;
else allanchorsuser[i] = "";
followupmark = false;
if (i>0)
if ((currUserClean == allanchorsuser[i-1]) && talkpageanchor)
followupmark = true;
currUser= "|" + currUserClean + "|";
marker = new Array();
// is this user a mentor?
if (mentors_str.indexOf(currUser) != -1) marker.push(markmtxt);
// don't mark followups
if (!followupmark)
// don't mark certain pages, except link to user main page
if (mainpageanchor ||
(markmsubpages && (wgCanonicalSpecialPageName != "Prefixindex")
&& (wgCanonicalSpecialPageName != "Allpages")) ) {
// check finished, now append node
if ((marker.length > 0) && !(dontmarkmyself && (currUserClean == wgUserName))) {
var mMark = document.createElement("span");
mMark.className = "mentorMark";
var mMarkText = document.createTextNode(" (" + marker.join("/") + ")");
mMark.appendChild(mMarkText);
mNode.appendChild(mMark);
}
}
}
}
}
}); });
// </nowiki>