User:Bosco/MediaWiki:Gadget-MarkRights.js: Difference between revisions
From Test Wiki
Content deleted Content added
Fix: 用戶名帶有空格的編碼 |
切換「互動式瀏覽歷史」差異、最近/相關更改更新時重新進行標記 |
||
| Line 42: | Line 42: | ||
var queue1 = []; |
var queue1 = []; |
||
var queue2 = []; |
var queue2 = []; |
||
var i=0, n=0; |
var i = 0, n = 0; |
||
for (var user in users) { |
for (var user in users) { |
||
queue1.push(user); |
queue1.push(user); |
||
| Line 63: | Line 63: | ||
return decodeURIComponent(username.replace('User:', '').replace(/_/g, ' ')); |
return decodeURIComponent(username.replace('User:', '').replace(/_/g, ' ')); |
||
} |
} |
||
username = url.match(/ |
username = url.match(/\/wiki\/User:(.+?)$/); |
||
if (username) { |
if (username) { |
||
return decodeURIComponent(username[1].replace(/_/g, ' ')); |
return decodeURIComponent(username[1].replace(/_/g, ' ')); |
||
} |
} |
||
return null; |
return null; |
||
} |
}; |
||
var done = function () { |
var done = function () { |
||
var group |
var group; |
||
$('a.mw-userlink:not(.mw-anonuserlink)').each(function(i, el) { |
$('a.mw-userlink:not(.mw-anonuserlink)').each(function (i, el) { |
||
var username = getUsername($(el).attr('href')); |
var username = getUsername($(el).attr('href')); |
||
if (username) { |
if (username) { |
||
| Line 93: | Line 93: | ||
users = []; |
users = []; |
||
} |
} |
||
for (var i=0; i<users.length; i++) { |
for (var i = 0; i < users.length; i++) { |
||
var user = users[i]; |
var user = users[i]; |
||
if (user.groups) { |
if (user.groups) { |
||
| Line 109: | Line 109: | ||
}; |
}; |
||
var api = new mw.Api(); |
var api = new mw.Api(); |
||
for (var j=0; j<queue2.length; j++) { |
for (var j = 0; j < queue2.length; j++) { |
||
api.get({ |
api.get({ |
||
format: 'json', |
format: 'json', |
||
| Line 119: | Line 119: | ||
} |
} |
||
}; |
}; |
||
if (mw.config.get('wgDiffNewId') || mw.config.get('wgDiffOldId')) { |
|||
| ⚫ | |||
// 啟用「互動式瀏覽歷史」,切換差異時重新標記 |
|||
mw.hook('wikipage.diff').add(function () { // Reload alongside the revision slider |
|||
markUG(); |
|||
}); |
|||
} else if (['Recentchanges', 'Recentchangeslinked'].includes(mw.config.get('wgCanonicalSpecialPageName'))) { |
|||
// 最近/相關更改更新時重新標記 |
|||
mw.hook('wikipage.content').add(function (element) { |
|||
if (element.hasClass('mw-changeslist')) { |
|||
markUG(); |
|||
} |
|||
}); |
|||
| ⚫ | |||
} else { |
|||
markUG(); |
|||
} |
|||
}); |
}); |
||