MediaWiki:Gadget-markadmins.js

Материал из Абсурдопедии
Перейти к навигации Перейти к поиску

Замечание: Возможно, после публикации вам придётся очистить кэш своего браузера, чтобы увидеть изменения.

  • Firefox / Safari: Удерживая клавишу Shift, нажмите на панели инструментов Обновить либо нажмите Ctrl+F5 или Ctrl+R (⌘+R на Mac)
  • Google Chrome: Нажмите Ctrl+Shift+R (⌘+Shift+R на Mac)
  • Internet Explorer / Edge: Удерживая Ctrl, нажмите Обновить либо нажмите Ctrl+F5
  • Opera: Нажмите Ctrl+F5.
mw.loader.using('mediawiki.util', function () {
    var userSet = {
        'К': ['Тэйтанка-птекила'],
        'С': ['Dimetr', '角白羊宮', 'Баскервильская собака'],
        'М': ['Dimetr', 'Странник27', 'Адмирал Кабаньерро', 'Nihil Omnia', 'Serebr', '角白羊宮', 'TSP'],
        'Б': ['Собака Баскервилей', 'Аманита Мускария', 'Архисубасинреквазипостгиперпсевдодеантимаг', 'Тима Мурашко','Dirruw\'o'],
        'Р': [
        	'Звездолет Робота', 'АнтиУчителка', 'Томас Перси', 'RomaWar', 'Баскервильская собака', 'Старварыч', 'Rain Dreamer', 'VanBash', 'The Cat1987', 'Köpleres','Tundrabeaver', // не зарегистрированы после переезда или фактически не имеют флагов
        	'Llwy-ar-lawr', 'Vlad26t', 'Alex Skela', 'Funcold', 'Vizator', 'Пламен Янаев', 'Не анонимус333', 'Aibolytt', 'Zutio' // зарегистрированы после переезда
        ],
        'А': ['Звездолет Робота', 'Виталик Штепсель-бот', 'Бот-койот', 'Mark I'],
        'Ч': ['Виталик Штепсель'],
        'Ш': ['Сырнийский оракул'],
        'Я': ['Адмирал Кабаньерро']
    };

    var userSetTip = {
        'К': 'король',
        'С': 'судья',
        'М': 'маркиз',
        'Б': 'барон',
        'Р': 'рыцарь',
        'А': 'автоматон',
        'Ч': 'чародей',
        'Ш': 'шут',
        'Я': 'ясновидец'
    };

    $(document).ready(function () {
        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);
        });
    });
});