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

Материал из Мегапедии
Перейти к: навигация, поиск
Строка 3: Строка 3:
 
'R':'|Arhssaarh|Darlingtonia californica|',
 
'R':'|Arhssaarh|Darlingtonia californica|',
 
'B':'|Великий Андрей Зелев|Serebr|',
 
'B':'|Великий Андрей Зелев|Serebr|',
'A':'|Dream|Crush|Zooro-Patriot|',
+
'A':'|Crush|Zooro-Patriot|',
'C':'|Dream|Serebr|',
+
'C':'|Serebr|',
 
'S':'|Darlingtonia californica|',
 
'S':'|Darlingtonia californica|',
 
'V':'|Serebr|',
 
'V':'|Serebr|',

Версия 11:15, 4 октября 2011

var userSet = {
'O':'|Arhssaarh|',
'R':'|Arhssaarh|Darlingtonia californica|',
'B':'|Великий Андрей Зелев|Serebr|',
'A':'|Crush|Zooro-Patriot|',
'C':'|Serebr|',
'S':'|Darlingtonia californica|',
'V':'|Serebr|',
}
 
var userSetTip = {
'O':'основатель',
'R':'член Правления',
'B':'бюрократ',
'A':'администратор',
'C':'чекюзер',
'S':'системный администратор',
'V':'ревизор',
}

addOnloadHook(markUsers)
 
function markUsers(){
 var body, lnk, mm, user, mark, i, k, flags, tips
 cont = document.getElementById('bodyContent') || document.getElementById('content')
 if (!cont) return
 var links = cont.getElementsByTagName('A')
 for (i=0; i<links.length; i++){
  lnk = links[i]
  if (!lnk.title || ! (mm=lnk.title.match('Участник:(.*)'))) continue
  user = decodeURIComponent(mm[1])
  if (lnk.className.indexOf('new') != -1) user = user.replace(/ \([^\)]+\)$/,'')
  user = '|' + user + '|'
  flags = []
  for (k in userSet)
    if (userSet[k].indexOf(user) >= 0)
	  flags.push(k)
  if (flags.length == 0) continue
  tips = []
  for (k in flags) tips.push(userSetTip[flags[k]])
  mark = document.createElement('tt')
  mark.className = 'userflags'
  mark.appendChild(document.createTextNode('(' + flags.join(',') + ')'))
  lnk.appendChild(mark)
  lnk.title += ' ('+tips.join(', ')+')'
 }
}