Utilisateur:Daehan/common.js
Apparence
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.// Script d'affichage et édition des courtes descriptions sur Wikidata
mw.loader.getScript( 'https://en.wikipedia.org/w/load.php?modules=ext.gadget.libSettings' ).then( function() {
mw.loader.load( 'https://en.wikipedia.org/w/load.php?modules=ext.gadget.Shortdesc-helper' );
})
mw.loader.using('mediawiki.util', function () {
// =============================================================
// Liens à gauche
// =============================================================
$(function() {
mw.util.addPortletLink(
'p-tb',
'//fr.wikipedia.org/wiki/Utilisateur:Daehan/Brouillon',
'Brouillon'
);
});
// =============================================================
// Surligner les LI qui sont des redirections
// =============================================================
.mw-redirect{background-color:#e0ffe0;}
// =============================================================
// ImageMapEdit
// https://meta.wikimedia.org/wiki/User:Dapete/ImageMapEdit#English
// =============================================================
if (mw.config.get('wgNamespaceNumber')==6 && mw.config.get('wgAction')=='view') {
mw.loader.load('//tools.wmflabs.org/imagemapedit/ime.js');
}
// =============================================================
// Avoir un bouton stop dans la liste de suivi pour arrêter de suivre un article
// https://darkoneko.wordpress.com/2012/05/11/personnalisons-wikipedia-liste-de-suivi-3/
// =============================================================
importScript('Utilisateur:Darkoneko/addStopInWatchlist.js');
// =============================================================
// Enrouler/dérouler les sections
// https://darkoneko.wordpress.com/2010/03/08/personnalisons-wikipedia-enroulerderouler-des-sections/
// =============================================================
/* Cette fonction ajoute un "onclick" sur chaque titre, qui lancera un appel à toggleTitle() lors d'un clic sur ceux ci */
function ImplementToggleOnclick() {
for( var titleLevel = 1 ; titleLevel < 7 ; titleLevel++) {
var titleList = document.getElementsByTagName('h' + titleLevel)
var nb = titleList.length
for( var b = 0 ; b < nb ; b++) {
titleList[b].setAttribute('onclick', "toggleTitle(this)");
}
}
}
$(ImplementToggleOnclick)
/* Cette fonction, quand invoquée, fait disparaitre ou réaparaitre le contenu placé sous un titre jusqu'au prochain titre de niveau egal ou supérieur
(= un h3 s'arrete au prochain h2 ou h3 mais continuera s'il rencontre un h4 ou h5) */
function toggleTitle(p_this) {
var p_niveau = p_this.nodeName.substring(1,2) //le 1 de h1 (ou 2 de h2, etc.)
//construction de l'expression reguliere permettant le trouver le prochain titre de niveau égal ou supérieur
var stopMatch = "(h1"
for(var a = 2 ; a <= p_niveau ; a++) {
stopMatch += "|h"+a
}
stopMatch += ")"
reg = new RegExp(stopMatch, "i" )
//on ajoute une classe (neko_toggle_cache) au titre pour savoir s'il est en mode replié
if( p_this.className != "neko_toggle_cache") { //il faut replier
p_this.className = "neko_toggle_cache"
var display_to_put = "none"
} else { //il faut faire déplier
p_this.className = ""
var display_to_put = "block"
}
var nextSiblingNode = p_this.nextSibling
while( nextSiblingNode ) {
if( nextSiblingNode.nodeName.match(reg) ) break; //on a atteint le titre "bloquant" suivant = stop
if( nextSiblingNode.style) { //certains nodes sont des nodes texte et n'ont pas de style.
nextSiblingNode.style.display = display_to_put
if( nextSiblingNode.className = "neko_toggle_cache") nextSiblingNode.className = "" // x
}
nextSiblingNode = nextSiblingNode.nextSibling //on passe au voisin suivant
}
}
// ==========================================================================
// Ajoute un élément « Vérifier renvoi biblio. » dans le menu/onglet « Plus »
// ==========================================================================
importScript('Utilisateur:Lgd/refErrors/refErrors.js') ;
// ReferenceTooltips
mw.loader.load( "/w/index.php?title=MediaWiki:Gadget-ReferenceTooltips.js&action=raw&ctype=text/javascript" );