Участник:Dmitry89/test.js

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску
//Скрипт для показа флагов патрулирующих
var userSet = {
'T' : '|Drbug|Gruznov|LEMeZza|Lvova|Putnik|Rubin16|VasilievVV|Ahonc|Base|Dogad75|Iluvatar|ShinePhantom|Victoria|Vladimir Solovjev|Алый Король|Ctac|Максим Підліснюк|D.bratchuk|'
}

var userSetTip = {
'T' : 'OTRS-доступ'
}

function markUsers(){
 
 var mm, f, user, flags, tips
 mw.util.addCSS('tt.userflags {color:#0645ad}')
 
 mw.util.$content.find('a').each( function(i, lnk){
 
  mm = /^Участни(к|ца):(.*)/.exec(lnk.title)
  if( !mm ) return
  if( /[?#]/.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)
 
 })
}
 
$(function(){ setTimeout(markUsers, 1000) })