MediaWiki:Gadget-markadmins.js: различия между версиями

Материал из Абсурдопедии
Перейти к навигации Перейти к поиску
Нет описания правки
Нет описания правки
Строка 1: Строка 1:
mw.loader.using('mediawiki.util', function() {
$(function() {
var userSet = {
  var userSet = {//Список пользователей
'Б':['Exlex','Pyaniy mutant'],
    'Б': '|Exlex|Pyaniy mutant|',
'А':['Exlex','Pyaniy mutant','Dimetr','Странник27'],
    'А': '|Exlex|Pyaniy mutant|Dimetr|Странник27|',
'ПИ':['Боевой Космический Роботонный Робот', 'Тэйтанка-птекила', 'Serebr', '角白羊宮', 'Anton199', 'Аддхиранирр']
    'ПИ': '|Dimetr|Боевой Космический Роботонный Робот|Тэйтанка-птекила|Serebr|角白羊宮|Anton199|Аддхиранирр|',
}, userSetTip = {
  }, userSetTip = {
'Б':'Бюрократ',
    'Б': 'Бюрократ',
'А':'Администратор',
    'А': 'Администратор',
'ПИ':'Подводящий итоги'   
    'ПИ': 'Подводящий итоги'
};
   };
   
   
$(document).ready(function() {
  var mm, f, user, flags, tips;
mw.util.addCSS('tt.userflags {color:#0645ad}');
  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(', ')+')';
  mw.util.$content.find('a').each( function(i, lnk) {
    if(!(mm = /^Участни(к|ца):(.*)/.exec(lnk.title)) ||
      (/[?#]/.test(lnk.href) && !(/redlink=1/.test(lnk.href))) ) return;
   
   
$(lnk)
    user = decodeURIComponent(mm[2]);
.after('\u00A0', '<tt class=userflags title="'+tips+'">('+flags.join(',') + ')</tt>')
    if (lnk.className.indexOf('new') != -1) {
.attr('title', $(lnk).attr('title') +  tips);
      user = user.replace(/ \([^\)]+\)$/,'');
    }
    user = '|' + user + '|';
   
   
});
    flags = [], tips = [];
});
    for(f in userSet) {
});
      if(userSet[f].indexOf(user) >= 0) {
        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));
  }
  );
}
);

Версия от 06:09, 17 ноября 2015

$(function() {
  var userSet = {//Список пользователей
    'Б': '|Exlex|Pyaniy mutant|',
    'А':  '|Exlex|Pyaniy mutant|Dimetr|Странник27|',
    'ПИ':  '|Dimetr|Боевой Космический Роботонный Робот|Тэйтанка-птекила|Serebr|角白羊宮|Anton199|Аддхиранирр|',
  }, userSetTip = {
    'Б': 'Бюрократ',
    'А':  'Администратор',
    'ПИ':  'Подводящий итоги'
  };
 
  var mm, f, user, flags, tips;
  mw.util.addCSS('tt.userflags { color:#0645ad }');
 
  mw.util.$content.find('a').each( function(i, lnk) {
    if(!(mm = /^Участни(к|ца):(.*)/.exec(lnk.title)) || 
      (/[?#]/.test(lnk.href) && !(/redlink=1/.test(lnk.href))) ) return;
 
    user = decodeURIComponent(mm[2]);
    if (lnk.className.indexOf('new') != -1) {
      user = user.replace(/ \([^\)]+\)$/,'');
    }
    user = '|' + user + '|';
 
    flags = [], tips = [];
    for(f in userSet) {
      if(userSet[f].indexOf(user) >= 0) {
        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));
  }
  );
}
);