MediaWiki:Gadget-markadmins.js
Увага: Після публікування слід очистити кеш браузера, щоб побачити зміни.
- Firefox / Safari: тримайте Shift, коли натискаєте Оновити, або натисніть Ctrl-F5 чи Ctrl-Shift-R (⌘-R на Apple Mac)
- Google Chrome: натисніть Ctrl-Shift-R (⌘-Shift-R на Apple Mac)
- Internet Explorer / Edge: тримайте Ctrl, коли натискаєте Оновити, або натисніть Ctrl-F5
- Opera: натисніть Ctrl-F5
//Based on [[uk:Користувач:Mykola7/markadmins.js]]
//<pre>
function markUsers(data){
var body, lnk, title, mm, mark, joined_mark, i, k;
var mark_array = [];
if (!(body = document.getElementById('bodyContent'))) return;
var links = body.getElementsByTagName('A');
var userArg;
for (i=0; i<links.length; i++){
lnk = links[i];
if (!lnk.title || ! (mm=lnk.title.match('(?:Користувач|Користувачка):(.*)')))
continue;
try {
userArg = decodeURIComponent(mm[1]).replace(" (ще не написана)", "");
} catch (e) { // could not decode (Uncaught URIError: URI malformed)
userArg = mm[1].replace(" (ще не написана)", "");
}
for (k in data.userSet){
if (data.userSet[k].includes(userArg)) {
mark_array.push(k);
lnk.title += data.userSetTip[k];
}
}
if (mark_array.length > 0) {
mark = document.createElement('b');
joined_mark = mark_array.join('/');
mark.appendChild(document.createTextNode('(' + joined_mark + ')'));
lnk.appendChild(mark);
mark_array = [];
}
}
}
$.getJSON(mw.config.get('wgScriptPath')+'/index.php?action=raw&ctype=application/json&title=MediaWiki:Gadget-markadmins.json', function(data){
markUsers(data);
if ($('.mw-changeslist').length) {
var target = document.querySelector('.mw-changeslist');
var observer = new MutationObserver(function(mutation) {
mutation.forEach(function(mutation) {
markUsers(data);
});
});
var config = {childList: true, subtree: true};
observer.observe(target, config);
}
});
//</pre>