User:Bosco/MediaWiki:Gadget-MarkRights.js: Difference between revisions
Jump to navigation
Jump to search
Content deleted Content added
via W+: |
No edit summary |
||
| Line 41: | Line 41: | ||
var alist = []; |
var alist = []; |
||
var ipbelist = []; |
var ipbelist = []; |
||
| ⚫ | |||
var floodlist = []; |
|||
var mmslist = []; |
|||
var botlist = []; |
|||
var done = function () { |
var done = function () { |
||
| Line 47: | Line 51: | ||
$('a.mw-userlink[title="User:' + bureaucratlist[j] + '"]').append('<sup style="color:black;">政</sup>'); |
$('a.mw-userlink[title="User:' + bureaucratlist[j] + '"]').append('<sup style="color:black;">政</sup>'); |
||
} |
} |
||
// Due to Office Actions |
|||
// for (j=0; j<culist.length; j++) { |
|||
$('a.mw-userlink[title="User:' + culist[j] + '"]').append('<sup style="color:purple;">查</sup>'); |
// $('a.mw-userlink[title="User:' + culist[j] + '"]').append('<sup style="color:purple;">查</sup>'); |
||
| ⚫ | |||
// } |
|||
for (j=0; j<oslist.length; j++) { |
for (j=0; j<oslist.length; j++) { |
||
$('a.mw-userlink[title="User:' + oslist[j] + '"]').append('<sup style="color:purple;">监</sup>'); |
$('a.mw-userlink[title="User:' + oslist[j] + '"]').append('<sup style="color:purple;">监</sup>'); |
||
| Line 69: | Line 74: | ||
for (j=0; j<ipbelist.length; j++) { |
for (j=0; j<ipbelist.length; j++) { |
||
$('a.mw-userlink[title="User:' + ipbelist[j] + '"]').append('<sup style="color:green;">代</sup>'); |
$('a.mw-userlink[title="User:' + ipbelist[j] + '"]').append('<sup style="color:green;">代</sup>'); |
||
} |
|||
for (j=0; j<maclist.length; j++) { |
|||
$('a.mw-userlink[title="User:' + ipbelist[j] + '"]').append('<sup style="color:green;">创</sup>'); |
|||
} |
|||
for (j=0; j<floodlist.length; j++) { |
|||
$('a.mw-userlink[title="User:' + ipbelist[j] + '"]').append('<sup style="color:green;">洪</sup>'); |
|||
} |
|||
for (j=0; j<botlist.length; j++) { |
|||
$('a.mw-userlink[title="User:' + ipbelist[j] + '"]').append('<sup style="color:green;">机</sup>'); |
|||
} |
|||
for (j=0; j<mmslist.length; j++) { |
|||
$('a.mw-userlink[title="User:' + ipbelist[j] + '"]').append('<sup style="color:green;">发</sup>'); |
|||
} |
} |
||
}; |
}; |
||
| Line 88: | Line 106: | ||
bureaucratlist.push(user.name); |
bureaucratlist.push(user.name); |
||
} |
} |
||
// Due to Office Actions |
|||
//if (user.groups.indexOf('checkuser') > -1) { |
|||
// culist.push(user.name); |
|||
//} |
|||
if (user.groups.indexOf('oversight') > -1) { |
if (user.groups.indexOf('oversight') > -1) { |
||
oslist.push(user.name); |
oslist.push(user.name); |
||
| Line 105: | Line 124: | ||
if (user.groups.indexOf('autoreviewer') > -1) { |
if (user.groups.indexOf('autoreviewer') > -1) { |
||
alist.push(user.name); |
alist.push(user.name); |
||
} |
|||
if (user.groups.indexOf('bot') > -1) { |
|||
botlist.push(user.name); |
|||
} |
} |
||
} |
} |
||
Revision as of 14:54, 11 May 2018
/**
* 取自 oldid=46135902
* MediaWiki:Gadget-MarkRights.js
*
* 在最近修改、监视列表、条目历史记录等位置以特殊格式显示有特殊权限的用户
*
*/
$(function () {
var markIPBE = function () {
var $users = $('a.mw-userlink:not(.mw-anonuserlink)');
var users = {};
$users.each(function (index, link) {
users[link.textContent] = true;
});
var queue1 = [];
var queue2 = [];
var i=0, n=0;
for (var user in users) {
queue1.push(user);
i++;
if (i === 50) {
queue2.push(queue1);
queue1 = [];
n++;
i = 0;
}
}
if (queue1.length > 0) {
queue2.push(queue1);
n++;
}
var sysoplist = [];
var bureaucratlist = [];
var culist = [];
var oslist = [];
var plist = [];
var rlist = [];
var alist = [];
var ipbelist = [];
var maclist = [];
var floodlist = [];
var mmslist = [];
var botlist = [];
var done = function () {
var j;
for (j=0; j<bureaucratlist.length; j++) {
$('a.mw-userlink[title="User:' + bureaucratlist[j] + '"]').append('<sup style="color:black;">政</sup>');
}
// Due to Office Actions
// for (j=0; j<culist.length; j++) {
// $('a.mw-userlink[title="User:' + culist[j] + '"]').append('<sup style="color:purple;">查</sup>');
// }
for (j=0; j<oslist.length; j++) {
$('a.mw-userlink[title="User:' + oslist[j] + '"]').append('<sup style="color:purple;">监</sup>');
}
for (j=0; j<sysoplist.length; j++) {
$('a.mw-userlink[title="User:' + sysoplist[j] + '"]').append('<sup style="color:mediumvioletred;">管</sup>');
}
for (j=0; j<plist.length; j++) {
$('a.mw-userlink[title="User:' + plist[j] + '"]').append('<sup style="color:sienna;">巡</sup>');
}
for (j=0; j<rlist.length; j++) {
$('a.mw-userlink[title="User:' + rlist[j] + '"]').append('<sup style="color:sienna;">退</sup>');
}
for (j=0; j<alist.length; j++) {
$('a.mw-userlink[title="User:' + alist[j] + '"]').append('<sup style="color:sienna;">免</sup>');
}
for (j=0; j<ipbelist.length; j++) {
$('a.mw-userlink[title="User:' + ipbelist[j] + '"]').append('<sup style="color:green;">代</sup>');
}
for (j=0; j<maclist.length; j++) {
$('a.mw-userlink[title="User:' + ipbelist[j] + '"]').append('<sup style="color:green;">创</sup>');
}
for (j=0; j<floodlist.length; j++) {
$('a.mw-userlink[title="User:' + ipbelist[j] + '"]').append('<sup style="color:green;">洪</sup>');
}
for (j=0; j<botlist.length; j++) {
$('a.mw-userlink[title="User:' + ipbelist[j] + '"]').append('<sup style="color:green;">机</sup>');
}
for (j=0; j<mmslist.length; j++) {
$('a.mw-userlink[title="User:' + ipbelist[j] + '"]').append('<sup style="color:green;">发</sup>');
}
};
var process = function (data) {
var users;
if (data.query && data.query.users) {
users = data.query.users;
} else {
users = [];
}
for (var i=0; i<users.length; i++) {
var user = users[i];
if (user.groups) {
if (user.groups.indexOf('ipblock-exempt') > -1) {
ipbelist.push(user.name);
}
if (user.groups.indexOf('bureaucrat') > -1) {
bureaucratlist.push(user.name);
}
// Due to Office Actions
//if (user.groups.indexOf('checkuser') > -1) {
// culist.push(user.name);
//}
if (user.groups.indexOf('oversight') > -1) {
oslist.push(user.name);
}
if (user.groups.indexOf('sysop') > -1) {
sysoplist.push(user.name);
}
if (user.groups.indexOf('patroller') > -1) {
plist.push(user.name);
}
if (user.groups.indexOf('rollbacker') > -1) {
rlist.push(user.name);
}
if (user.groups.indexOf('autoreviewer') > -1) {
alist.push(user.name);
}
if (user.groups.indexOf('bot') > -1) {
botlist.push(user.name);
}
}
}
n--;
if (n <= 0) {
done();
}
};
var api = new mw.Api();
for (var j=0; j<queue2.length; j++) {
api.get({
format: 'json',
action: 'query',
list: 'users',
usprop: 'groups',
ususers: queue2[j].join('|')
}).done(process);
}
};
markIPBE();
});