Utilisateur:Flo/ListeSuivi.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./* LIEN DE RETRAIT DE LA LISTE DE SUIVI
***************************************************************************
** Fortement adapté de ManWatch (User:Arkanosis/ManWatch.js)
*/
$(document).ready(function(){
if (mw.config.get('wgPageName') !== 'Spécial:Liste_de_suivi') return;
$('tr:has(a[href="https://fr.m.vvikipidea.org/wiki/Utilisateur:Flo"])').addClass('moi');
$("table.mw-enhanced-rc a[href*='action=history']").after(function(n){
var classes = $(this).parents("table.mw-enhanced-rc").attr("class"); // classes de la table
var classe = classes.replace(/.*(mw-changeslist-ns\S+).*/,'$1'); // classe unique recherchée
return " | <span class='" + classe + "'><a class='lien-retrait-rc' href='javascript:void(0)'>retirer</a></span>";
});
$("a.lien-retrait-rc").click(retraitRc);
});
// adaptation de la fonction mediawiki ci-dessous
// bible : https://doc.wikimedia.org/mediawiki-core/master/js/#!/api
function retraitRc(e) {
var api, titre, classe;
mw.loader.load(['mediawiki.notification'], null, true);
e.preventDefault();
e.stopPropagation();
classe = $(this).parent().attr("class");
titre = $(this).parent().siblings("span.mw-title").text();
new mw.Api()
.postWithToken( 'watch', {
action: 'watch',
titles: titre,
uselang: mw.config.get( 'wgUserLanguage' ),
unwatch: 1
})
.done(function(response) {
mw.notify($.parseHTML(response.watch[0].message), {tag: 'watch-self'});
$("table."+classe).fadeTo(1000,0.5);
$("span."+classe).text("retiré !");
})
.fail(function() {
var cleanTitle, msg, link;
cleanTitle = titre.replace(/_/g, ' ');
link = mw.html.element('a', {
href: mw.util.getUrl(titre),
title: cleanTitle
}, cleanTitle);
msg = mw.message('watcherrortext', link);
mw.notify("erreur");
mw.notify(msg, {tag: 'watch-self'});
});
}