MediaWiki:Common.js: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Modifiche richieste in RA per fix problema con le voci di qualità negli interlink
 
(140 versioni intermedie di 17 utenti non mostrate)
Riga 1:
/* Il codice JavaScript inserito qui viene caricato da ciascuna pagina, per tutti gli utenti. */
 
/* Serve per "sabotare" www.wikipedia.it e tutti gli altri siti che ci includono in frame. "Salta fuori" dai frame.
Va alla pagina del toolserver il cui contenuto è preso dalla pagina [[Utente:Pietrodn/www.wikipedia.it]], modificabile solo dagli admin.
Poi reindirizza a http://it.wikipedia.org */
if (mw.config.get('wgIsMainPage') && top != self)
top.___location.replace('http://toolserver.org/~pietrodn/wikipedia_redirect.php');
 
/*
* Redirect bad mirrors to it.wikipedia.org
* [[m:User:Hoo man]]
*/
( function( mw ) {
var i, isBad,
badMirrors = [
'wikipedia.sapere.alice.it',
'wikipedia.deejay.it',
'wikipedia.kataweb.it',
'212.48.3.33',
'wikipedia.virgilio.it',
'213.92.16.218',
];
for( i = 0; i < badMirrors.length; i++ ) {
if ( document.___location.href.indexOf( badMirrors[ i ] ) !== -1 ) {
isBad = true;
break;
}
}
if ( isBad ) {
// redirect users to the same page on itwiki
//document.___location.href = '//it.wikipedia.org/wiki/' + mw.config.get( 'wgPageName' );
// redirect users to a landing page
document.___location.href = '//it.wikipedia.org/wiki/Wikipedia:Live_mirror';
}
} )( mediaWiki );
 
//DEPRECATO
function addLoadEvent(func)
{
if (window.addEventListener)
window.addEventListener("load", func, false);
else if (window.attachEvent)
window.attachEvent("onload", func);
}
 
 
/*** Collegamento diretto alla pagina di upload di Commons nel portlet Strumenti */
$(function(){
mw.util.addPortletLink('p-tb', '//commons.wikimedia.org/wiki/Commons:Upload/it',
'Carica su Commons', 't-uploadcommons', 'Carica file multimediali su Wikimedia Commons', 'm', '#t-specialpages');
});
 
 
/*** Evidenzia i link agli articoli di qualità su altre wiki */
function LinkAdQ()
{
if ( document.getElementById( "p-lang" ) ) {
var InterwikiLinks = document.getElementById( "p-lang" ).getElementsByTagName( "li" );
 
for ( var i = 0; i < InterwikiLinks.length; i++ ) {
var className = InterwikiLinks[i].className.match(/interwiki-[-\w]+/);
if ( document.getElementById( className + '-fa' ) ) {
InterwikiLinks[i].className += " FA";
InterwikiLinks[i].title = "La voce è in vetrina in questa lingua.";
} else if ( document.getElementById( className + '-ga' ) ) {
InterwikiLinks[i].className += " GA"
InterwikiLinks[i].title = "La voce è di qualità in questa lingua.";
}
}
}
}
 
$( LinkAdQ );
 
/*
* Modifica il testo della linguetta "Voce" in "Pagina principale"
* e aggiunge il link alla lista completa di tutte le pagine
*/
if (mw.config.get('wgIsMainPage') || mw.config.get('wgPageName') === "Discussione:Pagina_principale")
$(function() {
if (mw.config.get('wgUserLanguage') === 'it')
$('#ca-nstab-main a').text('Pagina principale');
 
mw.util.addPortletLink('p-lang', '//meta.wikimedia.org/wiki/Lista_di_Wikipedie',
'Lista completa', 'interwiki-completelist', 'Lista completa delle Wikipedie');
});
 
/** "Technical restrictions" title fix *****************************************
*
* Descrizionen: Codice per [[Template:Titolo errato]]
* Copiato inizialmente da [[:en:MediaWiki:Common.js]]
*/
// The function looks for a banner like this: <nowiki>
// <div id="RealTitleBanner"> <!-- div that gets hidden -->
// <span id="RealTitle">title</span>
// </div>
// </nowiki>An element with id=DisableRealTitle disables the function.
var disableRealTitle = 0; // users can disable this by making this true from their user script
function correctTitle() {
try {
var realTitleBanner = document.getElementById("RealTitleBanner");
if (realTitleBanner && !document.getElementById("DisableRealTitle") && !disableRealTitle) {
var realTitle = document.getElementById("RealTitle");
if (realTitle) {
var realTitleHTML = realTitle.innerHTML;
var realTitleText = $(realTitle).text();
 
var containsTooMuchHTML = /</.test( realTitleHTML.replace(/<\/?(sub|sup|small|big|a)>/gi, "") ); // contains HTML that will be ignored when cut-n-pasted as a wikilink
 
var h1 = document.getElementsByTagName("h1")[0];
if (h1) {
h1.innerHTML = containsTooMuchHTML ? realTitleText : realTitleHTML;
 
realTitleBanner.style.display = "none";
}
document.title = realTitleText + " - Wikipedia";
}
}
} catch (e) {
/* Something went wrong. */
}
}
 
$(correctTitle);
/** WikiMiniAtlas *******************************************************
*
* Description: WikiMiniAtlas is a popup click and drag world map.
* This script causes all of our coordinate links to display the WikiMiniAtlas popup button.
* The script itself is located on meta because it is used by many projects.
* See [[Meta:WikiMiniAtlas]] for more information.
*/
mw.loader.load('//meta.wikimedia.org/w/index.php?title=MediaWiki:Wikiminiatlas.js&action=raw&ctype=text/javascript&smaxage=21600&maxage=86400');
 
 
//============================================================
// Menu caratteri speciali
//============================================================
 
/**
* Mantenere il codice di MediaWiki:Common.js il più breve possibile, in quanto è caricato
* Aggiunge il menu a tendina per selezionare un sottoinsieme di caratteri speciali
* da ciascuna pagina, per tutti gli utenti che navigano sulla versione desktop.
* Attenzione: l'ordine della lista deve corrispondere a quello di MediaWiki:Edittools !
* Creare piuttosto accessori abilitati di default (gli accessori sono infatti moduli
* ottimizzati del ResourceLoader con la possibilità di aggiungere dipendenze, ecc.).
*/
/* global mediaWiki, jQuery */
/* select subsection of special characters */
function scegliSubsetCaratteri(s) {
var l = document.getElementById('specialchars').getElementsByTagName('p');
for (var i = 0; i < l.length ; i++) {
l[i].style.display = i == s ? 'inline' : 'none';
l[i].style.visibility = i == s ? 'visible' : 'hidden';
}
}
 
( function aggiungiMenuSubsetCaratteri( mw, $ ) {
'use strict';
var specialchars = document.getElementById('specialchars');
if (specialchars) {
var menu = "<select style=\"display:inline\" onChange=\"scegliSubsetCaratteri(selectedIndex)\">";
menu += "<option>Latino esteso</option>";
menu += "<option>Wiki</option>";
menu += "<option>Greco antico</option>";
menu += "<option>Greco moderno</option>";
menu += "<option>Cirillico</option>";
menu += "<option>Arabo</option>";
menu += "<option>Ebraico e yiddish</option>";
menu += "<option>Armeno</option>";
menu += "<option>Geroglifico</option>";
menu += "<option>Vietnamita</option>";
menu += "<option>IPA</option>";
menu += "<option>Matematica</option>";
menu += "</select>";
specialchars.innerHTML = menu + specialchars.innerHTML;
/* default subset - try to use a cookie some day */
scegliSubsetCaratteri(0);
}
}
$(aggiungiMenuSubsetCaratteri);
 
// ============================
// END Menu caratteri speciali
// Caricamento script
// ============================
 
/**
/*** RICERCA ***/
* Ricerca in Wikidata
/**
*/
*******************************************************
if (
*
mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Search' ||
* Descrizione: Cambia Speciale:Ricerca per usare un menu' a
( mw.config.get( 'wgArticleId' ) === 0 && mw.config.get( 'wgCanonicalSpecialPageName' ) === false )
* tendina, con come default il motore interno di MediaWiki
) {
*
mw.loader.load( '//en.wikipedia.org/w/index.php?title=MediaWiki:Wdsearch.js&action=raw&ctype=text/javascript' );
* Creato e gestito da: [[:en:User:Gracenotes]]
}
* Importato in it.wiki da: [[Utente:Jalo]]
*/
if (mw.config.get('wgPageName') == "Speciale:Ricerca")
$(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');
// Modifica HTML pagine
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', 'Speciale:Ricerca'));
* Aggiunge un combobox a [[MediaWiki:Edittools]] per selezionare un gruppo di caratteri speciali.
selectBox.appendChild(createOption('Google', 'http://www.google.com/search', 'q', 'sitesearch', 'it.wikipedia.org'));
*/
selectBox.appendChild(createOption('Yahoo', 'http://search.yahoo.com/search', 'p', 'vs', 'it.wikipedia.org'));
function comboboxEdittools() {
selectBox.appendChild(createOption('Windows Live', 'http://search.live.com/results.aspx', 'q', 'q1', 'site:http://it.wikipedia.org'));
var $specialChars = $( '#specialchars' );
selectBox.appendChild(createOption('Wikiwix', 'http://it.wikiwix.com/', 'action', 'lang', 'it'));
if ( $specialChars.length ) {
selectBox.appendChild(createOption('Exalead', 'http://www.exalead.com/wikipedia/results', 'q', 'language', 'it'));
var $select = $( '<select>' ).change( function () {
searchBox.style.marginLeft = '0px';
$specialChars.find( 'p' ).hide();
$specialChars.find( 'option:selected' ).data().show();
// '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');
$specialChars.find( 'p' ).each( function () {
$( '<option>' ).html( $( this ).attr( 'id' ).replace( /_/g, ' ' ) )
.data( $( this ) ).appendTo( $select );
} );
$specialChars.prepend( $select );
$select.change();
}
}
 
$( comboboxEdittools );
buttonSearch.parentNode.insertBefore(selectBox, buttonSearch.nextSibling);
});
 
// ============================
// Serve per far funzionare il Cassetto2 con IE6.
// Supporto ai template
if (window.attachEvent && !window.XMLHttpRequest) window.attachEvent("onload", function() {
// ============================
var x = mw.util.$content.get(0).getElementsByTagName("div");
for (var i=0; i<x.length; i++) {
if (x[i].className != "HopFrame") continue;
var y=x[i].getElementsByTagName("div"); var j;
for (j=0; j<y.length; j++)
if (y[j].className == "HopContent") {x[i].hopContent = y[j]; break;}
if (j<y.length) {
x[i].onmouseover=function() { this.hopContent.style.display="block"; };
x[i].onmouseout=function() { this.hopContent.style.display="none"; };
}
}
});
 
/**
// BEGIN Dynamic Navigation Bars
* Utilizzata con [[template:Galleria]] per creare una galleria di immagini,
* cerca un HTML (creato dal template) contenente:
* <div class="ImageGroup"><div class="ImageGroupUnits">immagini</div></div>
* Idea originale da [[fr:MediaWiki:Common.js]] del 2007.
* @author [[it:User:Rotpunkt]]
*/
function updateImageGroup( currImg, $images, $countInfo, $prevLink, $nextLink ) {
$images.hide().eq( currImg ).show();
$countInfo.html( '(' + ( currImg + 1 ) + '/' + $images.length + ')' );
$prevLink.toggle( currImg !== 0 );
$nextLink.toggle( currImg !== $images.length - 1 );
}
 
function initImageGroup() {
$( 'div.ImageGroup > div.ImageGroupUnits' ).each( function ( i, imageGroupUnits ) {
var currImg = 0;
var $images = $( imageGroupUnits ).children( '.center, .mw-halign-center' );
var $countInfo = $( '<kbd>' ).css( 'font-size', '110%' );
var $prevLink = $( '<a>' )
.attr( 'href', '#' ).attr( 'title', 'Immagine precedente' )
.text( '◀' ).css( 'text-decoration', 'none' )
.click( function ( e ) {
e.preventDefault();
updateImageGroup( currImg -= 1, $images, $countInfo, $prevLink, $nextLink );
} );
var $nextLink = $( '<a>' )
.attr( 'href', '#' ).attr( 'title', 'Immagine successiva' )
.text( '▶' ).css( 'text-decoration', 'none' )
.click( function ( e ) {
e.preventDefault();
updateImageGroup( currImg += 1, $images, $countInfo, $prevLink, $nextLink );
} );
updateImageGroup( currImg, $images, $countInfo, $prevLink, $nextLink );
$( imageGroupUnits ).prepend( $prevLink, $countInfo, $nextLink );
} );
}
 
$( initImageGroup );
/* Test if an element has a certain class **************************************
*
* Description: Uses regular expressions and caching for better performance.
* Maintainers: User:Mike Dillon, User:R. Koot, User:SG
*/
var hasClass = (function () {
var reCache = {};
return function (element, className) {
return (reCache[className] ? reCache[className] : (reCache[className] = new RegExp("(?:\\s|^)" + className + "(?:\\s|$)"))).test(element.className);
};
})();
 
/**
 
* Utilizzata con [[Template:Navbox]]: se presente più di un navbox con
// set up the words in your language
* classe mw-collapsible, quelli con autocollapse si chiudono da soli.
var NavigationBarHide = '▲ nascondi';
*/
var NavigationBarShow = '▼ mostra';
function checkAutocollapse( $content ) {
 
var $navbox = $content.filter( '.navbox' );
// set up max count of Navigation Bars on page,
if ( $navbox.length > 1 ) {
// if there are more, all will be hidden
$navbox.filter( '.autocollapse' ).find( '.mw-collapsible-toggle' ).click();
// NavigationBarShowDefault = 0; // all bars will be hidden
// NavigationBarShowDefault = 1; // on pages with more than 1 bar all bars will be hidden
var NavigationBarShowDefault = 0;
 
 
// shows and hides content and picture (if available) of navigation bars
// Parameters:
// indexNavigationBar: the index of navigation bar to be toggled
function toggleNavigationBar(indexNavigationBar)
{
var NavToggle = document.getElementById("NavToggle" + indexNavigationBar);
var NavFrame = document.getElementById("NavFrame" + indexNavigationBar);
 
if (!NavFrame || !NavToggle) {
return false;
}
 
// if shown now
if (NavToggle.firstChild.data == NavigationBarHide) {
for (
var NavChild = NavFrame.firstChild;
NavChild != null;
NavChild = NavChild.nextSibling
) {
if (hasClass(NavChild, 'NavPic')) {
NavChild.style.display = 'none';
}
if (hasClass(NavChild, 'NavContent')) {
NavChild.style.display = 'none';
}
if (hasClass(NavChild, 'NavToggle')) {
NavChild.firstChild.data = NavigationBarShow;
}
}
 
// if hidden now
} else if (NavToggle.firstChild.data == NavigationBarShow) {
for (
var NavChild = NavFrame.firstChild;
NavChild != null;
NavChild = NavChild.nextSibling
) {
if (hasClass(NavChild, 'NavPic')) {
NavChild.style.display = 'block';
}
if (hasClass(NavChild, 'NavContent')) {
NavChild.style.display = 'block';
}
if (hasClass(NavChild, 'NavToggle')) {
NavChild.firstChild.data = NavigationBarHide;
}
}
}
}
 
// adds show/hide-button to navigation bars
function createNavigationBarToggleButton()
{
var indexNavigationBar = 0;
// iterate over all < div >-elements
for(
var i=0;
NavFrame = document.getElementsByTagName("div")[i];
i++
) {
// if found a navigation bar
if (hasClass(NavFrame, 'NavFrame')) {
 
indexNavigationBar++;
var NavToggle = document.createElement("a");
NavToggle.className = 'NavToggle';
NavToggle.setAttribute('id', 'NavToggle' + indexNavigationBar);
NavToggle.setAttribute('href', 'javascript:toggleNavigationBar(' + indexNavigationBar + ');');
 
var NavToggleText = document.createTextNode(NavigationBarHide);
NavToggle.appendChild(NavToggleText);
 
// add NavToggle-Button as first div-element
// in < div class="NavFrame" >
NavFrame.insertBefore(
NavToggle,
NavFrame.firstChild
);
NavFrame.setAttribute('id', 'NavFrame' + indexNavigationBar);
}
}
// if more Navigation Bars found than Default: hide all
if (NavigationBarShowDefault < indexNavigationBar) {
for(
var i=1;
i<=indexNavigationBar;
i++
) {
toggleNavigationBar(i);
}
}
 
}
 
$(createNavigationBarToggleButton);
 
// END Dynamic Navigation Bars
 
 
/** Collapsible tables *********************************************************
*
* Taken from //en.wikipedia.org/wiki/MediaWiki:Common.js
* Description: Allows tables to be collapsed, showing only the header. See
* Wikipedia:NavFrame.
* Maintainers: User:R. Koot
*/
 
var autoCollapse = 2;
var collapseCaption = "nascondi";
var expandCaption = "mostra";
 
function collapseTable( tableIndex )
{
var Button = document.getElementById( "collapseButton" + tableIndex );
var Table = document.getElementById( "collapsibleTable" + tableIndex );
 
if ( !Table || !Button ) {
return false;
}
 
var Rows = Table.getElementsByTagName( "tr" );
 
if ( Button.firstChild.data == collapseCaption ) {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = "none";
}
Button.firstChild.data = expandCaption;
} else {
for ( var i = 1; i < Rows.length; i++ ) {
Rows[i].style.display = Rows[0].style.display;
}
Button.firstChild.data = collapseCaption;
}
}
 
function createCollapseButtons()
{
var tableIndex = 0;
var NavigationBoxes = new Object();
var Tables = document.getElementsByTagName( "table" );
 
for ( var i = 0; i < Tables.length; i++ ) {
if ( hasClass( Tables[i], "collapsible" ) ) {
NavigationBoxes[ tableIndex ] = Tables[i];
Tables[i].setAttribute( "id", "collapsibleTable" + tableIndex );
 
var Button = document.createElement( "span" );
var ButtonLink = document.createElement( "a" );
var ButtonText = document.createTextNode( collapseCaption );
 
Button.style.styleFloat = "right";
Button.style.cssFloat = "right";
Button.style.fontWeight = "normal";
Button.style.textAlign = "right";
Button.style.width = "7em";
 
ButtonLink.setAttribute( "id", "collapseButton" + tableIndex );
ButtonLink.setAttribute( "href", "javascript:collapseTable(" + tableIndex + ");" );
ButtonLink.appendChild( ButtonText );
 
Button.appendChild( document.createTextNode( "[" ) );
Button.appendChild( ButtonLink );
Button.appendChild( document.createTextNode( "]" ) );
 
var Header = Tables[i].getElementsByTagName( "tr" )[0].getElementsByTagName( "th" )[0];
/* only add button and increment count if there is a header row to work with */
if (Header) {
Header.insertBefore( Button, Header.childNodes[0] );
tableIndex++;
}
}
}
 
for ( var i = 0; i < tableIndex; i++ ) {
if ( hasClass( NavigationBoxes[i], "collapsed" ) || ( tableIndex >= autoCollapse && hasClass( NavigationBoxes[i], "autocollapse" ) ) ) {
collapseTable( i );
}
}
}
 
$( createCollapseButtons );
 
//END Collapsible tables
 
//HIDDENCAT (mostra le categorie nascoste). Scippato ai francesi
//@ deprecated
function addClass(node, className) {
if (hasClass(node, className)) {
return false;
}
node.className += ' '+ className;
return true;
}
 
function eregReplace(search, replace, subject) {
return subject.replace(new RegExp(search,'g'), replace);
}
 
//@ deprecated
function removeClass(node, className) {
if (!hasClass(node, className)) {
return false;
}
node.className = eregReplace('(^|\\s+)'+ className +'($|\\s+)', ' ', node.className);
return true;
}
 
function hiddencat()
{
var cl = document.getElementById('catlinks'); if(!cl) return;
var hc = document.getElementById('mw-hidden-catlinks'); if(!hc) return;
var nc = document.getElementById('mw-normal-catlinks');
if(!nc)
{
removeClass(cl, 'catlinks-allhidden');
addClass(cl, 'catlinks-allhidden-mostra');
var ahc = '<div id="mw-normal-catlinks"><a href="/wiki/Categoria:Categorie" title="Categoria:Categorie">Categorie</a>&nbsp;:&#32;<span dir="ltr"><a onclick="javascript:toggleHiddenCats();" id="mw-hidden-cats-link" style="cursor:pointer; color:#002BB8;" title="Questa voce contiene categorie nascoste">[altre]</a></span></div>';
document.getElementById('catlinks').innerHTML = ahc + cl.innerHTML;
}
else if( hasClass(hc, 'mw-hidden-cats-hidden') )
{
var ahc = ' | <a onclick="javascript:toggleHiddenCats();" id="mw-hidden-cats-link" style="cursor:pointer; color:#002BB8;" title="Questa voce contiene categorie nascoste">[altre]</a>';
document.getElementById('mw-normal-catlinks').innerHTML += ahc;
}
}
function toggleHiddenCats()
{
var hc = document.getElementById('mw-hidden-catlinks');
if( hasClass(hc, 'mw-hidden-cats-hidden') )
{
removeClass(hc, 'mw-hidden-cats-hidden');
addClass(hc, 'mw-hidden-cat-user-shown');
 
//L'elemento <span /> crea problemi a HotCat
document.getElementById('mw-hidden-cats-link').innerHTML = '[nascondi]';
//document.getElementById('mw-hidden-cats-link').innerHTML = '[<span style="font-style:italic;">nascondi</span>]';
}
else
{
removeClass(hc, 'mw-hidden-cat-user-shown');
addClass(hc, 'mw-hidden-cats-hidden');
 
//Vedi commento sopra
document.getElementById('mw-hidden-cats-link').innerHTML = '[altre]';
//document.getElementById('mw-hidden-cats-link').innerHTML = '[<span style="font-style:italic;">altre</span>]';
}
}
$(hiddencat);
 
/* Layout pagina di modifica */
$( function ()
{
if (mw.config.get('wgAction') == "edit")
{
/* Allarga l'edittools a tutta pagina */
$('#Standard').css( 'width', '100%' );
}
});
 
/* Avvisa quando si tenta di creare una voce con titolo non valido ("Scrivi qui il titolo")*/
$ ( function ()
{
if (mw.config.get('wgTitle') == "Scrivi qui il titolo" && mw.config.get('wgAction') == "edit")
{
dopoDi = document.getElementById("contentSub");
if (!dopoDi) return;
var daInserire = document.createElement('div');
daInserire.innerHTML = "<b>Stai creando una voce senza specificarne un titolo valido. Per favore, torna indietro e inserisci un titolo valido.</b>";
daInserire.className = "toccolours itwiki_template_avviso rad";
daInserire.style.marginBottom = "0.5em";
daInserire.style.background = "#FC9";
daInserire.style.borderColor = "red";
daInserire.style.textAlign = "center";
daInserire.style.fontSize = "120%";
dopoDi.parentNode.insertBefore(daInserire, dopoDi.nextSibling);
}
});
 
/* Avvisa quando si tenta di creare una discussione al bar con titolo non valido ("Scrivi qui il titolo")*/
$ ( function ()
{
if (mw.config.get('wgTitle') == "Wikipedia:Bar/Discussioni/SCRIVI QUI SOLO IL TITOLO" && mw.config.get('wgAction') == "edit")
{
dopoDi = document.getElementById("contentSub");
if (!dopoDi) return;
var daInserire = document.createElement('div');
daInserire.innerHTML = "<b>Stai creando una discussione del bar senza specificarne un titolo valido. Per favore, torna indietro e inserisci un titolo valido.</b>";
daInserire.className = "toccolours itwiki_template_avviso rad";
daInserire.style.marginBottom = "0.5em";
daInserire.style.background = "#FC9";
daInserire.style.borderColor = "red";
daInserire.style.textAlign = "center";
daInserire.style.fontSize = "120%";
dopoDi.parentNode.insertBefore(daInserire, dopoDi.nextSibling);
}
});
 
/** extract a URL parameter from the current URL **********
* From [[en:User:Lupin/autoedit.js]] and [[en:MediaWiki:Common.js]]
*
* paramName : the name of the parameter to extract
*/
//DEPRECATO
function getURLParamValue(param, url) {
return mw.util.getParamValue(param, url);
}
/** &withJS= URL parameter *******
* Allow to try custom scripts from MediaWiki space
* without editing [[Special:Mypage/monobook.js]]
*/
var extraJS = getURLParamValue("withJS");
if ( extraJS && extraJS.match("^MediaWiki:[^&<>=%]*\\.js$") ) {
importScript(extraJS);
}
 
 
/*** Codice per il Template:Galleria ***/
function toggleImage(group, remindex, shwindex) {
document.getElementById("ImageGroupsGr"+group+"Im"+remindex).style.display="none";
document.getElementById("ImageGroupsGr"+group+"Im"+shwindex).style.display="inline";
}
function ImageGroup(){
if (document.___URL.match(/printable/g)) return;
var bc=mw.util.$content.get(0);
var divs=bc.getElementsByTagName("div");
var i = 0, j = 0;
var units, search;
var currentimage;
var UnitNode;
for (i = 0; i < divs.length ; i++) {
if (divs[i].className != "ImageGroup") continue;
UnitNode=undefined;
search=divs[i].getElementsByTagName("div");
for (j = 0; j < search.length ; j++) {
if (search[j].className != "ImageGroupUnits") continue;
UnitNode=search[j];
break;
}
if (UnitNode===undefined) continue;
units=Array();
for (j = 0 ; j < UnitNode.childNodes.length ; j++ ) {
var temp = UnitNode.childNodes[j];
if (temp.className=="center") units.push(temp);
}
for (j = 0 ; j < units.length ; j++) {
currentimage=units[j];
currentimage.id="ImageGroupsGr"+i+"Im"+j;
var imghead = document.createElement("div");
var leftlink;
var rightlink;
if (j != 0) {
leftlink = document.createElement("a");
leftlink.href = "javascript:toggleImage("+i+","+j+","+(j-1)+");";
leftlink.innerHTML="◀";
} else {
leftlink = document.createElement("span");
leftlink.innerHTML="&nbsp;";
}
if (j != units.length - 1) {
rightlink = document.createElement("a");
rightlink.href = "javascript:toggleImage("+i+","+j+","+(j+1)+");";
rightlink.innerHTML="▶";
} else {
rightlink = document.createElement("span");
rightlink.innerHTML="&nbsp;";
}
var comment = document.createElement("tt");
comment.innerHTML = "("+ (j+1) + "/" + units.length + ")";
imghead.style.fontSize="110%";
imghead.style.fontweight="bold";
imghead.appendChild(leftlink);
imghead.appendChild(comment);
imghead.appendChild(rightlink);
currentimage.insertBefore(imghead,currentimage.childNodes[0]);
if (j != 0) currentimage.style.display="none";
}
}
}
$(ImageGroup);
 
 
// Toglie "Soggetto/Intestazione" nelle creazioni delle discussioni al Bar
if (mw.config.get('wgNamespaceNumber') == 4 &&
mw.config.get('wgPageName').indexOf("Wikipedia:Bar/") == 0 &&
mw.config.get('wgAction') == "edit" &&
document.___URL.indexOf("&section=new&preload=") != -1)
$( function ()
{
document.getElementById('wpSummaryLabel').style.display="none";
document.getElementById('wpSummary').style.display="none";
});
 
 
 
//Cambia posizione e link del link "modifica" delle sezioni
//Fatto in Common.css, questo è un fix per IE7
if ($.client.profile().name == 'msie' && $.client.profile().versionNumber < 8)
$(function(){
$('.editsection').each(function(i, e){$(e).parent().append(e)});
});
 
 
/** Workaround temporaneo *************
* Workaround per il vecchio codice che usa document.write(): a partire da MediaWiki 1.17 non è più possibile usarlo.
* Questo codice sostituisce le funzioni document.write() e document.writeln() con funzioni personalizzate.
* Quando possibile, traduce in una chiamata a importScriptURI(); in tutti gli altri casi, ritorna senza far nulla.
* E' codice poco robusto e che va rimosso al più presto, dopo aver aggiornato i vecchi codici.
*/
if (mw.config.get('wgVersion') >= "1.17"){
try{
document.write = document.writeln = function(str){
var start, end;
try{
if (str.indexOf("<script") != -1){
start = str.indexOf("src");
start = str.indexOf("\"", start+1) + 1;
end = str.indexOf("\"", start);
importScriptURI(str.substring(start, end));
} else {
//Ignora la chiamata
}
} catch (e) { /* Ignora */ }
};
} catch (e) { /* Ignora */ }
}
 
/** OpenStreetMap nel template Coord **/
// Verwendung von OpenStreetMap in Wikipedia.
// (c) 2008 by Magnus Manske
// Released under GPL
// Modified version in order to makes it work with moveCoord() above
// From fr:mediawiki:common.js
// modified to makes it work for IT : Otourly
 
if(typeof(MoveResizeAbsolute_AddMoveArea)!="function") importScriptURI('//it.wikipedia.org/w/index.php?title=MediaWiki:Gadget-MoveResizeAbsolute.js&action=raw&ctype=text/javascript');
function openStreetMap_Init () {
var c = document.getElementById ( 'coordinates' ) ;
if ( !c ) return ;
var a = c.getElementsByTagName ( 'a' ) ;
var geohack = false;
for ( var i = 0 ; i < a.length ; i++ ) {
var h = a[i].href ;
if ( !h.match(/geohack/) ) continue ;
geohack = true ;
break ;
}
if ( !geohack ) return ;
var na = document.createElement ( 'a' ) ;
na.href = 'javascript:openStreetMap_Toggle();' ;
na.title = 'Mostrare / nascondere la mappa' ;
na.appendChild ( document.createTextNode ( 'Mappa' ) ) ;
c.appendChild ( document.createTextNode ( ' (' ) ) ;
c.appendChild ( na ) ;
c.appendChild ( document.createTextNode ( ') ' ) ) ;
}
function openStreetMap_Toggle () {
var c = document.getElementById ( 'coordinates' ) ;
if ( !c) return ;
var osm = document.getElementById ( 'OpenStreetMap' ) ;
if (osm) {
if ( osm.style.display == 'none' ) {
osm.style.display = 'block' ;
} else {
osm.style.display = 'none' ;
}
return;
}
var found_link = false ;
var a = c.getElementsByTagName ( 'a' ) ;
var h;
for ( var i = 0 ; i < a.length ; i++ ) {
h = a[i].href ;
if ( !h.match(/geohack/) ) continue ;
found_link = true ;
break ;
}
if ( !found_link ) return ; // No geohack link found
h = h.split('params=')[1] ;
var LarghezzaSchermo = MoveResizeAbsolute_GetScreenWidth();
var AlterigiaSchermo = MoveResizeAbsolute_GetScreenHeight();
var OSMDiv = document.createElement('div');
OSMDiv.id = 'OpenStreetMap' ;
OSMDiv.style.position = "absolute";
OSMDiv.style.zIndex = 5000;
OSMDiv.style.top = (AlterigiaSchermo*10/100) + "px";
OSMDiv.style.left = (LarghezzaSchermo*15/100) + "px";
OSMDiv.style.width = "70%";
OSMDiv.style.height = (AlterigiaSchermo*80/100) + "px";
OSMDiv.style.border = "2px solid black";
OSMDiv.style.backgroundColor = "white";
OSMDiv.style.overflow = "hidden";
var MoveArea = document.createElement('div');
MoveArea.style.position = "relative";
MoveArea.style.top = "0";
MoveArea.style.width = "100%";
MoveArea.style.height = "50px";
MoveArea.title = "Clicca e trascina per ridimensionare la mappa";
var CloseLink = document.createElement('a');
CloseLink.setAttribute("style", "float:right;margin:10px;");
CloseLink.innerHTML = "Nascondere";
CloseLink.title = "Clicca per nascondere";
CloseLink.href = "javascript:openStreetMap_Toggle();";
MoveArea.appendChild(CloseLink);
var iFrame = document.createElement ( 'iframe' ) ;
var url = '//toolserver.org/~kolossos/openlayers/kml-on-ol.php?' + 'lang=' + mw.config.get('wgUserLanguage') + '&params=' + h + '&title=' + mw.util.wikiUrlencode( mw.config.get( 'wgTitle' ) ) + ( window.___location.protocol == 'https:' ? '&secure=1' : '' ) ;
iFrame.style.width = '100%' ;
iFrame.style.height = ((AlterigiaSchermo*80/100)-100) + 'px' ;
iFrame.style.clear = 'both' ;
iFrame.src = url ;
var ResizeArea = document.createElement('div');
ResizeArea.style.position = "relative";
ResizeArea.style.top = "0";
ResizeArea.style.width = "100%";
ResizeArea.style.height = "50px";
ResizeArea.title = "Clicca e trascina per ridimensionare la mappa";
OSMDiv.appendChild(MoveArea);
OSMDiv.appendChild(iFrame);
OSMDiv.appendChild(ResizeArea);
document.body.appendChild ( OSMDiv ) ;
var ElementsToMove = new Array(OSMDiv);
var ElementsToResize = new Array(OSMDiv, iFrame);
var ElementsMinWidth = new Array(150, 150);
var ElementsMinHeights = new Array(200, 100);
MoveResizeAbsolute_AddMoveArea(MoveArea, ElementsToMove);
MoveResizeAbsolute_AddResizeArea(ResizeArea, ElementsToResize, ElementsMinWidth, ElementsMinHeights);
}
addOnloadHook(openStreetMap_Init);
 
// Autofocus nel campo "ricerca" della homepage
$(function() {
if (mw.config.get('wgIsMainPage') && mw.config.get('wgAction') === 'view')
$('#searchInput').focus();
});
 
//REFERENCE TOOLTIP
mw.loader.load("//it.wikipedia.org/w/index.php?title=Wikipedia:Monobook.js/ReferenceTooltip.js&action=raw&ctype=text/javascript");
 
// Esempio di diff in Aiuto:Diff
if (mw.config.get('wgPageName') === 'Aiuto:Diff')
mw.loader.load('mediawiki.action.history.diff');
 
mw.hook( 'wikipage.collapsibleContent' ).add( checkAutocollapse );
//Ricerca in Wikidata
}( mediaWiki, jQuery ) );
if ( mw.config.get( 'wgCanonicalSpecialPageName' ) === 'Search' || ( mw.config.get( 'wgArticleId' ) === 0 && mw.config.get( 'wgCanonicalSpecialPageName' ) === false ) ) {
importScriptURI("//en.wikipedia.org/w/index.php?title=MediaWiki:Wdsearch.js&action=raw&ctype=text/javascript");
}