6 446
modifications
Modifications
aucun résumé de modification
* N'importe quel JavaScript ici sera chargé pour n'importe quel utilisateur et pour chaque page accédée.
*
* ATTENTION : Avant de modifier cette page, veuillez tester vos changements avec votre propre
* monobookvector.js. Une erreur sur cette page peut faire bugger le site entier (et gêner l'ensemble des
* visiteurs), même plusieurs heures après la modification !
*
* Prière de ranger les nouvelles fonctions dans les sections adaptées :
* - Fonctions JavaScript
* - Applications qui peuvent être utilisées sur toute page
* - Applications spécifiques à un espace de nom ou une page
* * Note : une ré-écriture de cette page en utilisant jQuery a été commencée sur [[Projet:JavaScript/Refonte Common.js avec jQuery]]. *
* <nowiki> /!\ Ne pas retirer cette balise
*/
/*************************************************************/
* insertAfter : insérer un élément dans une page
*/
mw.log.deprecate( window, 'insertAfter', function insertAfter(parent, node, referenceNode) { parent.insertBefore(node, referenceNode.nextSibling); }, 'Use jQuery\'s .after() or .insertAfter() instead.' );
/**
* getElementsByClass : rechercher les éléments de la page dont le paramètre "class" est celui recherché
*/
mw.log.deprecate( window, 'getElementsByClass', function getElementsByClass(searchClass, node, tag) { if (!node == null) { node = document; } if (!tag == null) { tag = '*'; } return getElementsByClassName$.makeArray( $(node, ).find( tag, + '.' + searchClass) );}, 'Use $( \'.someClass\' ) or $( element ).find( \'.someClass\' ) instead.' );
/**
* Diverses fonctions manipulant les classes
* Utilise des expressions régulières et un cache pour de meilleures perfs
* surveiller l'implémentation de .classList http://www.w3.org/TR/2008/WD-html5-diff-20080122/#htmlelement-extensions
*/
mw.log.deprecate( window, 'hasClass', function whichClass(elementnode, classesclassName ) { var s=" "+element return $( node ).hasClass( className+" "); for}, 'Use $(var i=0;i<classes.length;i++element ) if (s.indexOfhasClass(" "+classes[i]+" "\'class\' )>=0instead.' ) return i; return -1;} mw.log.deprecate( window, 'addClass', function hasClass(node, className) { if ( $(node).hasClass( className == className) ) { return truefalse; } var reg cache = new RegExp('node.className; if (^| cache )'+ { node.className = cache +'($| )')+ className; } else { if (reg.test( node.className)) { return true= className; } return falsetrue;} function addClass, 'Use $(node, classNameelement ) { if .addClass(hasClass(node, \'className\' )instead.' ) { return false; } nodemw.log.className += deprecate( window, ' removeClass'+ className; return true;} , function removeClass(node, className) { if (!$( node ).hasClass(node, className)) { return false; } node.className = eregReplace('(^|\\s+)'+ className +'($|\\s+)', ' ', node.className); return true;}, 'Use $( element ).removeClass( \'className\' ) instead.' ); /* petites fonctions pratiques - Darkoneko, 09/01/2008 */ //créé un lien et le retourne.//le parametre onclick est facultatif.window.createAdressNode = function ( href, texte, onclick ) { var a = document.createElement('a'); a.href = href; a.appendChild(document.createTextNode( texte ) ); if (arguments.length === 3) { a.setAttribute("onclick", onclick ); }
//Créé un cookie. il n'existais qu'une version dédiée à l'accueil. Celle ci est plus générique
//le parametre duree est en jours
window.setCookie = function ( nom, valeur, duree ) {
var expDate = new Date();
expDate.setTime(expDate.getTime() + ( duree * 24 * 60 * 60 * 1000));
document.cookie = nom + "=" + escape(valeur) + ";expires=" + expDate.toGMTString() + ";path=/";
};
/**
* Récupère la valeur du cookie
*/
window.getCookieVal = function getCookieVal(name) { var cookiePos = document.cookie.indexOf(name + "="); var cookieValue = false; if (cookiePos > -1) { cookiePos += name.length + 1; var endPos = document.cookie.indexOf(";", cookiePos); if (endPos > -1){ cookieValue = document.cookie.substring(cookiePos, endPos); } else{ cookieValue = document.cookie.substring(cookiePos); } } return cookieValue;};
// Récupère proprement le contenu textuel d'un noeud et de ses noeuds descendants
// Copyright Harmen Christophe, http://openweb.eu.org/articles/validation_avancee, CC
window.getTextContent = function getTextContent(oNode) { if ( !oNode ) { return null; } if (typeof(oNode.textContent)!=="undefined") { return oNode.textContent; } switch (oNode.nodeType) { case 3: // TEXT_NODE case 4: // CDATA_SECTION_NODE return oNode.nodeValue; break; case 7: // PROCESSING_INSTRUCTION_NODE case 8: // COMMENT_NODE if (getTextContent.caller!==getTextContent) { return oNode.nodeValue; } break; case 9: // DOCUMENT_NODE case 10: // DOCUMENT_TYPE_NODE case 12: // NOTATION_NODE return null; break; } var _textContent = ""; oNode = oNode.firstChild; while (oNode) { _textContent += getTextContent(oNode); oNode = oNode.nextSibling; } return _textContent;}; if ( !String.prototype.HTMLize ) { String.prototype.HTMLize = function() { var chars = [ '&', '<', '>', '"' ]; var entities = [ 'amp', 'lt', 'gt', 'quot' ]; var string = this; for ( var i = 0; i < chars.length; i++ ) { var regex = new RegExp( chars[ i ], 'g' ); string = string.replace( regex, '&' + entities[ i ] + ';' ); } return string; };
}
/**********************************************************************************************************/
/* Fonctions générales MediaWiki (pallient les limitations du logiciel) */
/* Surveiller : httphttps://svngit.wikimedia.org/viewvchistory/mediawiki%2Fcore.git/trunk/phase3HEAD/skins/common/wikibits%2Fcommon%2Fwikibits.js?view=log */
/**********************************************************************************************************/
/*
* Fonction générales de lancement de fonctions ou de script
* DÉPRÉCIÉ : utiliser addOnloadHook simplement$( func ) qui fait partie de jQuery
*/
mw.log.deprecate( window, 'addLoadEvent', function ( hookFunct ) { $( function addLoadEvent(func) { addOnloadHook hookFunct(func); });}, 'Use jQuery instead.' );
/**
* Insérer un JavaScript d'une page particulière, idée de Mickachu * DÉPRÉCIÉ : utiliser importScript ( page ) qui fait partie du logicielde MediaWiki
*/
/**
* Projet JavaScript
*/
window.obtenir = function obtenir(name) { importScript('MediaWiki:Gadget-' + name + '.js');};
/**
* Transformer les pages du Bistro, du BA et les pages spécifiées en page de discussion
*/
function TransformeEnDiscussion($ ) { if( (wgPageName.search(' /^Wikipédia:(Le_Bistro') != -1) |Bulletin_des_administrateurs| Questions_techniques)/.test(wgPageNamemw.config.searchget('Wikipédia:Bulletin_des_administrateurswgPageName') != -1) || document.getElementById $('#transformeEnPageDeDiscussion').length ) { $( 'body' ).removeClass(document.body, 'ns-subject'); .addClass(document.body, 'ns-talk'); } }addOnloadHook(TransformeEnDiscussion); /** * Transformer certaines pages en pseudo-article * c'est raisonnable ? --Tavernier */function TransformeEnArticle() { var transformeEnA = document.getElementById("transformeEnArticle"); if(transformeEnA) document.body.className = "ns-0";
}
/**
* Ajouter un bouton à la fin de la barre d'outils
*/
if ( typeof addCustomButton === 'undefined' ) { mw.log.deprecate( window, 'addCustomButton', function addCustomButton(imageFile, speedTip, tagOpen, tagClose, sampleText, imageId) { mwCustomEditButtons[mwCustomEditButtons if ( mw.length] =toolbar ) { mw.toolbar.addButton( {"imageId": imageId, " imageFile": imageFile.replace( /^http:(\/\/upload\.wikimedia\.org\/)/, '$1' ), " speedTip": speedTip, " tagOpen": tagOpen, " tagClose": tagClose, " sampleText": sampleText, imageId: imageId } ); } }, 'Use mw.toolbar.addButton instead.' );
}
* Voir MediaWiki:Common.js/edit.js pour ces fonctions
*/
if( wgAction == ['edit' || ,'submit'].indexOf(mw.config.get('wgAction ')) !== 'submit' -1 ) { importScript( 'MediaWiki:Common.js/edit.js' );} /** * Liens d'accès directs pour la navigation au clavier */function showSkipLinks() { var jump_to_nav = document.getElementById('jump-to-nav'); if( !jump_to_nav ) return; var skip_links = jump_to_nav.getElementsByTagName('A')[0]; jump_to_nav.className='hidden'; skip_links.onfocus=function() { jump_to_nav.className=''; }
}
/**
*
* Fonction utilisée par [[Modèle:Titre incorrect]]
*
* La fonction cherche un bandeau de la forme
* <div id="RealTitleBanner">
* Un élément comportant id="DisableRealTitle" désactive la fonction
*/
function rewritePageH1rewritePageTitle($ ) { var $realTitle, titleText, $h1, $realTitleBanner = document.getElementById$('#RealTitleBanner'); if ($realTitleBanner) { if (.length && !document.getElementById$('#DisableRealTitle').length ) { var $realTitle = document.getElementById$('#RealTitle'); var $h1 = document.getElementById$('firstHeading'); if(!h1) h1 = document.getElementsByTagName(:first'h1')[0]; // Nostalgia, Standard var realH1 = getTextContent(h1); if ($realTitle .length && $h1.length ) { var titleText = $realTitle.innerHTMLhtml(); if (titleText === '') { $h1.style.display = 'none'hide(); } else { $h1.innerHTML = html( titleText); realTitleBanner if ( mw.styleconfig.display get('wgAction') === 'noneview'; if&& $realTitle.children(wgNamespaceNumber).length ===0 || wgNamespaceNumber==10) { var avert document.title = document$realTitle.text() + " — Wikipédia"; } } $realTitleBanner.createElementhide(); $('<p>') avert.style.fontSize = css( 'font-size', '9080%';) avert .innerHTML = html( 'Titre à utiliser pour créer un lien interne : <b>'+realH1+'</b>'; insertAfter(documentmw.config.getElementByIdget('contentwgPageName'),avert,h1); } } } }}addOnloadHook.replace(rewritePageH1); /** * Icônes de titre * * Cherche les icônes de titre (class="icone_de_titre") et les * déplace à droite du titre de la page. * Doit être exécuté après une éventuelle correction de titre. *_/function IconesDeTitre() { var h1 = document.getElementById(g, 'firstHeading'); if(!h1) h1 = document.getElementsByTagName(+ 'h1')[0]; <// Nostalgia, Standard if(!h1) return; var icones = getElementsByClass( "icone_de_titre", document, "div" ); for( var j = icones.length; j b> 0; --j ' ){ icones[j-1] .style.display = "block"; /* annule display:none par défaut */ icones[j-1].style.borderWidth = "1px"; icones[j-1].style.borderStyle = "solid"; icones[j-1].style.borderColor = "white"; ifinsertAfter(( skin == "modern" )||( skin == "vector" $h1 )){ icones[j-1].style.marginTop = "0em"; } h1.parentNode.insertBefore(icones[j-1], h1); /* déplacement de l'élément */ }
}
/**
*
* Fonction utilisée par [[Modèle:Sous-titre]]
*
* La fonction cherche un élément de la forme
* <span id="sous_titre_h1">Sous-titre</span>
*/
function sousTitreH1($content ) { var span= document.getElementById $('#firstHeading > #sous_titre_h1'); var title=document.getElementByIdremove('firstHeading'); if(!title) title var $span = document$content.getElementsByTagNamefind('h1#sous_titre_h1')[0]; // Nostalgia, Standard if ($span && title.length ) { var subtitle= $span.cloneNodeprepend(true' ' ); title.appendChild(document.createTextNode $(' #firstHeading')); title.appendChild(subtitle); span.parentNode.removeChildappend($span); }
}
/**
* Boîtes déroulantes
*
* Pour [[Modèle:Méta palette de navigation]]
*/
}
function createCollapseButtonsPalette(element ) { if ( !element ) { element = document; } var $tables = $( element ).find( 'table.collapsible' ); var tableIndex groups = 0{}; $tables.each( function( _, table ) { var NavigationBoxes group = new Objecttable.getAttribute('data-autocollapse-group') || '__default__'; groups[group] = ( groups[group] || 0 ) + 1; } ); $tables.each( function( _, table ) { var Tables $table = document.getElementsByTagName$( "table" );
}
}
/**
* WikiMiniAtlas * * voir WPUtilisation du modèle Modèle:WMA Animation
*/
var wma_settings Diaporama = { };Diaporama.Params = {};Diaporama.Fonctions = {}; Diaporama.Params.DiaporamaIndex = 0;Diaporama.Params.ImageDelay = 1;Diaporama.Params.Paused = [];Diaporama.Params.Visible = [];Diaporama.Params.Length = [];Diaporama.Params.Delay = [];Diaporama.Params.Timeout = []; Diaporama.Fonctions.Init = function(node){ if (!node) { node = document; } var Diaporamas = $( node ).find( 'div.diaporama' ).get(); for (var a=0, l=Diaporamas.length; a<l; a++) { Diaporama.Fonctions.InitDiaporama(Diaporamas[a]); buttonImage: }};Diaporama.Fonctions.InitDiaporama = function(DiaporamaDiv){ var index = Diaporama.Params.DiaporamaIndex; Diaporama.Params.DiaporamaIndex++; DiaporamaDiv.id = "Diaporama_"+index; var DiaporamaFileContainer = $( DiaporamaDiv ).find( 'div.diaporamaFiles' )[0]; var DiaporamaControl = $( DiaporamaDiv ).find( 'div.diaporamaControl' )[0]; if (!DiaporamaFileContainer || !DiaporamaControl) { return; } var DiaporamaFiles = $( DiaporamaFileContainer ).find( 'div.ImageFile' ).get(); var width; var firstTumbinner = $( DiaporamaFileContainer ).find( 'div.thumbinner'http:)[0]; if (firstTumbinner) { //uploadforce la largeur du diaporama (pour IE) width = firstTumbinner.wikimediastyle.orgwidth.split("px").join(""); } else { if (DiaporamaFileContainer.firstChild.firstChild) { width = DiaporamaFileContainer.firstChild.firstChild.offsetWidth; } } if (width) { DiaporamaDiv.style.width = (parseInt(width)+30) + "px"; } if (DiaporamaFiles.length<2) { return; } Diaporama.Params.Length[index] = DiaporamaFiles.length; DiaporamaFileContainer.id = "DiaporamaFileContainer_"+index; DiaporamaControl.id = "DiaporamaControl_"+index; Diaporama.Params.Delay[index] = Diaporama.Params.ImageDelay; var DiaporamaDivClass = DiaporamaDiv.className.HTMLize(); var ParamDelay = DiaporamaDivClass.match(/wikipedia/commons/thumbDelay[0-9]+(\.|,)?[0-9]*/); if (ParamDelay !== null) { ParamDelay = parseFloat(ParamDelay[0].split("Delay").join("").split(",").join(".")); if (ParamDelay && ParamDelay>0) { Diaporama.Params.Delay[index] = ParamDelay; } } Diaporama.Fonctions.ShowThisDiapo(index, 0); var ControlLinks = DiaporamaControl.getElementsByTagName("a"); ControlLinks[0].firstChild.id = "DiaporamaPlay"+index; ControlLinks[0].href = "javascript:Diaporama.Fonctions.Play("+index+");"; ControlLinks[1].firstChild.id = "DiaporamaPause"+index; ControlLinks[1].href = "javascript:Diaporama.Fonctions.Pause("+index+");"; ControlLinks[2].firstChild.id = "DiaporamaStop"+index; ControlLinks[2].href = "javascript:Diaporama.Fonctions.Stop("+index+");"; ControlLinks[3].firstChild.id = "DiaporamaLast"+index; ControlLinks[3].href = "javascript:Diaporama.Fonctions.ToggleDiapo("+index+",-1);"; ControlLinks[4].firstChild.id = "DiaporamaNext"+index; ControlLinks[4].href = "javascript:Diaporama.Fonctions.ToggleDiapo("+index+", 1);"; ControlLinks[5].parentNode.appendChild(Diaporama.Fonctions.CreateSelect(index, ControlLinks[5].title)); ControlLinks[5].parentNode.removeChild(ControlLinks[5]); for (var e=0, t=ControlLinks.length; e<t; e++) { ControlLinks[e].onmousedown = function(){Diaporama.Fonctions.Onclick(this);}; ControlLinks[e].onmouseup = function(){Diaporama.Fonctions.Offclick(this, index);}; ControlLinks[e].firstChild.style.backgroundColor = "white"; ControlLinks[e/e9/Geographylogo].onmouseover = function(){ this.focus(); }; } DiaporamaControl.style.display = "block"; Diaporama.Fonctions.Pause(index);}; Diaporama.Fonctions.Play = function(index){ if (Diaporama.Params.Paused[index] === false) { return; } Diaporama.Params.Paused[index] = false; clearTimeout(Diaporama.Params.Timeout[index]); Diaporama.Params.Timeout[index] = setTimeout("Diaporama.Fonctions.ToggleDiapo("+index+",1);", Diaporama.Params.Delay[index]*1000); var ButtonPlay = document.getElementById("DiaporamaPlay"+index); ButtonPlay.style.backgroundColor = "silver"; var ButtonPause = document.getElementById("DiaporamaPause"+index); ButtonPause.style.backgroundColor = "white"; var ButtonStop = document.getElementById("DiaporamaStop"+index); ButtonStop.style.backgroundColor = "white";}; Diaporama.Fonctions.Pause = function(index){ Diaporama.Params.Paused[index] = true; clearTimeout(Diaporama.Params.Timeout[index]); var ButtonPlay = document.getElementById("DiaporamaPlay"+index); ButtonPlay.style.backgroundColor = "white"; var ButtonPause = document.getElementById("DiaporamaPause"+index); ButtonPause.style.backgroundColor = "silver"; var ButtonStop = document.svg/18px-GeographylogogetElementById("DiaporamaStop"+index); ButtonStop.svgstyle.png'backgroundColor = "white";};
Diaporama.Fonctions.ToggleDiapo = function imageGroup(index, diff){ if clearTimeout(documentDiaporama.URLParams.match(/printable/g)Timeout[index]) return; var bcDiaporamaFileContainer =document.getElementById("bodyContentDiaporamaFileContainer_"+index); if( !bc ) bc = document.getElementById("mw_contentholder"); if( !bc ) bc var DiaporamaFiles = document.getElementById("article"); if$( !bc DiaporamaFileContainer ) return; var divs=bc.getElementsByTagNamefind("'div"); var i = 0, j = 0; var units, search; var currentimage; var UnitNode; for (i = 0; i < divs.length ; i++ImageFile' ) { if (divs[i].className != "ImageGroup") continue; UnitNode=undefined; search=divs[i].getElementsByTagNameget("div"); for (j var VisibleIndex = 0; j < searchDiaporama.length ; j++) { if (search[j]Params.className != "ImageGroupUnits") continue; UnitNode=searchVisible[jindex]; break; } if (UnitNode var NextDiaporamaIndex ==undefined) continue; units=Array(); for (j = 0 ; j < UnitNode.childNodes.length ; j+VisibleIndex+ diff) { var temp = UnitNode.childNodes[j]; if (temp.classNameNextDiaporamaIndex =="center") units.push(temp); } for (j = 0 ; j < unitsDiaporamaFiles.length ; j++|| NextDiaporamaIndex < 0) { currentimage=units[j]; currentimage.id="ImageGroupsGr"+i+"Im"+j; var imghead DiaporamaDiv = document.createElementgetElementById("divDiaporama_"+index); var leftlink; var rightlink; if (j diff < 0 || != 0) { leftlink = document.createElement$("a"DiaporamaDiv ); leftlink.href = "javascript:toggleImage("+i+","+j+","+hasClass(j-1'AutoLoop' )+");"; leftlink.innerHTML="◀"; } else { leftlink = document.createElement("span") return; leftlink.innerHTML=" "; } if (j ! NextDiaporamaIndex = units.length - 1) { rightlink = document.createElement("a")0; rightlink.href = "javascript:toggleImage("+i+","+j+","+(j+1)+");"; rightlink.innerHTML="▶"; } else { rightlink = document.createElement("span"); rightlink.innerHTML=" "; } var comment = document.createElement("tt"); comment.innerHTML = "("+ (j+1) + "/" + units.length + ")"; with(imghead) { style Diaporama.fontSize="110%"; styleFonctions.fontweight="bold"; appendChild(leftlink); appendChildShowThisDiapo(comment); appendChild(rightlink); } currentimage.insertBefore(imgheadindex,currentimage.childNodes[0]NextDiaporamaIndex); if (j != 0) currentimage.style.display="none"; } }}addOnloadHook(imageGroup);
Diaporama.Fonctions.UpdateSelect = function redirectedFromArticle(index) { var Select = document.getElementById("DiaporamaSelect"+index); if (wgIsArticle == false!Select){ return; } var Opts = Select.getElementsByTagName('option'); for (var i o= 0, p=Opts.length; i o< redirectedFromArticleDatas.lengthp; o++i) { var page_match if (o == redirectedFromArticleDatas[i]; var index = wgPageNameDiaporama.Params.indexOf(page_matchVisible[0index]); if (index == 0) { var div Opts[o].selected = document.getElementById('contentSub')"selected"; var span = document.getElementById('redirected_from'); } else { // real target is always encoded in the anchor Opts[o]. target selected = window.location.hashfalse; if (!div || !span || target == '') } } break};
Diaporama.Fonctions.getIndex = function movePortalToCategoryBox(Element) { if return parseInt(Element.id.replace(!gUseMovePortalToCategoryBox/[^0-9]/g, "")); return};
/**
* Permet d'afficher les catégories cachées pour les contributeurs enregistrés, en ajoutant un (+) à la manière des boîtes déroulantes
*/
function hiddencat($ ){ if (typeof DesactiveHiddenCat !== "undefined" && DesactiveHiddenCat) { return; } if(document.URL.indexOf("printable=yes")!==-1) { return; } var cl = document.getElementById('catlinks'); if(!cl) { return; if( !( } var $hc = document.getElementById$('#mw-hidden-catlinks'); if ( !$hc.length ) ) { return; } if( $hc.hasClass(hc, 'mw-hidden-cats-user-shown') ) { return; } if( $hc.hasClass(hc, 'mw-hidden-cats-ns-shown') ) { $hc.addClass(hc, 'mw-hidden-cats-hidden'); } var nc = document.getElementById('mw-normal-catlinks'); if( !nc ) { var catline = document.createElement('div'); catline.id = 'mw-normal-catlinks'; var a = document.createElement('a'); a.href = '/wiki/Catégorie:Accueil'; a.title = 'Catégorie:Accueil'; a.appendChild(document.createTextNode('Catégories')); catline.appendChild(a); catline.appendChild(document.createTextNode(' : ')); nc = cl.insertBefore(catline, cl.firstChild); }else { else nc.appendChild(document.createTextNode(' | ')); } var lnk = document.createElement('a'); lnk.id = 'mw-hidden-cats-link'; lnk.title = 'Cet article contient des catégories cachées'; lnk.style.cursor = 'pointer'; lnk.style.color = 'black'; $(lnk).onclick = click(toggleHiddenCats); lnk.appendChild(document.createTextNode('[+]')); hclink = nc.appendChild(lnk);
}
function toggleHiddenCats(e){ var $hc = $('#mw-hidden-catlinks'); if( $hc.hasClass(hc, 'mw-hidden-cats-hidden') ) { $hc.removeClass(hc, 'mw-hidden-cats-hidden'); $hc.addClass(hc, 'mw-hidden-cat-user-shown'); changeText $(e.target).text(hclink, '[–]'); } else { $hc.removeClass(hc, 'mw-hidden-cat-user-shown'); $hc.addClass(hc, 'mw-hidden-cats-hidden'); changeText $(e.target).text(hclink, '[+]'); }
}
/**
* Script pour alterner entre deux plusieurs cartes de géolocalisation
*/
/**
* permet d'ajouter un petit lien (par exemple d'aide) à la fin du titre d'une page.
* utilisé par [[Modèle:Aide contextuelle]]
* known bug : conflit avec le changement de titre classique.
* Pour les commentaires, merci de contacter [[user:Plyd|Plyd]].
*/
function rewritePageH1bis() {
}
/**
* application de [[Wikipédia:Prise de décision/Système Configuration du tri des diacritique dans les tables de cache]] * un <span class="noarchivesortable"> autour du lien l'empêche d'être pris en compte * pour celui-ci uniquement * un no_external_cache=true dans un monobouc personnel désactive le script
*/
mw.config.set( 'tableSorterCollation', {'à':'a', 'â':'a', 'æ':'ae', 'é':'e', 'è':'e', 'ê':'e', 'î':'i', 'ï':'i', 'ô':'o', 'œ':'oe', 'û':'u', 'ç':'c', } );
}
/**
* Application de [[Wikipédia:Prise de décision/Lien interprojet]] * Copie les liens interprojets du modèle {{Autres projets}} * dans le menu en colonne de gauche. * remove_other_projects = true; dans le monobook personnel pour activer * en plus la suppression du modèle {{Autres projets}} Ajout d'un lien « ajouter une section » en bas des articles. * no_other_projects = true; dans le monobook personnel pour désactiver * entièrement le script et l'ajout dans la colonne de gauche.page
*/
$( function( $ ) {
var $newSectionLink = $( '#ca-addsection a' );
if ( $newSectionLink.length ) {
$( '#mw-content-text' ).append(
'<div style="text-align:right; font-size:0.9em; margin:1em 0 -0.5em">'
+ '<a href="' + $newSectionLink.attr( 'href' ) + '" title="Commencer une nouvelle section">Ajouter un sujet</a>'
+ '</div>'
);
}
} );
/************************************************************/
/* Function Strictement spécifiques à un espace de nom ou à une page */
/************************************************************/
/**
* Suppression du titre sur Sur la page d'accueil, * changement de l'onglet et lien vers la liste complète des Wikipédias depuis l'accueiluniquement
*/
}
// ESPACE DE NOM 'SPECIAL'
if ( mw.config.get( 'wgNamespaceNumber' ) === -1 ) {
/**
* Ajoute le namespace aux filtres personnalisés sur [[Spécial:Pages liées]]
* Voir aussi [[MediaWiki:Linkshere]]
*/
if (mw.config.get('wgCanonicalSpecialPageName') === 'Whatlinkshere') {
$(document).ready(function ($) {
var query = (new mw.Uri()).query;
var append = (query.namespace ? '&namespace=' + query.namespace : '')
+ (query.invert ? '&invert=' + query.invert : '');
/**
* Afficher une explication au nombre d'octets dans Affiche un modèle Information sur la liste page de suivitéléchargement de fichiers [[Spécial:Téléchargement]] * Voir aussi [[MediaWiki:Onlyifuploading.js]]
*/
}
/**
* Supprime de la liste des balises disponibles et de la liste des balises supprimables
* certaines balises réservées à des outils automatiques
*/
if (mw.config.get('wgCanonicalSpecialPageName') === 'EditTags') {
mw.loader.using('mediawiki.special.edittags', function () {
$(function ($) {
var tagstokeep = [
'AWB',
'BandeauxCategories',
'BandeauxEbauches',
'BandeauxPortails',
'HotCats',
'LiveRC',
'PaFtec',
'PaStec',
'Popups',
'RenommageCategorie',
'WPCleaner',
'C-helper'
];
function shouldkeep(tag) {
return tagstokeep.indexOf(tag) !== -1;
}
if ($('div.permissions-errors').length) {
return;
}
var canremoveall = true; $('input.mw-edittags-remove-checkbox').each(function externalSearchEngines(i, checkbox) { if (typeof SpecialSearchEnhanced2Disabled !shouldkeep(checkbox.value)) { checkbox.disabled = 'undefineddisabled'; canremoveall = false; } }) return; if (wgPageName != "Spécial:Recherche"canremoveall) { $('#mw-edittags-remove-all').prop('disabled', true) return; }
var CadreOngletVoirOngletN = function changeSearchEngine(selectedId) { var vOngletNom = this.id.substr(0, searchTermsthis.id.indexOf("onglet",1) {); var vOngletIndex = this.id.substr(this.id.indexOf("onglet",0)+6,this.id.length);
var Onglets = $('#' + vOngletNom).children("div").eq(0).children("div");
for ( var j = 0; j < Onglets.length; j++) {
var Onglet = Onglets[j];
var Feuillet = document.getElementById(vOngletNom + "feuillet" + j);
if (wgPageName vOngletIndex == "Spécial:Recherche"= j) {var searchEngines Feuillet.style.display = { mediawiki: { ShortName: "Recherche interneblock",; Template: "/w/index Feuillet.style.php?searchvisibility ={searchTerms}"visible"; }, $(Onglet).removeClass("ongletBoutonNonSel"); exalead: { ShortName: $(Onglet).addClass("ExaleadongletBoutonSel",); Template: "http://www Onglet.exaleadstyle.com/search/wikipedia/results/?qcursor={searchTerms}&language=fr"default"; }, google: { ShortName: Onglet.style.backgroundColor="Googleinherit",; Template: Onglet.style.borderTopColor="inherit"http:; //wwwpropriété par propriété sinon Chrome/Chromium se loupe Onglet.googlestyle.fr/search?as_sitesearchborderRightColor=fr"inherit"; Onglet.wikipediastyle.org&hlborderBottomColor={language}&q={searchTerms}" }, wikiwix: { ShortName: "Wikiwixinherit",; Template: "http://fr Onglet.wikiwixstyle.com/index.php?actionborderLeftColor={searchTerms}&lang={language}"inherit"; }, wlive: else { ShortName: Feuillet.style.display = "Bingnone",; Template: "http://www Feuillet.bingstyle.com/search?qvisibility ={searchTerms}&q1=site:http://fr"hidden"; $(Onglet).wikipedia.orgremoveClass("ongletBoutonSel"); }, yahoo: { ShortName: $(Onglet).addClass("Yahoo!ongletBoutonNonSel",); Template: "http://fr.search Onglet.yahoostyle.com/search?pcursor={searchTerms}&vs=fr.wikipedia.org" },globalwpsearch: { ShortName: pointer"Global WP",; Template: "http://vs Onglet.aka-onlinestyle.de/cgi-bin/globalwpsearchbackgroundColor=rule1; Onglet.style.pl?timeoutborderColor=120&search={searchTermsrule2; }" } return false;
};
var CadreOngletInitN = function ( $ ) {
var i, j, Onglet, Feuillet;
var Classeurs = $('div.classeur');
for ( i = 0; i < Classeurs.length; i++ ) {
var Classeur = Classeurs[i];
Classeur.setAttribute( "id", "classeur" + i );
var vOgIni = -1; // pour connaître l’onglet renseigné
Onglet.setAttribute( "id", "classeur" + i + "onglet" + j );
Feuillet.setAttribute( "id", "classeur" + i + "feuillet" + j );
Onglet.onclick = CadreOngletVoirOngletN;
/* En phase / inutile sauf dans le cas où l’onglet de test départ est *//mal* DÉBUT DU CODE JAVASCRIPT DE "CADRE À ONGLETS"renseigné Fonctionnement du [[Modèle:Cadre à onglets]] Modèle implanté par User:Peleguer de http://ca.wikipedia.org Actualisé par User:Joanjoc de http://ca.wikipedia.org Traduction et adaptation User:Antaya de http://fr.wikipedia.org*/function CadreOngletInit if (vOgIni === -1){ // retour si ailleurs que sur l'espace utilisateur, // sachant que c'est une horreur au niveau de l'accessibilité // et qu'il est impossible de "récupérer" ou de recycler ce script // vOgIni = Math.floor((celui-ci fonctionnant par inclusion de sous pagesOnglets.length) if *Math.random(wgCanonicalNamespace != 'User') return); var i=0 for document.getElementById(i=0;i<=9;"classeur"+i+"feuillet"+vOgIni){.style.display = "block"; var vMb = document.getElementById("mbclasseur"+i+"feuillet"+vOgIni); if (!vMb) break; var j.style.visibility =1 var vOgIni = 0 for (j=1;j<=9"visible";j++){ var vBt vBtElem = document.getElementById("mbclasseur"+i+"btonglet"+jvOgIni); $(Onglet).removeClass("ongletBoutonNonSel"); if $(Onglet).addClass(!vBt"ongletBoutonSel") break; vBt vBtElem.style.cursor="default"; vBtElem.style.onclick backgroundColor= CadreOngletVoirOnglet"inherit"; if (vBt vBtElem.style.borderTopColor="inherit"; // propriété par propriété sinon Chrome/Chromium se loupe vBtElem.style.classNameborderRightColor="inherit"; vBtElem.style.borderBottomColor="mbBoutonSelinherit") vOgIni; vBtElem.style.borderLeftColor=j"inherit"; } }};
/*FIN DU CODE JAVASCRIPT DE "CADRE À ONGLETS"*/
} // Fin du code concernant l'espace de nom 'Utilisateur'
// ESPACE DE NOM 'RÉFÉRENCE'
if( mw.config.get( 'wgNamespaceNumber ' ) === 104 ) {
/*
*/
// select subsection of special charactersvar chooseBibSubset = function (s) { var l = document.getElementsByTagName('div'); for (var i = 0; i < l.length; i++) { if (l[i].className === 'BibList') { l[i].style.display = s === 0 ? 'block' : 'none'; } else if (l[i].className === 'WikiNorme') { l[i].style.display = s === 1 ? 'block' : 'none'; } else if (l[i].className === 'BibTeX') { l[i].style.display = s === 2 ? 'block' : 'none'; } else if (l[i].className === 'ISBD') { l[i].style.display = s === 3 ? 'block' : 'none'; } else if (l[i].className === 'ISO690') { l[i].style.display = s === 4 ? 'block' : 'none'; } }}; var addBibSubsetMenu= function () { var specialBib = document.getElementById('specialBib'); if (!specialBib) { return; } specialBib.style.display = 'block'; var menu = '<select style="display:inline;" onChange="chooseBibSubset(selectedIndex)">' + '<option>Liste</option>' + '<option>WikiNorme</option>' + '<option>BibTeX</option>' + '<option>ISBD</option>' + '<option>ISO690</option>' + '</select>'; specialBib.innerHTML = specialBib.innerHTML + menu;
} // Fin du code concernant l'espace de nom 'Référence'
// TOUS LES ESPACES DE NOMS SAUF L'ESPACE PRINCIPAL
/* Permet d'afficher un compte à rebours sur une page avec le modèle [[Modèle:Compte à rebours]] */
/* Plyd - 3 février 2009 */
function Rebours() {
}
// Personnalisation des liens dans les pages d'aide selon un paramètre de l'URL.
// Utilisé par Modèle:Brouillon.
function ReplaceSourcePageInLinks() {
var match = window.location.search.match( /[?&]sourcepage=([^&]*)/ );
if ( !match ) {
return;
}
var page = decodeURIComponent( match[1] );
$( '.sourcepage-subst a' ).each( function() {
if ( /^(https?:)?\/\/[^/]+\.wikipedia\.org\//.test( this.href ) ) {
this.href = this.href.replace( 'TITRE-A-REMPLACER', encodeURIComponent( page ) );
}
} );
}
/**
* Ajoute la date de dernière modification sur le bandeau événement récent
*/
function LastModCopy( $ ) {
// L'id change entre Monobook et Modern d'une part, et Vector d'autre part
$( '.lastmodcopy' ).html( $( '#lastmod, #footer-info-lastmod' ).html() );
}
/**
* Import des scripts liés à la liste de suivi
*/
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Watchlist' ) {
importScript( 'MediaWiki:Common.js/watchlist.js' );
}
/*********************************/
/* Autres fonctions non classées */
/*********************************/
/*
* Dernière révision : 21 novembre 2007
*/
function getStrDateToday(format){ var str_mois = new Array();[ with (str_mois) { push( "janvier");, push( "février");, push( "mars");, push( "avril");, push( "mai");, push( "juin");, push( "juillet");, push( "août");, push( "septembre");, push( "octobre");, push( "novembre");, push( "décembre") ]; } var today = new Date(); var day = today.getDate(); var year = today.getYear(); if (year < 2000) { year = year + 1900; } var str_date = format; //Création de la chaîne var regex = /j/gi; str_date = str_date.replace(regex, day.toString()); regex = /a/gi; str_date = str_date.replace(regex, year.toString()); regex = /m/gi; str_date = str_date.replace(regex, str_mois[today.getMonth()]); return (str_date);} /* Outil pour permettre l'affichage immédiat d'un javascript pour tous les utilisateurs en même temps. Même s'ils ne rechargent pas Wikipédia avec CTRL+R. Utile initialement pour prévoir une bonne réactivité et un lancement général du [[Projet:Impression]]. Plyd - 12 octobre 2008 tag urgentsynchronejs inclus (pas encore) dans [[MediaWiki:Copyright]]*/function urgentSynchroneJsLoad() { if (document.getElementById('urgentsynchronejs')) { jsname = "MediaWiki:Common.js/"+document.getElementById('urgentsynchronejs').title; importScript(jsname); }}addOnloadHook(urgentSynchroneJsLoad); /* WikiForm pour la génération facilité de modèles *//* Plyd - 10/02/2008 */if (document.getElementById("WikiForm")) { importScript("MediaWiki:Gadget-WikiForm.js");} /* petites fonctions pratiques - Darkoneko, 09/01/2008 */ //créé un lien et le retourne.//le parametre onclick est facultatif.function createAdressNode(href, texte, onclick) { var a = document.createElement('a') a.href = href a.appendChild(document.createTextNode( texte ) ) if(arguments.length == 3) { a.setAttribute("onclick", onclick ) } return a} //Créé un cookie. il n'existais qu'une version dédiée à l'accueil. Celle ci est plus générique//le parametre duree est en joursfunction setCookie(nom, valeur, duree ) { var expDate = new Date() expDate.setTime(expDate.getTime() + ( duree * 24 * 60 * 60 * 1000)) document.cookie = nom + "=" + escape(valeur) + ";expires=" + expDate.toGMTString() + ";path=/"} /* /petites fonctions pratiques */ /** For sysops and accountcreators ***************************************** * Repris depuis Common.js @ enwiki - Crée le common.js réservé aux admins. * * Description: Allows for sysop-specific Javascript at [[MediaWiki:Sysop.js]], * and accountcreator-specific CSS at [[MediaWiki:Accountcreator.css]]. */if ( wgUserGroups ) { for ( var g = 0; g < wgUserGroups.length; ++g ) { if ( wgUserGroups[g] == "sysop" ) { importStylesheet("MediaWiki:Sysop.css"); addOnloadHook( function() { if ( !window.disableSysopJS ) { importScript("MediaWiki:Sysop.js"); } } ); } }}
}