משתמש:קובי כרמל/patroller.js
הערה: לאחר הפרסום, ייתכן שיהיה צורך לנקות את זיכרון המטמון (cache) של הדפדפן כדי להבחין בשינויים.
- פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
- גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
- אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
//Yonidebest, קובי כרמל, קיפודנחש
if ($.inArray(mw.config.get('wgCanonicalSpecialPageName'), ["Recentchanges", "Watchlist", "Recentchangeslinked"]) + 1) {
mw.loader.load('mediawiki.api');
$(function() {
function prePatrol(a, checkbox) {
$.get(a.attr('href'), function(data) {
var patrolLink = $(data).find('.patrollink a');
if (patrolLink.length)
{
$.get(patrolLink.attr('href') + '&redirect=no', function() {
mw.util.jsMessage('העריכה סומנה כבדוקה');
$(checkbox).remove();
});
}else{alert('לא ניתן לסמן דף זה כבדוק. ייתכן כי זהו דף הפניה או שהוא כבר סומן כבדוק על ידי משתמש אחר.')};
});
}
function addCheckbox(elem, abbr) {
var a = elem.find('a').filter(function() { return /diff=\d+/.test($(this).attr('href')); } );
if (!a.length){
if(elem.find('.unpatrolled').length){
var a=elem.find('.mw-title a');
}else{return}
};
abbr.before($('<input>', {'type': 'checkbox'}).change(function() {prePatrol(a, this);}));
abbr.remove();
}
$('td.mw-enhanced-rc').each(function() {
var td = $(this);
var abbr = td.find('abbr.unpatrolled');
var sib = td.siblings();
if (sib.find('.mw-collapsible-toggle').length)
return;
addCheckbox(sib, abbr);
});
$('li.mw-line-odd, li.mw-line-even').each(function() {
addCheckbox($(this), $(this).find('abbr.unpatrolled'));
});
})
}