Utilisateur:Arkanosis/lastContribs.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) ;
Firefox (sur GNU/Linux) / Chrome / Internet Explorer / Opera : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5./*
***************************************************************************
** lastContribs - Permet de masquer les pages que l'utilisateur a été le dernier
** à modifier sur Spécial:Contributions
** Compatibilité : MediaWiki, testé avec monobook et vector
** Support : Discussion_utilisateur:Arkanosis
** Licence : MIT/X11
**
** Installation : ajouter
** importScript('User:Arkanosis/lastContribs.js');
** dans le monobook.js ou vector.js
*/
var lastContribsHideLink = '<a href="javascript:hideLastContribs();">Masquer</a> les pages que le contributeur a été le dernier à modifier';
var lastContribsShowLink = '<a href="javascript:showLastContribs();">Afficher</a> les pages que le contributeur a été le dernier à modifier';
function hideLastContribs()
{
var pagesToHide = [];
var lis = document.getElementById('bodyContent').getElementsByTagName('li');
for (var liId = 0; liId < lis.length; ++liId)
{
var title = lis[liId].getElementsByTagName('a')[0].getAttribute('title');
var alreadyHiddenBefore = pagesToHide.indexOf(title) != -1;
if (alreadyHiddenBefore ||
lis[liId].innerHTML.indexOf('<span class="mw-uctop">(dernière)</span>') != -1) // FIXME improve this
{
var oldStyle = lis[liId].getAttribute('style');
if (!oldStyle)
oldStyle = '';
lis[liId].setAttribute('style', 'display: none; ' + oldStyle);
if (!alreadyHiddenBefore)
pagesToHide.push(title);
}
}
document.getElementById('lastContribs-ToggleLastContribs').innerHTML = lastContribsShowLink;
}
function showLastContribs()
{
var lis = document.getElementById('bodyContent').getElementsByTagName('li');
for (var liId = 0; liId < lis.length; ++liId)
{
var style = lis[liId].getAttribute('style');
if (style)
lis[liId].setAttribute('style', style.replace('display: none;', ''));
}
document.getElementById('lastContribs-ToggleLastContribs').innerHTML = lastContribsHideLink;
}
function addToggleLastContribsLinks()
{
var fieldset = document.getElementById('bodyContent').getElementsByTagName('fieldset')[0];
var p = document.createElement('p');
p.setAttribute('id', 'lastContribs-ToggleLastContribs');
p.innerHTML = lastContribsHideLink;
fieldset.appendChild(p);
}
if (mw.config.get('wgPageName') == 'Spécial:Contributions')
addOnloadHook(addToggleLastContribsLinks);