Користувач:Yelysavet/common.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
(function () {
var userSet = {
'A' : ['Bunyk'],
};
var userSetTips = {
'A' : 'адміністратор',
};
function addCSS(css) {
var styleElem = document.createElement('style');
styleElem.appendChild(document.createTextNode(css));
document.getElementsByTagName('head')[0].appendChild(styleElem);
}
function markadmins($content) {
if (!$content.length) return;
runNum++;
if (runNum === 1) {
addCSS('\
tt.userflags { color:#0645ad; }\
.userflags-wrapper { -moz-user-select:none; }\
');
}
var $links = $content.find('a[title^="Користувач"]');
if (runNum === 2) {
if ($links.length === prevLinksCount) {
return;
} else {
if ($links.length > prevLinksCount) {
$links = $links.slice(prevLinksCount);
} else {
}
}
}
$links.each(function (i, link) {
if (/[?#]/.test(link.href) && link.href.indexOf('redlink=1') === -1 ||
link.parentElement.className === 'cancelLink') {
return;
}
var matches, user, flags = [], tips = [], flag;
matches = /^Користувач:/.exec(link.title);
if (!matches) return;
if (matches[2]) {
if ($(link).parent().hasClass('mw-usertoollinks') || link.textContent.match(/обс/i)) return;
matches[1] = matches[2];
} else if (!matches[1]) {
return;
}
user = decodeURIComponent(matches[1]);
if (link.href.indexOf('redlink=1') !== -1) {
user = user.replace(/ \([^\)]+\)$/, '');
}
for (flag in userSet) {
if ($.inArray(user, userSet[flag]) !== -1) {
flags.push(flag);
tips.push(userSetTips[flag]);
}
}
if (!flags.length) return;
tips = ' (' + tips.join(', ') + ')';
var spanElem = document.createElement('span');
spanElem.className = 'userflags-wrapper';
var nbspElem = document.createTextNode('\u00A0');
var ttElem = document.createElement('tt');
ttElem.className = 'userflags';
ttElem.title = tips;
var flagsElem = document.createTextNode('(' + flags.join(',') + ')');
ttElem.appendChild(flagsElem);
spanElem.appendChild(nbspElem);
spanElem.appendChild(ttElem);
link.parentNode.insertBefore(spanElem, link.nextSibling);
link.title = link.title + tips;
});
prevLinksCount = $links.length;
}
var runNum = 0;
var prevLinksCount;
markadmins($('#mw-content-text'));
mw.hook('wikipage.content').add(markadmins);
}());