Користувач:Ɪ/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
// прототип: https://ru.wikipedia.org/wiki/MediaWiki:Gadget-markadmins.js
mw.loader.using('mediawiki.util', function() {
	var userSet = {
	'A' : ['Aced', 'AlexKozur', 'Amakuha', 'Antanana', 'Atoly', 'Brunei', 'DixonD', 'Fessor', 'Geohem', 'Goo3', 'Green Zero', 'Helixitta', 'IgorTurzh', 'Kholodovsky', 'Krupolskiy Anonim', 'Krystofer', 'LeonNef', 'Leonst', 'Lystopad', 'MaryankoD', 'Mcoffsky', 'Mr.Rosewater', 'NickK', 'Nina Shenturk', 'Olmi', 'Piramidion', 'RLuts', 'Sergento', 'SteveR', 'Submajstro', 'Tespaer', 'VictorAnyakin', 'Visem', 'VoidWanderer', 'Yakudza', 'YarikUkraine', 'Ykvach', 'Анатолій Мітюшин', 'Андрій Гриценко', 'Вальдимар', 'ДмитрОст', 'Нестеренко Оля', 'Рассилон', 'Стефанко1982'],
	'B' : ['Aced', 'Lystopad', 'MaryankoD', 'Yakudza', 'YarikUkraine'],
	'C' : ['NickK', 'VictorAnyakin', 'Стефанко1982'],
	'U' : ['Anntinomy', 'AntonProtsiuk (WMUA)', 'Friend', 'Kharkivian', 'Nickispeaki', 'Tohaomg', 'Ата', 'Звірі']
	};

	var userSetTip = {
	'A':'адміністратор',
	'B':'бюрократ',
	'C':'чек’юзер',
	'U':'створювач облікових записів' 
	};

	$(document).ready(function() {
		mw.util.addCSS('tt.userflags {color:#0645ad}');
		mw.util.$content.find('a').each( function(i, lnk) {
			if( /[?#]/.test(lnk.href) && lnk.href.indexOf('redlink=1') === -1 ) {
				return;
			}
			var mm, f, user, flags, tips;
			mm = /^Користува(ч|ка):(.*)/.exec(lnk.title);
			if( !mm ) {
				return;
			}
			user = decodeURIComponent(mm[2]);
			if (lnk.className.indexOf('new') !== -1) {
				user = user.replace(/ \([^\)]+\)$/,'');
			}
			flags = []; tips = [];
			for( f in userSet ) {
				if($.inArray( user, userSet[f] ) !== -1 ){
					flags.push(f);
					tips.push(userSetTip[f]);
				}
			}
			if( !flags.length ) {
				return;
			}

			tips = ' ('+tips.join(', ')+')';

			$(lnk)
			.after('\u00A0', '<tt class=userflags title="'+tips+'">('+flags.join(',') + ')</tt>')
			.attr('title', $(lnk).attr('title') +  tips);

		});
	});
});