MediaWiki:Common.js
Questa pagina definisce alcuni parametri di aspetto e comportamento generale di tutte le pagine. Per personalizzarli vedi Aiuto:Stile utente.
Nota: dopo aver salvato è necessario pulire la cache del proprio browser per vedere i cambiamenti (per le pagine globali è comunque necessario attendere qualche minuto). Per Mozilla / Firefox / Safari: fare clic su Ricarica tenendo premuto il tasto delle maiuscole, oppure premere Ctrl-F5 o Ctrl-R (Command-R su Mac); per Chrome premere Ctrl-Shift-R (Command-Shift-R su un Mac); per Konqueror: premere il pulsante Ricarica o il tasto F5; per Opera può essere necessario svuotare completamente la cache dal menu Strumenti → Preferenze; per Internet Explorer: mantenere premuto il tasto Ctrl mentre si preme il pulsante Aggiorna o premere Ctrl-F5.
/* Il codice JavaScript inserito qui viene caricato da ciascuna pagina, per tutti gli utenti */
// Codice JavaScript: inizio...
/* Modifica il testo della linguetta "Voce" in "Pagina principale"
* e aggiunge il link all'elenco completo di tutte le lingue
*
* Ultimo controllo al codice: 12/12/2013 */
if ( mw.config.get( 'wgIsMainPage' ) || mw.config.get( 'wgPageName' ) === 'Discussione:Pagina_principale' ) {
$( document ).ready( function() {
if ( mw.config.get( 'wgUserLanguage' ) === 'it' )
$( '#ca-nstab-main a' ).text( 'Pagina principale' );
mw.loader.using(['mediawiki.util']).then(function() {
mw.util.addPortletLink( 'p-lang', '//meta.wikimedia.org/wiki/Wikiquote/it#Lista_delle_Wikiquote',
'Elenco completo', 'interwiki-completelist', 'Elenco completo delle Wikiquote' );
} );
} );
};
/* Change Special:Search to use a drop-down menu
*
* Description: Change Special:Search to use a drop-down menu,
* with the default being the internal MediaWiki engine
*
* Created and maintained by: [[w:en:User:Gracenotes]]
*
* Ultimo controllo al codice: 20/02/2014 */
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Search' )
$( function() {
var searchEngines = [];
var createOption = function( site, action, mainQ, addQ, addV ) {
var opt = document.createElement( 'option' );
opt.appendChild( document.createTextNode( site ) );
searchEngines[searchEngines.length] = [action, mainQ, addQ, addV];
return opt;
};
var searchForm = document.forms['powersearch'] || document.forms['search'];
var searchBox = searchForm.lsearchbox || searchForm.search;
var selectBox = document.createElement( 'select' );
selectBox.id = 'searchEngine';
searchForm.onsubmit = function() {
var optSelected = searchEngines[document.getElementById( 'searchEngine' ).selectedIndex];
searchForm.action = optSelected[0];
searchBox.name = optSelected[1];
searchForm.title.value = optSelected[3];
searchForm.title.name = optSelected[2];
};
selectBox.appendChild( createOption( 'MediaWiki', mw.config.get( 'wgScriptPath' ) + '/index.php', 'search', 'title', 'Special:Search' ) );
selectBox.appendChild( createOption( 'Google', '//www.google.com/search', 'q', 'sitesearch', 'it.wikiquote.org') );
selectBox.appendChild( createOption( 'Yahoo', 'http://search.yahoo.com/search', 'p', 'vs', 'it.wikiquote.org') );
selectBox.appendChild( createOption( 'Windows Live', 'http://search.live.com/results.aspx', 'q', 'q1', 'site:it.wikiquote.org' ) );
searchBox.style.marginLeft = '0px';
// 'searchText' is the firt search text. 'powerSearchText' is the second, used only if the first is not existent (e.g.: not yet done any search)
buttonSearch = document.getElementById( 'searchText' ) || document.getElementById( 'powerSearchText' );
buttonSearch.parentNode.insertBefore( selectBox, buttonSearch.nextSibling );
} );
/* Test if an element has a certain class
*
* Description: Uses regular expressions and caching for better performance.
* Maintainers: [[wikt:en:User:Mike Dillon]], [[w:en:User:R. Koot]], [[w:en:User:SG]]
*
* Ultimo controllo al codice: 12/12/2013 */
// DEPRECATO; sostituito con $( element ).hasClass( className )
var hasClass = function( element, className ) {
return $( element ).hasClass( className );
};
/* Simula i titoli delle sezioni senza indicizzazione e senza link di modifica
*
* Per garantire l'accessibilità anche agli utenti che non utilizzano JavaScript
* nel [[Mediawiki:Common.css]] vengono definite le classi: nojs-h1... h2/h3/h4/h5/h6,
* che qui vengono rimosse.
*
* Vedi: [[Template:Titolo sezione]]
* Creato da: [[q:it:User:FRacco]]
*
* Ultimo controllo al codice: 12/12/2013 */
var headersClass = $( function() {
for ( j = 1; j <= 6; j++ ) {
$( ".h" + j ).removeClass( "nojs-h" + j ).html( function( undefined, text ) {
return "<h" + j + ">" + text + "</h" + j + ">";
} );
};
} );
$( document ).ready( headersClass );
// Match links from mobile headings
// Author: [[User:Valerio Bozzolan]], requested by [[User:Spinoziano]]
// https://phabricator.wikimedia.org/P58137
$('body').on( 'click', 'h2.collapsible-heading a', function(e) {
// Do not visit the link if the block is closed.
// Since the user may just want to open the collapsible.
var $linkInHeading = $(this);
var $heading = $linkInHeading.closest( 'h1,h2' );
if( !$heading.hasClass('open-block') ) {
// Don't visit the link
e.preventDefault();
// Open the collapsible instead.
$heading.click();
}
} );
// Altro in MediaWiki:Gadget-site.js!
// Codice JavaScript: ...fine