MediaWiki:Gadget-ListeEditions.js
Apparence
Note : après avoir enregistré vos modifications, il se peut que vous deviez forcer le rechargement complet du cache de votre navigateur pour voir les changements.
- Firefox / Safari : Maintenez la touche Maj (Shift) en cliquant sur le bouton Actualiser ou pressez Ctrl-F5 ou Ctrl-R (⌘-R sur un Mac) ;
- Google Chrome : Appuyez sur Ctrl-Maj-R (⌘-Shift-R sur un Mac) ;
- Internet Explorer : Maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl-F5 ;
- Opera : Allez dans Menu → Settings (Opera → Préférences sur un Mac) et ensuite à Confidentialité & sécurité → Effacer les données d'exploration → Images et fichiers en cache.
/**********************
* auteur : Zaran
*
* Futur:
*
* 1) on peut déterminer dans une page Auteur quelles sont tous les pages
* pointant vers main qui sont des pages d'homonymie, rendant inutile le
* <span class="lien-oeuvre">, par exemple via
* http://fr.wikisource.org/w/api.php?action=query&prop=templates&titles=Premier%20Alcibiade|Charmide|Second%20Alcibiade
* ou http://fr.wikisource.org/w/api.php?action=query&prop=categories&titles=Premier%20Alcibiade|Charmide|Second%20Alcibiade
* en catégorisant les pages d'homonymies via le modèle éditions
*
**********************/
jQuery( document ).ready( function( $ ) {
$(".lien-oeuvre").each(function(){
var addr = $(this).find("a").attr("href").split("/").slice(2).join("/");
var scroll = $("<span class='liste-oeuvre derouler'> [+]</span>");
scroll.data("addr",addr);
scroll.data("cached",false);
$(this).after(scroll);
});
$(".liste-oeuvre").click(function(){
if ($(this).hasClass("derouler")){
if ($(this).data("cached")){
$(this).parent().find(".liste-editions").css("display","");
}
else{
var $node = $(this);
$node.parent().append($("<div class='liste-editions'></div>"));
var addr = $node.data("addr");
var content = $("<span />");
content.load("/w/index.php?title=" + addr + "&action=render", function() {
if (content.find("*").filter('#homonymie-editions, #homonymie-traductions').length) {
content = content.find("*").filter("ul:first");
$node.parent().find('*').filter('.liste-editions').append(content);
}
});
$(this).data("cached",true);
}
$(this).removeClass("derouler");
$(this).text(" [–]");
}
else {
$(this).parent().find(".liste-editions").css("display","none");
$(this).addClass("derouler");
$(this).text(" [+]");
}
});
});