Utilisateur:Orlodrim/hist-relecture.js

Note : après avoir enregistré la page, vous devrez forcer le rechargement complet du cache de votre navigateur pour voir les changements.

Mozilla / Firefox / Konqueror / Safari : maintenez la touche Majuscule (Shift) en cliquant sur le bouton Actualiser (Reload) ou pressez Maj-Ctrl-R (Cmd-R sur Apple Mac) ;

Chrome / Internet Explorer / Opera : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5.
function showUnpatrolledChangesInHistory() {
    function extractOldId(url) {
        var oldidMatch = /&oldid=(\d+)/.exec(url);
        return oldidMatch ? parseInt(oldidMatch[1]) : null;
    }
    var api = new mw.Api();
    api.get({
        'action': 'query',
        'list': 'recentchanges',
        'rctype': 'edit|new',
        'rcprop': 'ids',
        'rclimit': 20,
        'rctitle': mw.config.get('wgPageName'),
        'rcshow': '!patrolled'
    }).done(function (data) {
        var actions = data.query.recentchanges;
        var unpatrolled = {};
        for (var i = 0; i < actions.length; i++) {
            unpatrolled[actions[i].revid] = 1;
        }
        $('#pagehistory li').each(function() {
            var oldVersionLink = $(this).children('a').first();
            var oldid = extractOldId(oldVersionLink.attr('href'));
            if (oldid && unpatrolled[oldid]) {
                oldVersionLink.before('<abbr class="unpatrolled" title="Cette modification n’a pas été relue.">!</abbr> ');
            }
        });
    });
}

if (mw.config.get('wgAction') == 'history') {
    mw.loader.using(['mediawiki.api'], function() {
        $(showUnpatrolledChangesInHistory);
    });
}