Basculer le menu
Changer de menu des préférences
Basculer le menu personnel
Non connecté(e)
Votre adresse IP sera visible au public si vous faites des modifications.
Version datée du 29 octobre 2025 à 14:14 par Hiob (discussion | contributions)

Note : après avoir publié 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 appuyez sur Ctrl + F5 ou Ctrl + R (⌘ + R sur un Mac).
  • Google Chrome : appuyez sur Ctrl + Maj + R (⌘ + Shift + R sur un Mac).
  •  Edge : maintenez la touche Ctrl en cliquant sur le bouton Actualiser ou pressez Ctrl + F5.
/* Tout JavaScript présent ici sera exécuté par tous les utilisateurs à chaque chargement de page. */
$( function () {
    $( '.citizen-search-trigger' ).on( 'click', function () {
        $( '#searchInput' ).focus();
    } );

    // Raccourci Ctrl+K (ou Cmd+K sur Mac)
    $( document ).on( 'keydown', function ( e ) {
        if ( ( e.ctrlKey || e.metaKey ) && e.key === 'k' ) {
            e.preventDefault();
            $( '#searchInput' ).focus();
        }
    } );
} );

/**
 * Intégration recherche page d'accueil avec Citizen
 */
(function() {
  'use strict';
  
  mw.hook('wikipage.content').add(function($content) {
    // Sélectionne le bouton de recherche custom
    const $customSearch = $content.find('.home-header__search');
    
    if (!$customSearch.length) return;
    
    // Déclenche la recherche native de Citizen au clic
    $customSearch.on('click', function(e) {
      e.preventDefault();
      
      // Méthode 1: Déclenche le bouton de recherche Citizen
      const citizenSearchButton = document.querySelector('.citizen-search__button');
      if (citizenSearchButton) {
        citizenSearchButton.click();
        return;
      }
      
      // Méthode 2 (fallback): Focus direct sur l'input
      const searchInput = document.querySelector('#searchInput, .citizen-search__input');
      if (searchInput) {
        searchInput.focus();
      }
    });
    
    // Support du raccourci clavier "/"
    document.addEventListener('keydown', function(e) {
      if (e.key === '/' && !isInputFocused()) {
        e.preventDefault();
        $customSearch.click();
      }
    });
    
    // Vérifie si un input est focus
    function isInputFocused() {
      const activeEl = document.activeElement;
      return activeEl && (
        activeEl.tagName === 'INPUT' ||
        activeEl.tagName === 'TEXTAREA' ||
        activeEl.isContentEditable
      );
    }
  });
})();
Les témoins (''cookies'') nous aident à fournir nos services. En utilisant nos services, vous acceptez notre utilisation de témoins.