Cimitero:MediaWiki:Common.js: differenze tra le versioni
Vai alla navigazione
Vai alla ricerca
Contenuto aggiunto Contenuto cancellato
m (Annullata la modifica 1599426 di Sanjilops (discussione)) |
Wedhro (rosica | curriculum) m (Wedhro ha spostato la pagina MediaWiki:Common.js a Cimitero:MediaWiki:Common.js senza lasciare redirect: è talmente pieno di cose che non funzionano o del tutto obsolete che faccio prima a ripartire da 0) |
||
(314 versioni intermedie di 18 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
/*************** Variabili di uso globale ***************/ |
|||
/* Funzione per cambiare il logo per il Nonciversario */ |
|||
// Variabili per il caricamento della pagina |
|||
function RandomLogo() { |
|||
var hooksCustom = new Array(); // Array di funzioni personalizzate da avviare unicamente al caricamento della pagina |
|||
var logoArray = new Array(); |
|||
var hooksCustomRender = new Array(); // Array di funzioni personalizzate da avviare al caricamento della pagina e dell'anteprima |
|||
logoArray[0] = 'http://images.wikia.com/nonciclopedia/images/b/bc/Wiki.png'; |
|||
// Sintassi: |
|||
logoArray[1] = 'http://images1.wikia.nocookie.net/nonciclopedia/images/e/ec/Logo-5-anni_Nonci.png'; |
|||
// Se la funzione non ha bisogno di parametri: hooksCustom.push(nomeFunzione); |
|||
logoArray[2] = 'http://images3.wikia.nocookie.net/nonciclopedia/images/a/ae/Logo-5-anni-Nonci-3.png'; |
|||
// Se invece la funzione ha bisogno di parametri: hooksCustom.push([nomeFunzione, [parametro1, parametro2, ...]]); |
|||
// nomeFunzione _non_ deve essere _mai_ fra virgolette! E non bisogna nemmeno scrivere nomeFunzione(), le parentesi non ci vogliono! |
|||
var chosenLogo = Math.round(Math.random() * (logoArray.length - 1)); |
|||
document.getElementById('p-logo').innerHTML = '<a accesskey="z" title="Pagina principale [alt-shift-z]" href="/wiki/Pagina_principale" style="background-image: url(' + logoArray[chosenLogo] + ');"/>'; |
|||
} |
|||
addOnloadHook(RandomLogo); |
|||
// Variabili per gli effetti |
|||
var navigationBarHide = '[Nascondi]'; // Usati per il dismissableNotice e il cassetto |
|||
var navigationBarShow = '[Vedi]'; |
|||
var slideDelay = 600; // Usati per cassetto, toggleLink e Morph |
|||
var fadeDelay = 400; |
|||
var navigationBarShowDefault = 0; // Usato per cassetto |
|||
/*************** Variabili di regolazione degli effetti ***************/ |
|||
var disableHideEdit = false; // Disabilita la funzione hideEditPatch() |
|||
var disableTargetBlank = false; // Disabilita la funzione targetBlank() |
|||
var disableUsernameReplace = false; // Disabilita la funzione usernameReplace() |
|||
// var disableAlert = false; // Disabilita le funzioni alertLink() e alertLoad() |
|||
var disableRefTooltip = false; // Disabilita la funzione refTooltip() |
|||
var buttonPurge = false; // Abilita la funzione createPurgeButton() |
|||
var disableSectionZeroEditLink = false; // Disabilita la funzione sectionZeroEditLink() |
|||
var disableAddCSS = false; // Disabilita la funzione addCSS() |
|||
var disableAssignTitle = false; // Disabilita la funzione rewriteTitle() |
|||
var disableAssignSubTitle = false; // Disabilita la funzione rewriteSubTitle() |
|||
var noNavSlide = false; // Disabilita lo scorrimento nei cassetti [funzione toggleNavigationBar()] |
|||
var noMorphSFX = false; // Disabilita scorrimento e fading nel morph [funzioni toggleCollapse() e performMorph()] |
|||
/*************** Variabili di debug ***************/ |
|||
var navBarDebug = false; // Funzione createNavigationBarToggleButton() |
|||
var toggleDebug = false; // Funzione createToggleLinks() |
|||
var morphDebug = false; // Funzione createMorphLinks() |
|||
var createTagsDebug = false; // Funzione createTags() |
|||
var testDebug = false; // Funzione displayTest() |
|||
var abcDebug = false; // Funzione displayAbc() |
|||
/*************** Caricamento della pagina ***************/ |
|||
mw.hook('nonciclopedia.ready').add(function() { |
|||
// Patch |
|||
/********************** OnloadHooks **********************/ |
|||
uncyPtPatch(); |
|||
var hooks_custom = new Array(); |
|||
toolbarPatch(); |
|||
/* Funzioni generali */ |
|||
communityPatch(); |
|||
function hooks_common () { |
|||
searchBoxPatch(); |
|||
shareLinksPatch(); |
|||
hooks_common_render(); |
|||
if($('.catinsert').length > 0) { |
|||
createPurgeButton(); |
|||
catInsertPatch(); |
|||
return; |
|||
setInterval(catInsertPatch, 30); |
|||
} |
|||
addOnloadHook(hooks_common); |
|||
/* Funzioni del rendering - separate per richiamarle in anteprima rapida */ |
|||
var __test_js__ = false; |
|||
function hooks_common_render () { |
|||
randomlist(); |
|||
createCollapseButtons(); |
|||
createNavigationBarToggleButton(); |
|||
createToggleLinks(); |
|||
createMorphLinks(); |
|||
multislide_startup(); |
|||
multifade_startup(); |
|||
UserNameReplace(); |
|||
ref_tooltip(); |
|||
alertLink(); |
|||
setTimeout(alertLoad, 1); |
|||
alertUnload(); |
|||
import_script((/\<\;((test)|(abc))(.*)\>\;/.test(document.getElementById('bodyContent').innerHTML) && !__test_js__), "Nonciclopedia:Script/Test.js"); |
|||
target_blank(); |
|||
hiddencats_IE(); |
|||
return; |
|||
} |
|||
/* Funzioni dell'editor */ |
|||
function hooks_common_edit () { |
|||
if (wgAction != 'edit' && wgAction != 'submit') return; |
|||
charinsert_anon_hack(); |
|||
return; |
|||
} |
|||
addOnloadHook(hooks_common_edit); |
|||
/* Importazione script */ |
|||
function Script_Import () { |
|||
/* |
|||
Sintassi: import_script(CONDIZIONE, SCRIPT); |
|||
Es.: import_script((wgPageName == "Esempio"), "Esempio.js"); |
|||
*/ |
|||
import_script((wgPageName == "Speciale:WidgetDashboard"), "Nonciclopedia:Script/Shoutbox.js"); |
|||
import_script((wgPageName == "Giochi:CasiNonci/Slot_machine"), "Nonciclopedia:Script/SlotMachine.js"); |
|||
import_script((wgPageName == "Nonciclopedia:Storia/Pagine commemorative/Pesci d'aprile/4"), "Nonciclopedia:Script/Pesce aprile 2010.js"); |
|||
import_script((wgPageName == "Utente:Zaza/Sandbox/Monabooktor"), "Nonciclopedia:Script/Monabooktor.js"); |
|||
return; |
|||
} |
|||
function import_script (condition, script) { |
|||
if(!condition) return; |
|||
var scriptElem = document.createElement( 'script' ); |
|||
scriptElem.type = 'text/javascript'; |
|||
scriptElem.language = 'javascript'; |
|||
scriptElem.src = '/index.php?title=' + script + '&action=raw&ctype=text/javascript&smaxage=8400'; |
|||
document.getElementsByTagName( 'head' )[0].appendChild( scriptElem ); |
|||
return; |
|||
} |
|||
/************* Funzioni di utilità generale *************/ |
|||
/* 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); |
|||
}; |
|||
})(); |
|||
function getElementsByClass (node, className, tagName) { |
|||
if (node.getElementsByClassName && (tagName == undefined || tagName == null || tagName == '*')) return node.getElementsByClassName(className); |
|||
var list = node.getElementsByTagName(tagName?tagName:'*'); |
|||
var array = new Array(); |
|||
var i = 0; |
|||
for (i in list) { |
|||
if (hasClass(list[i], className)) |
|||
array.push(list[i]); |
|||
} |
|||
return array; |
|||
} |
|||
/* Creates the method getElementsByClass, if unsupported from the browser */ |
|||
if(!document.getElementsByClass) document.getElementsByClass = function(className) { |
|||
return getElementsByClass(document, className, '*'); |
|||
}; |
|||
function getElementsByName (name, root) { |
|||
if (root == undefined) root = document; |
|||
var e = root.getElementsByTagName('*'); |
|||
var r = new Array(); |
|||
for (var i = 0; i < e.length; i++) { |
|||
if (e[i].getAttribute('name') == name) r[r.length] = e[i]; |
|||
} |
|||
return r; |
|||
} |
|||
function getText (e) { |
|||
if (e.textContent) return e.textContent; |
|||
else if (e.innerText) return e.innerText; |
|||
else return null; |
|||
} |
|||
function setText (e, t) { |
|||
if (e.textContent) e.textContent = t; |
|||
else if (e.innerText) e.innerText = t; |
|||
else { e.textContent = t; e.innerText = t; } // entrambi nulli, non si può discriminare |
|||
return; |
|||
} |
|||
function appendText (e, t) { |
|||
if (e.textContent) e.textContent += t; |
|||
else if (e.innerText) e.innerText += t; |
|||
else { e.textContent = t; e.innerText = t; } |
|||
return; |
|||
} |
|||
/* Crea una request Ajax */ |
|||
function createRequest () { |
|||
if (window.XMLHttpRequest) { // Mozilla, Safari... |
|||
return new XMLHttpRequest(); |
|||
} |
|||
else if (window.ActiveXObject) { // IEmmerda |
|||
return new ActiveXObject("Microsoft.XMLHTTP"); |
|||
} |
|||
return |
|||
} |
|||
/* Restituisce il valore di un cookie */ |
|||
function getCookie(name) { |
|||
if (document.cookie.length == 0) return null; |
|||
var start = document.cookie.indexOf(name); |
|||
if (start == -1) return null; |
|||
start += name.length + 1; |
|||
var end = document.cookie.indexOf(';', start); |
|||
if (end == -1) end = document.cookie.length; |
|||
return unescape(document.cookie.substring(start,end)); |
|||
} |
|||
/* Aggiunge uno zero alle cifre minori di 10 nella rappresentazione testuale */ |
|||
function addzero(n) { |
|||
if (n<10) return '0' + n.toString(); |
|||
else return n.toString(); |
|||
} |
|||
function addEvent(el, ev, f, capt) { |
|||
if (capt == undefined) capt = false; |
|||
if (el.addEventListener) el.addEventListener(ev, f, capt); |
|||
else if (el.attachEvent) el.attachEvent('on' + ev, f); |
|||
return; |
|||
} |
|||
function removeEvent(el, ev, f, capt) { |
|||
if (capt == undefined) capt = false; |
|||
if (el.removeEventListener) el.removeEventListener(ev, f, capt); |
|||
else if (el.detachEvent) el.detachEvent('on' + ev, f); |
|||
return; |
|||
} |
|||
var noFade = false; |
|||
function Fade (element, delay, i, rev, ratio) { |
|||
if (noFade) return; |
|||
/* rev = sparizione; se !rev, ratio = opacità finale; se rev, ratio = opacità iniziale*/ |
|||
var start_time = new Date().getTime(); |
|||
var start_value = rev? ratio : 0; |
|||
element.style.filter = "alpha(opacity=" + start_value * 100 + ")"; |
|||
element.style.opacity = start_value; |
|||
if (!parseInt(element.style.width) && navigator.appName == "Microsoft Internet Explorer") element.style.width = element.offsetWidth + 'px'; |
|||
setTimeout(function() { Do()} , i); |
|||
return; |
|||
function Do() { |
|||
var cur_time = new Date().getTime(); |
|||
var past_time = cur_time - start_time; |
|||
if (past_time >= delay) { /* ultima chiamata */ |
|||
var final_value = rev? 0 : ratio; |
|||
element.style.filter = "alpha(opacity=" + final_value * 100 + ")"; |
|||
element.style.opacity = final_value; |
|||
return; |
|||
} |
|||
var progress = past_time/delay; |
|||
var new_value = rev? ratio * (1 - progress) : ratio * progress; |
|||
element.style.filter = "alpha(opacity=" + new_value * 100 + ")"; |
|||
element.style.opacity = new_value; |
|||
setTimeout(function() { Do(); } , i); |
|||
return; |
|||
} |
} |
||
if(wgPageName == 'Speciale:Chat') chatPatch(); |
|||
} |
|||
if(wgPageName == 'Speciale:Entra') registrationPatch(); |
|||
if(wgPageName == 'Speciale:AdminDashboard') dashboardPatch(); |
|||
oasisCheck() |
|||
// Skin |
|||
var noSlide = false; |
|||
startAjaxWatch(); |
|||
function Slide(element, param, final_value, final_size, delay, i) { |
|||
toolbarCookieHide(); |
|||
if (noSlide) return; |
|||
linkAdQ(); |
|||
/* NB: Il valore finale deve avere la stessa unità di misura di quello iniziale! */ |
|||
if(wgAction == 'edit' || wgAction == 'submit') quickEditor(); |
|||
var start_time = new Date().getTime(); |
|||
if(buttonPurge && wgCanonicalNamespace != 'Special') createPurgeButton(); |
|||
var unit = 'px'; |
|||
if (typeof(final_value) == 'string') { |
|||
final_value = final_value.split(/\D/); |
|||
if (final_value.length > 1) unit = final_value[1]; |
|||
final_value = parseFloat(final_value[0]); |
|||
} |
|||
var start_value = Get(); |
|||
var sub = (start_value > final_value)? true : false; |
|||
var diff = Math.abs(start_value - final_value); |
|||
var start_size; |
|||
if (param == 'top' || param == 'bottom') start_size = element.parentNode.offsetHeight; |
|||
else if (param == 'left' || param == 'right') start_size = element.parentNode.offsetWidth; |
|||
var diff_size = Math.abs(start_size - final_size); |
|||
setTimeout( function() {Do(); } , i); |
|||
return; |
|||
function Do() { |
|||
var cur_time = new Date().getTime(); |
|||
var past_time = cur_time - start_time; |
|||
if (past_time >= delay) { /* ultima chiamata */ |
|||
Set(final_value); |
|||
if (param == 'top' || param == 'bottom') element.parentNode.style.height = final_size + unit; |
|||
else if (param == 'left' || param == 'right') element.parentNode.style.width = final_size + unit; |
|||
return; |
|||
} |
|||
var progress = diff * past_time/delay; |
|||
new_value = (sub)? start_value - progress : start_value + progress; |
|||
Set(new_value); |
|||
new_size = (sub)? start_size - diff_size * past_time/delay: start_size + diff_size * past_time/delay; |
|||
if (param == 'top' || param == 'bottom') element.parentNode.style.height = new_size + unit; |
|||
else if (param == 'left' || param == 'right') element.parentNode.style.width = new_size + unit; |
|||
setTimeout(function() { Do(); } , i); |
|||
return; |
|||
} |
|||
function Get() { |
|||
var ret; |
|||
switch (param) { |
|||
case 'top': |
|||
ret = element.style.top; |
|||
break; |
|||
case 'bottom': |
|||
ret = element.style.bottom; |
|||
break; |
|||
case 'left': |
|||
ret = element.style.left; |
|||
break; |
|||
case 'right': |
|||
ret = element.style.right; |
|||
break; |
|||
default: |
|||
return false; |
|||
} |
|||
if (/em/i.test(ret)) return parseFloat(ret); |
|||
return (/\d+/.test(ret))? parseInt(ret) : 0; |
|||
} |
|||
function Set(v) { |
|||
switch (param) { |
|||
case 'top': |
|||
element.style.top = v + unit; |
|||
return; |
|||
case 'bottom': |
|||
element.style.bottom = v + unit; |
|||
return; |
|||
case 'left': |
|||
element.style.left = v + unit; |
|||
return; |
|||
case 'right': |
|||
element.style.right = v + unit; |
|||
return; |
|||
default: |
|||
return false; |
|||
} |
|||
} |
|||
} |
|||
/************* Funzioni applicative ***************/ |
|||
// ============================================================ |
|||
// BEGIN Dynamic Navigation Bars (experimantal) |
|||
// This script is from Wikipedia. For author attribution, please see http://en.wikipedia.org/w/index.php?title=MediaWiki:Common.js&action=history |
|||
/** Collapsible tables ********************************************************* |
|||
* |
|||
* Description: Allows tables to be collapsed, showing only the header. See |
|||
* [[Wikipedia:NavFrame]]. |
|||
* Maintainers: [[User:R. Koot]] |
|||
*/ |
|||
var autoCollapse = 0; // numero massimo di barre visibili |
|||
// per default al caricamento di una pagina |
|||
var collapseCaption = "nascondi"; |
|||
var expandCaption = "vedi"; |
|||
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" ) && !Tables[i].id) { |
|||
NavigationBoxes[ tableIndex ] = Tables[i]; |
|||
Tables[i].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 = "6em"; |
|||
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 ); |
|||
} |
|||
} |
|||
} |
|||
/** Dynamic Navigation Bars (experimental) ************************************* |
|||
* |
|||
* Description: See [[Wikipedia:NavFrame]]. |
|||
* Maintainers: UNMAINTAINED |
|||
*/ |
|||
// set up the words in your language |
|||
var NavigationBarHide = '[' + collapseCaption + ']'; |
|||
var NavigationBarShow = '[' + expandCaption + ']'; |
|||
// set up max count of Navigation Bars on page, |
|||
// if there are more, all will be hidden |
|||
// NavigationBarShowDefault = 0; // all bars will be hidden |
|||
// NavigationBarShowDefault = 1; // on pages with more than 1 bar all bars will be hidden |
|||
var NavigationBarShowDefault = autoCollapse; |
|||
// shows and hides content and picture (if available) of navigation bars |
|||
// Parameters: |
|||
// indexNavigationBar: the index of navigation bar to be toggled |
|||
var noNavSlide = true; |
|||
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) { |
|||
if (!hasClass(NavFrame, 'no-slide') && !noNavSlide) NavSlide(NavFrame, true); |
|||
else { |
|||
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'; |
|||
} |
|||
} |
|||
} |
|||
NavToggle.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(NavFrame, 'no-slide') && !noNavSlide) NavSlide(NavFrame, false); |
|||
NavToggle.firstChild.data = NavigationBarHide; |
|||
} |
|||
} |
|||
var NavigationBarSlideDelay = 600; |
|||
var NavigationBarSlideInterval = 70; |
|||
var NavigationBarFadeDelay = 400; |
|||
var NavigationBarFadeInterval = 70; |
|||
function NavSlide (NavFrame, close) { |
|||
/* close = chiusura */ |
|||
for (var NavChild = NavFrame.firstChild; NavChild != null; NavChild = NavChild.nextSibling) { |
|||
if ( hasClass( NavChild, 'NavPic' ) || hasClass( NavChild, 'NavContent') ) Slide(NavChild); |
|||
} |
|||
return; |
|||
// Inclusioni |
|||
function Slide (element) { |
|||
// Sintassi: importScript(script, condizione); |
|||
if (navigator.appName == "Microsoft Internet Explorer" && parseInt(navigator.userAgent[navigator.userAgent.indexOf("MSIE") + 5]) >= 8) return; |
|||
importScript('MediaWiki:Pesce_aprile_2009.js', wgPageName == 'Nonciclopedia:Storia/Pagine_commemorative/Pesci_d\'aprile/3'); |
|||
var fade = !hasClass(NavFrame, 'no-fade'); |
|||
importScript('MediaWiki:Pesce_aprile_2010.js', wgPageName == 'Nonciclopedia:Storia/Pagine_commemorative/Pesci_d\'aprile/4'); |
|||
var start_time = new Date().getTime() + NavigationBarFadeDelay * ((close && fade)? 1.1 : 0); |
|||
importScript('MediaWiki:Pesce_aprile_2011.js', wgPageName == 'Nonciclopedia:Storia/Pagine_commemorative/Pesci_d\'aprile/5'); |
|||
var size = element.offsetHeight; |
|||
var start_value = close? 0: 0 - size; |
|||
var final_value = close? 0 - size : 0; |
|||
element.style.marginTop = start_value + 'px'; |
|||
element.style.width = 'auto'; |
|||
if (fade) { |
|||
if (close) Fade(element, NavigationBarFadeDelay, NavigationBarFadeInterval, true, 0.7); |
|||
else { |
|||
element.style.filter = "alpha(opacity=0)"; |
|||
element.style.opacity = 0; |
|||
} |
|||
} |
|||
setTimeout(function() { Do(); } , NavigationBarSlideInterval + NavigationBarFadeDelay * ((close && fade)? 1.1 : 0)); |
|||
return; |
|||
function Do() { |
|||
var cur_time = new Date().getTime(); |
|||
var past_time = cur_time - start_time; |
|||
if (past_time >= NavigationBarSlideDelay) { |
|||
element.style.marginTop = final_value + 'px'; |
|||
if (!close && fade) Fade(element, NavigationBarFadeDelay, NavigationBarFadeInterval, false, 1); |
|||
if (close) element.style.display = 'none'; |
|||
return; |
|||
} |
|||
var progress = past_time/NavigationBarSlideDelay; |
|||
var new_value = close? final_value * progress : start_value * (1 - progress); |
|||
element.style.marginTop = new_value + 'px'; |
|||
setTimeout(function() { Do(); } , NavigationBarSlideInterval); |
|||
return; |
|||
} |
|||
} |
|||
} |
|||
// adds show/hide-button to navigation bars |
|||
function createNavigationBarToggleButton() |
|||
{ |
|||
var indexNavigationBar = 0; |
|||
// iterate over all < div >-elements |
|||
var divs = document.getElementsByTagName("div"); |
|||
for( |
|||
var i=0; |
|||
NavFrame = divs[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); |
|||
// Find the NavHead and attach the toggle link (Must be this complicated because Moz's firstChild handling is borked) |
|||
for( |
|||
var j=0; |
|||
j < NavFrame.childNodes.length; |
|||
j++ |
|||
) { |
|||
if (hasClass(NavFrame.childNodes[j], "NavHead")) { |
|||
NavFrame.childNodes[j].appendChild(NavToggle); |
|||
} |
|||
} |
|||
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); |
|||
} |
|||
} |
|||
} |
|||
/** Codice sostituzione Username ([[template:USERNAME]]) ******************************* |
|||
* Inserts user name into <span id="insertusername"></span> |
|||
* By [[wikia:User:Splarka|Splarka]] |
|||
*/ |
|||
var disableUsernameReplace = false; |
|||
function UserNameReplace() { |
|||
if (disableUsernameReplace) return; |
|||
var list = getElementsByClass(document.getElementsByTagName('body')[0], "insertusername", 'span'); |
|||
if (list.length < 1) return; |
|||
if (wgUserName) { |
|||
for (var i=0; UserName = list[i]; i++) { |
|||
setText(UserName, wgUserName); |
|||
} |
|||
return; |
|||
} |
|||
var defaultText = "<tuo nome>"; |
|||
var userpage = document.getElementById("pt-anonuserpage"); |
|||
if (userpage != null) { |
|||
var IP = getText(userpage.getElementsByTagName('a')[0]); |
|||
if (IP == null) return; |
|||
for (var i=0; UserName = list[i]; i++) { |
|||
if (getText(UserName) == defaultText) |
|||
setText(UserName, IP); |
|||
} |
|||
return; |
|||
} |
|||
var httpRequest; |
|||
if (window.XMLHttpRequest) { // Mozilla, Safari, ... |
|||
httpRequest = new XMLHttpRequest(); |
|||
} else if (window.ActiveXObject) { // IE |
|||
httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); |
|||
} |
|||
var id = setTimeout(function() { httpRequest.abort();}, 30000); |
|||
httpRequest.onreadystatechange = function () { |
|||
if (httpRequest.readyState != 4) return; |
|||
clearTimeout(id); |
|||
if (httpRequest.status != 200) return; |
|||
if (httpRequest.responseXML == null) return; |
|||
var IP = httpRequest.responseXML.getElementsByTagName('userinfo')[0].getAttribute("name"); |
|||
if (IP == null) return; |
|||
for (var i=0; UserName = list[i]; i++) { |
|||
if (getText(UserName) == defaultText) |
|||
setText(UserName, IP); |
|||
} |
|||
return; |
|||
} |
|||
httpRequest.open('GET', wgServer + wgScriptPath + "/api.php?action=query&meta=userinfo&format=xml", true); |
|||
httpRequest.send(''); |
|||
return; |
|||
} |
|||
/* Generatori di alert */ |
|||
/* Carica un alert su un link prima di caricare la nuova pagina, oppure su un link "fasullo", senza caricare nessuna nuova pagina*/ |
|||
function alertLink() { |
|||
for(var i=0; Elem = document.getElementsByTagName("span")[i]; i++) { |
|||
if((Elem.getAttribute('id') == "alert-link") || (Elem.getAttribute('id') == "alert-nolink")) { |
|||
var Link = Elem.firstChild; |
|||
var Testo = Elem.title; |
|||
Link.setAttribute('onclick', 'alert("' + Testo + '");'); |
|||
if(Elem.getAttribute('id') == "alert-nolink") { |
|||
Link.removeAttribute('href',0); |
|||
} |
|||
} |
|||
} |
|||
} |
|||
/* Carica uno o più alert al caricamento della pagina */ |
|||
var disablealertLoad = 0; |
|||
function alertLoad() { |
|||
if (disablealertLoad) return; |
|||
for(var i=0; Elem = document.getElementsByTagName("span")[i]; i++) { |
|||
if(Elem.getAttribute('id') == "alert-load") { |
|||
var Testo = Elem.innerText || Elem.textContent; |
|||
alert(Testo); |
|||
} |
|||
} |
|||
} |
|||
/* Carica uno o più alert all'uscita dalla pagina */ |
|||
function alertUnload() { |
|||
if (disablealertLoad) return; |
|||
for(var i=0; Elem = document.getElementsByTagName("span")[i]; i++) { |
|||
if(Elem.getAttribute('id') == "alert-unload") { |
|||
var Testo = Elem.innerText || Elem.textContent; |
|||
var temp = document.getElementsByTagName("body")[0].getAttribute('onUnload'); |
|||
if (temp) document.getElementsByTagName("body")[0].setAttribute('onUnload', temp + 'alert("' + Testo + '");'); |
|||
else document.getElementsByTagName("body")[0].setAttribute('onUnload', 'alert("' + Testo + '");'); |
|||
} |
|||
} |
|||
} |
|||
/* Elenchi random */ |
|||
function randomlist() { |
|||
if (document.getElementsByClass('randomlist') && |
|||
document.getElementsByClass('randomcontent') && |
|||
document.getElementsByClass('randomtext')) { |
|||
var listNumber = document.getElementsByClass('randomlist').length; |
|||
for (var k = 0; k < listNumber; k++) { |
|||
var max = parseInt(document.getElementsByClass('randomlist')[k].title); |
|||
var List = document.getElementsByClass('randomcontent')[k].getElementsByTagName('li'); |
|||
var Text = document.getElementsByClass('randomtext')[k]; |
|||
var N = new Array(); |
|||
if (max == 1) var dot = ''; |
|||
else var dot = '• '; |
|||
Text.innerHTML = ''; |
|||
for (var i = 0; i < max; i++) { |
|||
do { |
|||
n = Math.round(Math.random() * (List.length - 1)); |
|||
for (var j = 0; j < i && n != -1; j++) { |
|||
if (N[j] == n) n = -1; |
|||
} |
|||
} while (n == -1) |
|||
N[i] = n; |
|||
var Item = document.createElement('div'); |
|||
Item.innerHTML = dot + List[n].innerHTML; |
|||
Text.appendChild(Item); |
|||
} |
|||
} |
|||
} |
|||
} |
|||
/* Hook that enables collapsing objects. |
|||
* Added 11/5/2007 by WhiteMystery (misterioblanco@gmail.com) |
|||
* on Encyclopedia Dramatica, stolen by Zaza |
|||
* Improved with multiMorph and galleryMorph by MFH |
|||
* Enhanced with fading effect by Sanjilops |
|||
* Uses publicly available code in one function, where noted. */ |
|||
var noMorphSFX = true; |
|||
/* Function that toggles collapsing objects. |
|||
* Added 11/5/2007 by WhiteMystery (misterioblanco@gmail.com) |
|||
* on Encyclopedia Dramatica, stolen by Zaza |
|||
* Uses publicly available code in one function, where noted. */ |
|||
function tableOrNot(objId) { |
|||
//Funzioni dell'anteprima |
|||
if (document.getElementById(objId).tagName == "TABLE") return "table"; |
|||
hooksCommonRender(); |
|||
else return "block"; |
|||
} |
|||
var toggleLinkDelay = 700; |
|||
var toggleLinkInterval = 10; |
|||
function toggleCollapse(objToToggle) { |
|||
var objToToggle = this.parentNode.id.replace(/Link$/, ''); |
|||
var linkText = ""; |
|||
var targetObject = returnObjById(objToToggle); |
|||
if (!targetObject) return; |
|||
var collapseText = returnObjById(objToToggle + "CollapseText").innerHTML; |
|||
var expandText = returnObjById(objToToggle + "ExpandText").innerHTML; |
|||
var slide = !hasClass(returnObjById(objToToggle + "Link"), "no-slide") && !noMorphSFX; |
|||
var fade = !hasClass(returnObjById(objToToggle + "Link"), 'no-fade') && !noMorphSFX; |
|||
if ( targetObject.style.display == "none" ) { |
|||
targetObject.style.display = tableOrNot(objToToggle); |
|||
linkText = collapseText; |
|||
if (slide) Slide(targetObject, false); |
|||
if (fade) { |
|||
if (!parseInt(targetObject.style.width) && navigator.appName == "Microsoft Internet Explorer") targetObject.style.width = targetObject.offsetWidth + 'px'; |
|||
targetObject.style.filter = "alpha(opacity=0)"; |
|||
targetObject.style.opacity = 0; |
|||
setTimeout(function () {Fade(targetObject, toggleLinkDelay, toggleLinkInterval, false, 1);}, 1); |
|||
} |
|||
} |
|||
else { |
|||
if (slide) { |
|||
Slide(targetObject, true); |
|||
setTimeout(function() { targetObject.style.display = "none"; }, toggleLinkDelay + toggleLinkInterval); |
|||
if (fade) setTimeout(function () {Fade(targetObject, toggleLinkDelay, toggleLinkInterval, true, 0.8);}, 1); |
|||
} |
|||
else { |
|||
if (fade) { |
|||
setTimeout(function () {Fade(targetObject, toggleLinkDelay, toggleLinkInterval, true, 0.8);}, 1); |
|||
setTimeout(function () {targetObject.style.display = "none"; }, toggleLinkDelay + toggleLinkInterval); |
|||
} |
|||
else targetObject.style.display = "none"; |
|||
} |
|||
linkText = expandText; |
|||
} |
|||
// Altro |
|||
var toggleLink = returnObjById(objToToggle + "Link-"); |
|||
googleStat(); |
|||
toggleLink.innerHTML = linkText; |
|||
if(wgUserName) addEditintro(); |
|||
// Funzioni fuori dal common.js |
|||
for(var i = 0; i < hooksCustom.length; i++) { |
|||
function Slide (element, close) { |
|||
if(typeof hooksCustom[i] == typeof Array()) { // Se ci sono parametri da passare alla funzione |
|||
if (navigator.appName == "Microsoft Internet Explorer" && parseInt(navigator.userAgent[navigator.userAgent.indexOf("MSIE") + 5]) >= 8) return; |
|||
hooksCustom[i][0].apply(this, hooksCustom[i][1]); |
|||
var start_time = new Date().getTime(); |
|||
var size = element.offsetHeight; |
|||
var start_value = close? 0: 0 - size; |
|||
var final_value = close? 0 - size : 0; |
|||
element.style.marginTop = start_value + 'px'; |
|||
element.style.width = 'auto'; |
|||
setTimeout(function() { Do(); } , toggleLinkInterval); |
|||
return; |
|||
function Do() { |
|||
var cur_time = new Date().getTime(); |
|||
var past_time = cur_time - start_time; |
|||
if (past_time >= NavigationBarSlideDelay) { |
|||
element.style.marginTop = final_value + 'px'; |
|||
return; |
|||
} |
|||
var progress = past_time/toggleLinkDelay; |
|||
var new_value = close? final_value * progress : start_value * (1 - progress); |
|||
element.style.marginTop = new_value + 'px'; |
|||
setTimeout(function() { Do(); } , toggleLinkInterval); |
|||
return; |
|||
} |
} |
||
} |
|||
} |
|||
function createToggleLinks() { |
|||
var toggleLinkCollection = document.getElementsByClass("toggleLink"); |
|||
for (var i = 0; i < toggleLinkCollection.length; i++) { |
|||
var spanID = toggleLinkCollection[i].getAttribute("id"); |
|||
var targetID = spanID.substr(0, spanID.length - 4); |
|||
var collapseText = returnObjById(targetID + "CollapseText").innerHTML; |
|||
var expandText = returnObjById(targetID + "ExpandText").innerHTML; |
|||
var initialState = returnObjById(targetID + "InitialState").innerHTML; |
|||
var toggleLink = document.createElement("a"); |
|||
toggleLinkCollection[i].appendChild(toggleLink); |
|||
if (initialState == "0") { |
|||
returnObjById(targetID).style.display = "none"; |
|||
toggleLink.innerHTML = expandText; |
|||
} |
|||
else { |
else { |
||
hooksCustom[i](); |
|||
returnObjById(targetID).style.display = tableOrNot(targetID); |
|||
toggleLink.innerHTML = collapseText; |
|||
} |
} |
||
toggleLink.onclick = toggleCollapse; |
|||
//toggleLink.className = "morphLink"; |
|||
toggleLink.id = targetID + "Link-"; |
|||
} |
} |
||
} |
}); |
||
/* Functions that performs the morph operation. |
|||
* Added 11/5/2007 by WhiteMystery (misterioblanco@gmail.com) |
|||
* on Encyclopedia Dramatica, stolen by Zaza |
|||
* Uses publicly available code in one function, where noted. */ |
|||
var MorphFadeDelay = 800; |
|||
var MorphFadeInterval = 50; |
|||
// Funzioni da avviare al caricamento della pagina e dell'anteprima |
|||
function performMorph(targetID, targetNumber) { |
|||
function hooksCommonRender() { |
|||
// Patch |
|||
youtubePatch(); |
|||
if(wgCanonicalNamespace == 'File') filePatch(); |
|||
if(wgPageName == 'Speciale:Carica' || wgAction == 'edit') catTreePatch(); |
|||
if(navigator.appName == 'Microsoft Internet Explorer') hiddenCatsExplorerPatch(); |
|||
if(!disableHideEdit && $('#ca-edit').length && $('#hide-edit').length) hideEditPatch(); |
|||
// Skin |
|||
var counter = 1; |
|||
// randomLogo(); |
|||
moveEditSection(); |
|||
if(wgNamespaceNumber > -1 && !disableSectionZeroEditLink) sectionZeroEditLink(); |
|||
if(!disableAddCSS) addCSS(); |
|||
if(!disableAssignTitle) rewriteTitle(); |
|||
if(!disableAssignSubTitle) rewriteSubTitle(); |
|||
// Effetti |
|||
while ( returnObjById(targetID + "Content" + counter) ) { |
|||
numList(); |
|||
randomList(); |
|||
checkTimers(); |
|||
initializeCoolCounter(); |
|||
if(!disableTargetBlank) targetBlank(); |
|||
if(!disableUsernameReplace) usernameReplace(); |
|||
if(!disableRefTooltip) refTooltip(); |
|||
if(!navBarDebug) createNavigationBarToggleButton(); |
|||
if(!toggleDebug) createToggleLinks(); |
|||
if(!morphDebug) createMorphLinks(); |
|||
if(!createTagsDebug) createTags(); |
|||
if(!testDebug) displayTest(); |
|||
if(!abcDebug) displayAbc(); |
|||
// Altro |
|||
if ( counter == targetNumber ) { |
|||
jsLoading(); // Non mettere altro qui sotto |
|||
returnObjById(targetID + "Content" + counter).style.display = tableOrNot(targetID + "Content" + counter); |
|||
if (!hasClass(returnObjById(targetID + "Master"), 'no-fade') && !noMorphSFX) Fade(returnObjById(targetID + "Content" + counter), MorphFadeDelay, MorphFadeInterval, false, 1); |
|||
} |
|||
else |
|||
returnObjById(targetID + "Content" + counter).style.display = "none"; |
|||
counter++; |
|||
} |
|||
// Funzioni fuori dal common.js |
|||
returnObjById(targetID + "Master").innerHTML = targetNumber; |
|||
for(var i = 0; i < hooksCustomRender.length; i++) { |
|||
if(typeof hooksCustomRender[i] == typeof Array()) { // Se ci sono parametri da passare alla funzione |
|||
hooksCustomRender[i][0].apply(this, hooksCustomRender[i][1]); |
|||
} |
|||
else { |
|||
hooksCustomRender[i](); |
|||
} |
|||
} |
|||
return; |
|||
} |
} |
||
// Funzioni da avviare da cellulare (Solo PP) |
|||
function |
function hooksMobile() { |
||
imgMobilePatch(); |
|||
numList(); |
|||
var targetID = this.getAttribute('name').replace(/LinkNext$/, ''); |
|||
randomList(); |
|||
var nextPane = parseInt(returnObjById(targetID + "Master").innerHTML) + 1; |
|||
createNavigationBarToggleButton(); |
|||
createToggleLinks(); |
|||
if ( returnObjById(targetID + "Content" + nextPane) ) |
|||
createMorphLinks(); |
|||
performMorph(targetID, nextPane); |
|||
else |
|||
performMorph(targetID, "1"); |
|||
} |
} |
||
/*************** Utilità ***************/ |
|||
function morphBackward() { |
|||
// Funzione per importare script |
|||
// Parametri: |
|||
var targetID = this.getAttribute('name').replace(/LinkPrev$/, ''); |
|||
// script: Nome della pagina in cui si trova lo script, solitamente una sottopagina di Nonciclopedia:Script |
|||
var prevPane = parseInt(returnObjById(targetID + "Master").innerHTML) - 1; |
|||
// condition: Condizione logica necessaria per includere lo script |
|||
function importScript(script, condition) { |
|||
if ( prevPane > 0 ) |
|||
if(!script) { |
|||
performMorph(targetID, prevPane); |
|||
return; |
|||
} |
|||
else { |
|||
if(condition || condition == undefined) { |
|||
var scriptElem = document.createElement('script'); |
|||
var maxIndex = 1; |
|||
scriptElem.type = 'text/javascript'; |
|||
scriptElem.charset = 'UTF-8'; |
|||
while ( returnObjById(targetID + "Content" + maxIndex) ) |
|||
scriptElem.src = '/index.php?title=' + script + '&action=raw&ctype=text/javascript'; |
|||
maxIndex++; |
|||
document.getElementsByTagName('head')[0].appendChild(scriptElem); |
|||
performMorph(targetID, maxIndex - 1); |
|||
} |
} |
||
return; |
|||
} |
} |
||
// Restituisce il valore di un cookie |
|||
/* Special functions for the galleryMorph, |
|||
// Parametri: |
|||
* created by MFH */ |
|||
// name: Nome della variabile memorizzata nel cookie |
|||
function |
function getCookie(name) { |
||
if(!document.cookie.length) { |
|||
return null; |
|||
var counter = 1; |
|||
while ( returnObjById(targetID + "Content" + counter) ) { |
|||
if ( counter == targetNumber ) { |
|||
returnObjById(targetID + "Content" + counter).style.display = tableOrNot(targetID + "Content" + counter); |
|||
if (!hasClass(returnObjById(targetID + "Master"), 'no-fade') && !noMorphSFX) Fade(returnObjById(targetID + "Content" + counter), MorphFadeDelay, MorphFadeInterval, false, 1); |
|||
} |
|||
else |
|||
returnObjById(targetID + "Content" + counter).style.display = "none"; |
|||
counter++; |
|||
} |
} |
||
var start = document.cookie.indexOf(name); |
|||
if |
if(start == -1) { |
||
return null; |
|||
returnObjById(targetID + "LinkPrev").style.display = "none"; |
|||
} |
} |
||
start += name.length + 1; |
|||
else { |
|||
var end = document.cookie.indexOf(';', start); |
|||
returnObjById(targetID + "LinkPrev").style.display = tableOrNot(targetID + "LinkPrev"); |
|||
if(end == -1) { |
|||
end = document.cookie.length; |
|||
} |
} |
||
return unescape(document.cookie.substring(start,end)); |
|||
if (targetNumber == counter - 1) { |
|||
returnObjById(targetID + "LinkNext").style.display = "none"; |
|||
} |
|||
else { |
|||
returnObjById(targetID + "LinkNext").style.display = tableOrNot(targetID + "LinkNext"); |
|||
} |
|||
galleryCounter = returnObjById(targetID + "Master").getAttribute("counter"); |
|||
returnObjById(targetID + "Counter").innerHTML = "(" + targetNumber + "/" + galleryCounter + ")"; |
|||
returnObjById(targetID + "Master").innerHTML = targetNumber; |
|||
} |
} |
||
function galleryMorphForward() { |
|||
/*************** Altro ***************/ |
|||
var targetID = this.getAttribute('name').replace(/LinkNext$/, ''); |
|||
// Statistiche di Google |
|||
var nextPane = parseInt(returnObjById(targetID + "Master").innerHTML) + 1; |
|||
var _gaq = _gaq || []; |
|||
_gaq.push(['_setAccount', 'UA-17496918-1']); |
|||
if ( returnObjById(targetID + "Content" + nextPane) ) |
|||
_gaq.push(['_trackPageview']); |
|||
performGalleryMorph(targetID, nextPane); |
|||
function googleStat() { |
|||
var ga = document.createElement('script'); |
|||
else |
|||
ga.type = 'text/javascript'; |
|||
performGalleryMorph(targetID, "1"); |
|||
ga.async = true; |
|||
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; |
|||
var s = document.getElementsByTagName('script')[0]; |
|||
s.parentNode.insertBefore(ga, s); |
|||
} |
} |
||
function galleryMorphBackward() { |
|||
var targetID = this.getAttribute('name').replace(/LinkPrev$/, ''); |
|||
// Funzione per il Template:Caricamento |
|||
var prevPane = parseInt(returnObjById(targetID + "Master").innerHTML) - 1; |
|||
function jsLoading() { |
|||
$('.jsloading-pre').remove(); |
|||
if ( prevPane > 0 ) |
|||
$('.jsloading-post').show(); |
|||
performGalleryMorph(targetID, prevPane); |
|||
} |
|||
else { |
|||
// Aggiunge l'Editintro nei link di modifica anche per gli utenti registrati |
|||
function addEditintro() { |
|||
var maxIndex = 1; |
|||
if($('#ca-talk').hasClass('new')) { |
|||
$('#ca-talk a:first').attr('href', $('#ca-talk a:first').attr('href') + '&editintro=MediaWiki:Editintro'); |
|||
while ( returnObjById(targetID + "Content" + maxIndex) ) |
|||
maxIndex++; |
|||
performGalleryMorph(targetID, maxIndex - 1); |
|||
} |
} |
||
if(wgCurRevisionId) { |
|||
$('#ca-edit a:first').attr('href', $('#ca-edit a:first').attr('href') + '&editintro=MediaWiki:Editintro'); |
|||
} |
|||
$('span.editsection a').each(function() { |
|||
$(this).attr('href', $(this).attr('href') + '&editintro=MediaWiki:Editintro'); |
|||
}); |
|||
return; |
|||
} |
} |
||
/* Function that creates ED's collapsing objects and toggle links. |
|||
* Added 11/5/2007 by WhiteMystery (misterioblanco@gmail.com) |
|||
* on Encyclopedia Dramatica, stolen by Zaza |
|||
* Uses publicly available code in one function, where noted. |
|||
* |
|||
* Updated: 1/11/2008 by WhiteMystery to add new Morphing Objects |
|||
* functionality. |
|||
* Updated: 23/5/2009 by MFH to add 2 new kinds of morph: |
|||
* multiMorph and galleryMorph */ |
|||
/************** Pulsanti ***************/ |
|||
function createMorphLinks () { |
|||
// Pulsanti aggiunti di default |
|||
if(skin != 'wikiamobile' && mwCustomEditButtons) { |
|||
mwCustomEditButtons[mwCustomEditButtons.length] = { |
|||
"imageFile": "https://upload.wikimedia.org/wikipedia/commons/0/0c/Button_P_template.png", |
|||
"speedTip": "Template", |
|||
"tagOpen": "{{", |
|||
"tagClose": "}" + "}", |
|||
"sampleText": "Template" |
|||
}; |
|||
mwCustomEditButtons[mwCustomEditButtons.length] = { |
|||
"imageFile": "https://upload.wikimedia.org/wikipedia/commons/0/05/Button_Anf%C3%BChrung.png", |
|||
"speedTip": "Citazione", |
|||
"tagOpen": "{{Cit2|", |
|||
"tagClose": "|Testo sotto}" + "}", |
|||
"sampleText": "Testo citazione" |
|||
}; |
|||
} |
|||
// Pulsanti da aggiungere nella pagina di modifica: sistema di aggiornamento centralizzato |
|||
var morphMasterCollection = document.getElementsByClass("morphMaster"); |
|||
var pulsanteAccusa = { |
|||
var multiMorphMasterCollection = document.getElementsByClass("multiMorphMaster"); |
|||
'imageFile': 'https://static.miraheze.org/nonciclopediawiki/9/93/Button_Jessica.png', |
|||
var galleryMorphMasterCollection = document.getElementsByClass("galleryMorphMaster"); |
|||
'speedTip': 'Articolo in dubbio', |
|||
'tagOpen': '{{Accusa|accusa=', |
|||
for (var i = 0; i < morphMasterCollection.length; i++) { |
|||
'tagClose': '|firma=--~~' + '~~}' + '}\n\n', |
|||
'sampleText': 'Inserire qui l\'accusa' |
|||
var spanID = morphMasterCollection[i].getAttribute("id"); |
|||
}; |
|||
var targetID = spanID.substr(0, spanID.length - 6); |
|||
var counter = 1; |
|||
// Create forward and backward paging if the paging elements exist |
|||
if ( returnObjById(targetID + "LinkNext") && returnObjById(targetID + "LinkPrev") && returnObjById(targetID + "Content1") ) { |
|||
// Create the forward link |
|||
var nextLink = document.createElement("div"); |
|||
nextLink.innerHTML = returnObjById(targetID + "LinkNext").innerHTML; |
|||
nextLink.setAttribute('name', targetID + "LinkNext"); |
|||
nextLink.onclick = morphForward; |
|||
nextLink.className = "morphLink"; |
|||
returnObjById(targetID + "LinkNext").innerHTML = ""; |
|||
returnObjById(targetID + "LinkNext").appendChild(nextLink, 0); |
|||
// Create the backward link |
|||
var prevLink = document.createElement("div"); |
|||
prevLink.innerHTML = returnObjById(targetID + "LinkPrev").innerHTML; |
|||
prevLink.setAttribute('name', targetID + "LinkPrev"); |
|||
prevLink.onclick = morphBackward; |
|||
prevLink.className = "morphLink"; |
|||
returnObjById(targetID + "LinkPrev").innerHTML = ""; |
|||
returnObjById(targetID + "LinkPrev").appendChild(prevLink, 0); |
|||
// Initialize content panes |
|||
while ( returnObjById(targetID + "Content" + counter) ) { |
|||
if ( counter == 1 ) |
|||
returnObjById(targetID + "Content" + counter).style.display = tableOrNot(targetID + "Content" + counter); |
|||
else |
|||
returnObjById(targetID + "Content" + counter).style.display = "none"; |
|||
counter++; |
|||
} |
|||
} |
|||
var pulsanteAllinea = { |
|||
counter = 1; |
|||
'imageFile': 'https://static.miraheze.org/nonciclopediawiki/f/f7/Button_align_center.png', |
|||
'speedTip': 'Centrato', |
|||
// Whether or not there is paging, generate normal links |
|||
'tagOpen': '{{Allinea|center|', |
|||
while (returnObjById(targetID + "Link" + counter) && returnObjById(targetID + "Content" + counter)) { |
|||
'tagClose': '}' + '}', |
|||
'sampleText': 'Inserisci qui il testo' |
|||
var morphLink = document.createElement("div"); |
|||
}; |
|||
morphLink.innerHTML = returnObjById(targetID + "Link" + counter).innerHTML; |
|||
returnObjById(targetID + "Link" + counter).innerHTML = ""; |
|||
returnObjById(targetID + "Link" + counter).appendChild(morphLink); |
|||
morphLink.className = "morphLink"; |
|||
morphLink.setAttribute('name', targetID + "Link" + counter); |
|||
morphLink.onclick = function () { |
|||
var targetID = this.getAttribute('name').replace(/Link\d+$/, ''); |
|||
var targetNumber = this.parentNode.id.replace(/.+Link/, ''); |
|||
performMorph(targetID, targetNumber); |
|||
return |
|||
}; |
|||
// Initialize content panes |
|||
if (counter == 1) |
|||
returnObjById(targetID + "Content" + counter).style.display = tableOrNot(targetID + "Content" + counter); |
|||
else |
|||
returnObjById(targetID + "Content" + counter).style.display = "none"; |
|||
counter++; |
|||
} |
|||
morphMasterCollection[i].innerHTML = "1"; |
|||
morphMasterCollection[i].style.display = "none"; |
|||
} |
|||
var pulsanteAllineaDX = { |
|||
for (var i = 0; i < multiMorphMasterCollection.length; i++) { |
|||
"imageFile": "https://upload.wikimedia.org/wikipedia/commons/a/a5/Button_align_right.png", |
|||
"speedTip": "Align right", |
|||
var spanID = multiMorphMasterCollection[i].getAttribute("id"); |
|||
"tagOpen": '{{Allinea|right|', |
|||
var targetID = spanID.substr(0, spanID.length - 6); |
|||
"tagClose": "}}", |
|||
var counter = 1; |
|||
"sampleText": "Testo allineato a destra" |
|||
}; |
|||
// Create forward and backward paging if the paging elements exist |
|||
if (document.getElementsByClass(targetID + "LinkNext") && document.getElementsByClass(targetID + "LinkPrev") && document.getElementsByClass(targetID + "Content1")) { |
|||
// Create the forward link |
|||
var nextLinkCollection = document.getElementsByClass(targetID + "LinkNext"); |
|||
for (j = 0; j < nextLinkCollection.length; j++) { |
|||
var nextLink = document.createElement("div"); |
|||
nextLink.innerHTML = nextLinkCollection[j].innerHTML; |
|||
nextLink.setAttribute('name', targetID + "LinkNext"); |
|||
nextLink.onclick = morphForward; |
|||
nextLink.className = "morphLink"; |
|||
nextLinkCollection[j].innerHTML = ""; |
|||
nextLinkCollection[j].appendChild(nextLink, 0); |
|||
} |
|||
// Create the backward link |
|||
var prevLinkCollection = document.getElementsByClass(targetID + "LinkPrev"); |
|||
for (j = 0; j < prevLinkCollection.length; j++) { |
|||
var prevLink = document.createElement("div"); |
|||
prevLink.innerHTML = prevLinkCollection[j].innerHTML; |
|||
prevLink.setAttribute('name', targetID + "LinkPrev"); |
|||
prevLink.onclick = morphBackward; |
|||
prevLink.className = "morphLink"; |
|||
prevLinkCollection[j].innerHTML = ""; |
|||
prevLinkCollection[j].appendChild(prevLink, 0); |
|||
} |
|||
// Initialize content panes |
|||
while (returnObjById(targetID + "Content" + counter)) { |
|||
if (counter == 1) |
|||
returnObjById(targetID + "Content" + counter).style.display = tableOrNot(targetID + "Content" + counter); |
|||
else |
|||
returnObjById(targetID + "Content" + counter).style.display = "none"; |
|||
counter++; |
|||
} |
|||
} |
|||
var pulsanteAllineaSX = { |
|||
counter = 1; |
|||
"imageFile": "https://upload.wikimedia.org/wikipedia/commons/e/ea/Button_align_left.png", |
|||
"speedTip": "Align left", |
|||
// Whether or not there is paging, generate normal links |
|||
"tagOpen": '{{Allinea|left|', |
|||
while ( document.getElementsByClass(targetID + "Link" + counter) && returnObjById(targetID + "Content" + counter) ) { |
|||
"tagClose": "}}", |
|||
"sampleText": "Testo allineato a sinistra" |
|||
var morphLinkCollection = document.getElementsByClass(targetID + "Link" + counter); |
|||
}; |
|||
for (j = 0; j < morphLinkCollection.length; j++) { |
|||
var morphLink = document.createElement("div"); |
|||
morphLink.innerHTML = morphLinkCollection[j].innerHTML; |
|||
morphLinkCollection[j].innerHTML = ""; |
|||
morphLink.setAttribute('name', targetID + "Link" + counter); |
|||
morphLinkCollection[j].appendChild(morphLink, 0); |
|||
morphLink.onclick = function () { |
|||
var targetID = this.getAttribute('name').replace(/Link\d+$/, ''); |
|||
var targetNumber = this.getAttribute('name').replace(/.+Link/, ''); |
|||
performMorph(targetID, targetNumber); |
|||
return |
|||
}; |
|||
morphLink.className = "morphLink"; |
|||
} |
|||
// Initialize content panes |
|||
if (counter == 1) |
|||
returnObjById(targetID + "Content" + counter).style.display = tableOrNot(targetID + "Content" + counter); |
|||
else |
|||
returnObjById(targetID + "Content" + counter).style.display = "none"; |
|||
counter++; |
|||
} |
|||
multiMorphMasterCollection[i].innerHTML = "1"; |
|||
multiMorphMasterCollection[i].style.display = "none"; |
|||
} |
|||
for (var i = 0; i < galleryMorphMasterCollection.length; i++) { |
|||
var spanID = galleryMorphMasterCollection[i].getAttribute("id"); |
|||
var targetID = spanID.substr(0, spanID.length - 6); |
|||
var counter = 1; |
|||
// Create forward and backward paging if the paging elements exist |
|||
if ( returnObjById(targetID + "LinkNext") && returnObjById(targetID + "LinkPrev") && returnObjById(targetID + "Content1") ) { |
|||
// Create the forward link |
|||
var nextLink = document.createElement("div"); |
|||
nextLink.innerHTML = returnObjById(targetID + "LinkNext").innerHTML; |
|||
nextLink.setAttribute('name', targetID + "LinkNext"); |
|||
nextLink.onclick = galleryMorphForward; |
|||
nextLink.className = "morphLink"; |
|||
returnObjById(targetID + "LinkNext").innerHTML = ""; |
|||
returnObjById(targetID + "LinkNext").appendChild(nextLink, 0); |
|||
// Create the backward link |
|||
var prevLink = document.createElement("div"); |
|||
prevLink.innerHTML = returnObjById(targetID + "LinkPrev").innerHTML; |
|||
prevLink.setAttribute('name', targetID + "LinkPrev"); |
|||
prevLink.onclick = galleryMorphBackward; |
|||
prevLink.className = "morphLink"; |
|||
returnObjById(targetID + "LinkPrev").innerHTML = ""; |
|||
returnObjById(targetID + "LinkPrev").appendChild(prevLink, 0); |
|||
// Initialize content panes |
|||
while ( returnObjById(targetID + "Content" + counter) ) { |
|||
if (counter == 1) |
|||
returnObjById(targetID + "Content" + counter).style.display = tableOrNot(targetID + "Content" + counter); |
|||
else |
|||
returnObjById(targetID + "Content" + counter).style.display = "none"; |
|||
counter++; |
|||
} |
|||
if (counter == 2) { |
|||
returnObjById(targetID + "LinkNext").style.display = "none"; |
|||
} |
|||
galleryCounter = counter - 1; |
|||
returnObjById(targetID + "Master").setAttribute("counter", galleryCounter); |
|||
if (returnObjById(targetID + "Counter")) { |
|||
returnObjById(targetID + "Counter").innerHTML = "(1/" + galleryCounter + ")"; |
|||
} |
|||
} |
|||
galleryMorphMasterCollection[i].innerHTML = "1"; |
|||
galleryMorphMasterCollection[i].style.display = "none"; |
|||
} |
|||
} |
|||
var pulsanteApice = { |
|||
/* Function that toggles ED's collapsing objects. |
|||
'imageFile': 'http://upload.wikimedia.org/wikipedia/en/8/80/Button_upper_letter.png', |
|||
* Added 11/5/2007 by WhiteMystery (misterioblanco@gmail.com) |
|||
'speedTip': 'Apice', |
|||
* on Encyclopedia Dramatica, stolen by Zaza |
|||
'tagOpen': '<sup>', |
|||
* Taken from http://www.netlobo.com/javascript_get_element_id.html */ |
|||
'tagClose': '</sup>', |
|||
'sampleText': 'Inserire qui il testo' |
|||
}; |
|||
var pulsanteAPU = { |
|||
function returnObjById(id) { |
|||
'imageFile': 'https://static.miraheze.org/nonciclopediawiki/0/0a/Button_sad.png', |
|||
'speedTip': 'Articolo poco umoristico', |
|||
if (document.getElementById) |
|||
'tagOpen': '{{Accusa|accusa=APU|firma=--~~' + '~~}' + '}\n\n', |
|||
var returnVar = document.getElementById(id); |
|||
'tagClose': '', |
|||
else if (document.all) |
|||
'sampleText': '' |
|||
var returnVar = document.all[id]; |
|||
}; |
|||
else if (document.layers) |
|||
var returnVar = document.layers[id]; |
|||
return returnVar; |
|||
} |
|||
var pulsanteBarrato = { |
|||
'imageFile': 'https://upload.wikimedia.org/wikipedia/en/c/c9/Button_strike.png', |
|||
'speedTip': 'Barrato', |
|||
'tagOpen': '{{s|', |
|||
'tagClose': '}' + '}', |
|||
'sampleText': 'Inserire qui il testo' |
|||
}; |
|||
var pulsanteBig = { |
|||
/* Attiva il charinsert per gli anonimi nel box "newarticleintro" */ |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/5/56/Button_big.png', |
|||
function charinsert_anon_hack () { |
|||
'speedTip': 'Grande', |
|||
if(!(wgAction == "edit" && wgArticleId == 0 && wgUserName == null)) return; |
|||
'tagOpen': '{{Dimensione|125%|', |
|||
var box = getElementsByClass(document.getElementById("bodyContent"), "mw-newarticletextanon", 'div')[0]; |
|||
'tagClose': '}' + '}', |
|||
if (!box) return; |
|||
'sampleText': 'Inserisci qui il testo' |
|||
var link = '<' + 'a href="#" onclick="insertTags('$1','','');return false">$1<' + '/a>'; |
|||
}; |
|||
box.innerHTML = box.innerHTML.replace(/<charinsert>(.+?)<\/charinsert>/, link); |
|||
return; |
|||
} |
|||
var pulsanteBTA = { |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/3/34/Button_MrX.png', |
|||
'speedTip': 'Battute tra amici', |
|||
'tagOpen': '{{Cancellazione|motivo=BTA|firma=--~~' + '~~}' + '}\n\n', |
|||
'tagClose': '', |
|||
'sampleText': '' |
|||
}; |
|||
var pulsanteCancellazione = { |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/0/0c/Button_Chuck.png', |
|||
'speedTip': 'Cancellazione immediata (USARE CON CAUTELA!)', |
|||
'tagOpen': '{{Cancellazione|motivo=', |
|||
'tagClose': '|firma=--~~' + '~~}' + '}\n\n', |
|||
'sampleText': 'Inserire qui il motivo' |
|||
}; |
|||
var pulsanteCarattere = { |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/8/8c/Bottone_Carattere.png', |
|||
'speedTip': 'Carattere', |
|||
'tagOpen': '{{Carattere|Tipo di carattere|dim%|', |
|||
'tagClose': '|#colore}}', |
|||
'sampleText': 'testo' |
|||
}; |
|||
var pulsanteCassetto = { |
|||
/* Function to add a "purge" button at the top of the page, |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/3/38/Button_cassetto.png', |
|||
* usefull for dpl, random and similar things that need the |
|||
'speedTip': 'Cassetto', |
|||
* cache of the server. |
|||
'tagOpen': '{{Cassetto|titolo=Titolo cassetto|testo=', |
|||
* |
|||
'tagClose': '}}', |
|||
* Created by MFH */ |
|||
'sampleText': 'Inserire qui il testo' |
|||
var buttonPurge = 0; |
|||
}; |
|||
var pulsanteCatImg = { |
|||
function createPurgeButton() { |
|||
'imageFile': '', |
|||
if (buttonPurge == 0 || wgCanonicalNamespace == 'Special') return; |
|||
'speedTip': 'Categoria immagini', |
|||
if (document.getElementById('ca-report-problem')) { /* Modifies the "report a problem" button, that is already invisible */ |
|||
'tagOpen': '[[Categoria:Immagini ', |
|||
document.getElementById('ca-report-problem').getElementsByTagName('a')[0].innerHTML = 'Purge'; |
|||
'tagClose': ']]', |
|||
document.getElementById('ca-report-problem').getElementsByTagName('a')[0].href = wgServer + wgScriptPath + '/index.php?title=' + wgPageName + '&action=purge'; |
|||
'sampleText': '' |
|||
document.getElementById('ca-report-problem').setAttribute('id', 'ca-purge'); |
|||
}; |
|||
else { |
|||
var menuList = document.getElementById('p-cactions').getElementsByTagName('ul')[0]; |
|||
var newLi = document.createElement('li'); |
|||
newLi.setAttribute('id', 'ca-purge'); |
|||
newLi.innerHTML = '<a href="' + wgServer + wgScriptPath + '/index.php?title=' + wgPageName + '&action=purge">Purge</a>'; |
|||
menuList.appendChild(newLi); |
|||
} |
|||
} |
|||
var pulsanteCC = { |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/0/04/Button_Creative_Commons.png', |
|||
'speedTip': 'Creative Commons', |
|||
'tagOpen': '{{Creative Commons|by=y|nc=y|sa=y|versione=3.0}' + '}\n', |
|||
'tagClose': '', |
|||
'sampleText': '' |
|||
}; |
|||
var pulsanteCensura = { |
|||
/* Visualizza correttamente categorie nascoste in IE */ |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/2/20/Button_censura2.png', |
|||
function hiddencats_IE () { |
|||
'speedTip': 'Censura', |
|||
if (navigator.appName != "Microsoft Internet Explorer") return; |
|||
'tagOpen': '{{Censura|', |
|||
var div = document.getElementById("mw-hidden-catlinks"); |
|||
'tagClose': '}}', |
|||
if (div == null) return; |
|||
'sampleText': 'testo da censurare' |
|||
var span = document.createElement('span'); |
|||
}; |
|||
span.id = 'mw-hidden-catlinks-switch'; |
|||
span.innerHTML = ">>"; |
|||
div.insertBefore(span, div.firstChild); |
|||
return; |
|||
} |
|||
var pulsanteCit2 = { |
|||
/* Class che aggiunge "target= '_blank'" ai link */ |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/6/6f/Button_cit2.png', |
|||
function target_blank () { |
|||
'speedTip': 'Citazione 2', |
|||
var tags = getElementsByClass(document.getElementsByTagName('body')[0], "target-blank"); |
|||
'tagOpen': '{{Cit2|', |
|||
if (tags == null) return; |
|||
'tagClose': '}}\n', |
|||
var i, j, links; |
|||
'sampleText': 'Inserire qui la citazione' |
|||
for (i=0; i < tags.length; i++) { |
|||
}; |
|||
links = tags[i].getElementsByTagName('a'); |
|||
for (j=0; j < links.length; j++) links[j].target = '_blank'; |
|||
} |
|||
return; |
|||
} |
|||
var pulsanteCitnec = { |
|||
/* Visualizza note come tooltip */ |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/f/f6/Button_Citnec.png', |
|||
/* by Sanjilops - http://nonciclopedia.wikia.com/wiki/Utente:Sanjilops */ |
|||
'speedTip': 'Citazione necessaria', |
|||
var disablereftooltip = false; |
|||
'tagOpen': '{{Citnec|', |
|||
function ref_tooltip () { |
|||
'tagClose': '}}', |
|||
if (disablereftooltip) return; |
|||
'sampleText': 'Inserire qui la citazione' |
|||
var refs = getElementsByClass(document.getElementById('bodyContent'), "reference", 'sup'); |
|||
}; |
|||
if (!refs) return; |
|||
for (var i = 0; i < refs.length; i++) Do(refs[i]); |
|||
return; |
|||
function Do (ref) { |
|||
var span = document.createElement('span'); |
|||
var id = ref.id.substr('cite_ref-'.length); |
|||
span.className = "reference-tt"; |
|||
span.id = "cite_tt-" + id; |
|||
var li = document.getElementById('cite_note-' + id.replace(/_(\d+)-\d+$/, '-$1')); |
|||
if (!li) return; |
|||
var temp = li.innerHTML; |
|||
temp = temp.split(/^.+a href=\"#cite_ref-.+\" title=\"\">.+?<\/a>(<\/sup>)? /); |
|||
span.innerHTML = (temp.length)? temp[temp.length - 1] : temp; |
|||
if (ref.offsetLeft < document.getElementById('bodyContent').offsetWidth/2) span.style.left = (ref.offsetWidth - 1) + 'px'; |
|||
else span.style.right = (ref.offsetWidth - 1) + 'px'; |
|||
temp = getText(span); |
|||
temp = temp.length * 12; |
|||
span.style.width = (temp < 400)? temp + 'px' : "400px"; |
|||
ref.appendChild(span); |
|||
return; |
|||
} |
|||
} |
|||
var pulsanteColonne = { |
|||
/* Funzione che imposta il tasto "modifica" sulla versione corrente nella schermata delle differenze; non attiva di default. |
|||
'imageFile': 'https://images.wikia.nocookie.net/__cb20100806112827/nonciclopedia/images/1/15/Button_colonne.png', |
|||
* Per attivarla inserire nel proprio monobook.js il codice: |
|||
'speedTip': 'Testo in colonne', |
|||
addOnloadHook(editcurrentid); |
|||
'tagOpen': '{{Colonne|col=2|', |
|||
*/ |
|||
'tagClose': '}}\n', |
|||
function editcurrentid () { |
|||
'sampleText': 'Inserire qui il testo per le colonne' |
|||
var b = document.getElementById('ca-edit'); |
|||
}; |
|||
if (!b) return; |
|||
if (getElementsByClass(document, 'diff', 'table').length == 0) return; |
|||
var l = b.firstChild; |
|||
l.href = l.href.replace(/&oldid=\d+/, ''); |
|||
appendText(l, '*'); |
|||
return; |
|||
} |
|||
var pulsanteColore = { |
|||
/* multiSFX */ |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/0/0f/Bottone_colore.png', |
|||
var multislide_time = 1000; |
|||
'speedTip': 'Colore', |
|||
var multislide_interval = 10; |
|||
'tagOpen': '{{Colore|#Codice esadecimale|', |
|||
var noMultislide = false; |
|||
'tagClose': '}}', |
|||
var multislide_state = new Object(); |
|||
'sampleText': 'testo da colorare' |
|||
var multislide_master = new Object(); |
|||
}; |
|||
function multislide_startup () { |
|||
if (noMultislide) return; |
|||
var toggles = getElementsByClass(document, "multislideToggle"); |
|||
if (!toggles.length) return; |
|||
var names = new Array(); |
|||
var id = '', i, elements, master; |
|||
for (var I=0; I< toggles.length; I++) { |
|||
id = toggles[I].title; |
|||
if (String(names).indexOf(id) != -1) continue; |
|||
names[names.length] = id; |
|||
multislide_state[id] = false; |
|||
master = document.getElementById(id + "Master"); |
|||
if (master) { |
|||
multislide_master[id] = new Object(); |
|||
multislide_master[id].onload = hasClass(master, "slideOnload"); |
|||
multislide_master[id].time = (/slideTime-\d+/.test(master.className))? parseInt(master.className.match(/slideTime-(\d+)/)[1]) : -1; |
|||
multislide_master[id].fade = hasClass(master, "slideFade"); |
|||
} |
|||
else multislide_master[id] = null; |
|||
} |
|||
var dom, n; |
|||
for (I=0; I< names.length; I++) { |
|||
id = names[I]; |
|||
n = 0; |
|||
dom = document.getElementsByTagName('body')[0].getElementsByTagName('*'); |
|||
for (i = 0; i < dom.length; i++) { |
|||
if (dom[i].title == id && dom[i].nodeName.toUpperCase() != 'A') { |
|||
if (hasClass(dom[i], "multislideToggle")) { |
|||
dom[i].setAttribute('name', id + "-Toggle"); |
|||
CreateToggle(dom[i], id, n); |
|||
n++; |
|||
} |
|||
else { |
|||
dom[i].setAttribute('name', id + "-Content"); |
|||
SetStartPosition(dom[i]); |
|||
} |
|||
dom[i].removeAttribute('title'); |
|||
} |
|||
} |
|||
if (multislide_master[id] && multislide_master[id].onload) multislide_toggle(id, multislide_master[id].time); |
|||
} |
|||
return; |
|||
var pulsanteDimensione = { |
|||
function CreateToggle (el, id, n) { |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/2/2f/Bottone_dimensione.png', |
|||
var time = (/slideTime-\d+/.test(el.className))? parseInt(el.className.match(/slideTime-(\d+)/)[1]) : -1; |
|||
'speedTip': 'Dimensione', |
|||
var fade = hasClass(el, "slideFade"); |
|||
'tagOpen': '{{Dimensione|dim%|', |
|||
if (hasClass(el, "slideHover")) { |
|||
'tagClose': '}}', |
|||
el.onmouseover = function () {multislide_toggle(id, time, fade, true); return;} |
|||
'sampleText': 'testo' |
|||
el.onmouseout = function () {multislide_toggle(id, time, fade, false); return;} |
|||
}; |
|||
else el.onclick = function () {multislide_toggle(id, time, fade); return;}; |
|||
var On = getElementsByClass(el, "slideOn")[0]; |
|||
if (!On) return; |
|||
var toggle; |
|||
if (el.firstChild.nodeType != 1) { |
|||
toggle = document.createElement('span'); |
|||
toggle.innerHTML = el.firstChild.nodeValue; |
|||
el.replaceChild(toggle, el.firstChild); |
|||
} |
|||
else toggle = el.firstChild; |
|||
toggle.id = id + "-toggle" + n; /* dato che n è i, gli id possono non essere consecutivi */ |
|||
On.id = id + "-toggle" + n + "-on"; |
|||
var Off = getElementsByClass(el, "slideOff")[0]; |
|||
if (!Off) { |
|||
Off = toggle.cloneNode(true); |
|||
Off.style.display = 'none'; |
|||
el.appendChild(Off); |
|||
} |
|||
Off.id = id + "-toggle" + n + "-off"; |
|||
return; |
|||
} |
|||
var pulsanteFormattazione1 = { |
|||
function SetStartPosition (el) { |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/d/d6/E%27fiamme.png', |
|||
var height = el.offsetHeight; |
|||
'speedTip': 'Formattazione', |
|||
var width = el.offsetWidth; |
|||
'tagOpen': '{{Formattazione|note=', |
|||
if (hasClass(el, "slideFromTop")) { |
|||
'tagClose': '|firma=--~~' + '~~}' + '}\n\n', |
|||
'sampleText': 'Inserire qui cosa fare' |
|||
return; |
|||
}; |
|||
if (hasClass(el, "slideFromBottom")) { |
|||
el.style.bottom = '-' + height + 'px'; |
|||
return; |
|||
} |
|||
if (!hasClass(el.parentNode, "slideNoResize") && (el.parentNode.style == undefined || !el.parentNode.style.height)) el.parentNode.style.height = height + 'px'; |
|||
if (hasClass(el, "slideFromLeft")) { |
|||
el.style.left = '-' + width + 'px'; |
|||
return; |
|||
} |
|||
if (hasClass(el, "slideFromRight")) el.style.right = '-' + width + 'px'; |
|||
return; |
|||
} |
|||
} |
|||
var pulsanteFormattazione2 = { |
|||
function multislide_toggle(id, toggle_time, toggle_fade, hoverWantedState) { |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/e/e1/E%27mat.png', |
|||
if(hoverWantedState != undefined && hoverWantedState == multislide_state[id]) return; |
|||
'speedTip': 'Formattazione', |
|||
var contents = getElementsByName(id + "-Content"); |
|||
'tagOpen': '{{Formattazione|note=', |
|||
var el, time, fade; |
|||
'tagClose': '|firma=--~~' + '~~}' + '}\n\n', |
|||
for (var i = 0; i < contents.length; i++) { |
|||
'sampleText': 'Inserire qui cosa fare' |
|||
el = contents[i]; |
|||
}; |
|||
if (/slideTime-\d+/.test(el.className)) time = parseInt(el.className.match(/slideTime-(\d+)/)[1]); |
|||
else { |
|||
if (toggle_time != -1) time = toggle_time; |
|||
else { |
|||
if (multislide_master[id] && multislide_master[id].time != -1) time = multislide_master[id].time; |
|||
else time = multislide_time; |
|||
} |
|||
} |
|||
fade = hasClass(el, "slideFade") || toggle_fade || (multislide_master[id] && multislide_master[id].fade); |
|||
var dir = el.className.match(/slideFrom(Top|Bottom|Left|Right)/)[0].substr(9).toLowerCase(); |
|||
var framesize; |
|||
if (!multislide_state[id]) { |
|||
if (dir == 'top' || dir == 'bottom') framesize = el.parentNode.offsetHeight + el.offsetHeight; |
|||
else if (dir == 'left' || dir == 'right') framesize = el.parentNode.offsetWidth + el.offsetWidth; |
|||
Slide(el, dir, 0, framesize, time, multislide_interval); |
|||
} |
|||
else { |
|||
var size; |
|||
if (dir == 'top' || dir == 'bottom') { size = el.offsetHeight; framesize = el.parentNode.offsetHeight - size; } |
|||
else if (dir == 'left' || dir == 'right') { size = el.offsetWidth; framesize = el.parentNode.offsetWidth - size; } |
|||
Slide(el, dir, 0 - size, framesize, time, multislide_interval); |
|||
} |
|||
if (fade) _fade(el, time, multislide_state[id]); |
|||
} |
|||
var toggles = getElementsByName(id + "-Toggle"); |
|||
for (var i = 0; i < toggles.length; i++) { |
|||
var el = document.getElementById(id + "-toggle" + i); |
|||
if (!el) continue; |
|||
el.innerHTML = (multislide_state[id])? document.getElementById(id + "-toggle" + i + "-off").innerHTML : document.getElementById(id + "-toggle" + i + "-on").innerHTML; |
|||
} |
|||
multislide_state[id] = !multislide_state[id]; |
|||
return; |
|||
function _fade (el, time, rev) { |
|||
setTimeout(function () {Fade(el, time, multislide_interval, rev, (rev? 0.8 : 1)); }, 1); |
|||
setTimeout(function () {el.style.filter = "alpha(opacity=100)"; el.style.opacity = 1; }, time + 5*multislide_interval); |
|||
return;} |
|||
} |
|||
var pulsanteGallery = { |
|||
'imageFile': 'https://images.wikia.nocookie.net/central/images/1/12/Button_gallery.png', |
|||
'speedTip': 'Galleria di immagini', |
|||
'tagOpen': '\n<gallery>\n', |
|||
'tagClose': '\n</gallery>\n', |
|||
'sampleText': 'File:Example.jpg|Caption1\nFile:Example.jpg|Caption2' |
|||
}; |
|||
var |
var pulsanteManuali = { |
||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/f/fe/Bottone_Man.png', |
|||
var multifade_interval = 10; |
|||
'speedTip': 'Link ai manuali', |
|||
var multifade_state = new Object(); |
|||
'tagOpen': '{{Man|', |
|||
var multifade_master = new Object(); |
|||
'tagClose': '}}', |
|||
var noMultifade = false; |
|||
'sampleText': 'Manuale (iniziale)' |
|||
function multifade_startup () { |
|||
}; |
|||
if (noMultifade) return; |
|||
var toggles = getElementsByClass(document, "multifadeToggle"); |
|||
if (!toggles.length) return; |
|||
var names = new Array(); |
|||
var id = '', i, elements, master; |
|||
for (var I=0; I< toggles.length; I++) { |
|||
id = toggles[I].title; |
|||
if (String(names).indexOf(id) != -1) continue; |
|||
names[names.length] = id; |
|||
multifade_state[id] = false; |
|||
master = document.getElementById(id + "Master"); |
|||
if (master) { |
|||
multifade_master[id] = new Object(); |
|||
multifade_master[id].onload = hasClass(master, "fadeOnload"); |
|||
multifade_master[id].time = (/fadeTime-\d+/.test(master.className))? parseInt(master.className.match(/fadeTime-(\d+)/)[1]) : -1; |
|||
} |
|||
else multifade_master[id] = null; |
|||
} |
|||
var dom, n; |
|||
for (I=0; I< names.length; I++) { |
|||
id = names[I]; |
|||
n = 0; |
|||
dom = document.getElementsByTagName('body')[0].getElementsByTagName('*'); |
|||
for (i = 0; i < dom.length; i++) { |
|||
if (dom[i].title == id && dom[i].nodeName.toUpperCase() != 'A') { |
|||
if (hasClass(dom[i], "multifadeToggle")) { |
|||
dom[i].setAttribute('name', id + "-Toggle"); |
|||
CreateToggle(dom[i], id, n); |
|||
n++; |
|||
} |
|||
else { |
|||
dom[i].setAttribute('name', id + "-Content"); |
|||
dom[i].style.opacity = 0; |
|||
dom[i].style.filter = 'alpha(opacity=0)'; |
|||
} |
|||
dom[i].removeAttribute('title'); |
|||
} |
|||
} |
|||
if (multifade_master[id] && multifade_master[id].onload) multifade_toggle(id, multifade_master[id].time); |
|||
} |
|||
return; |
|||
var pulsanteNomedimmerda = { |
|||
function CreateToggle (el, id, n) { |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/3/33/Sguardone.png', |
|||
el.setAttribute('name', id + "-Toggle"); |
|||
'speedTip': 'Immagine da rinominare ', |
|||
var time = (/fadeTime-\d+/.test(el.className))? parseInt(el.className.match(/fadeTime-(\d+)/)[1]) : -1; |
|||
'tagOpen': '{{Nomedimmerda|scadenza={{subst:7g}' + '}|motivo=', |
|||
if (hasClass(el, "fadeHover")) { |
|||
'tagClose': '|firma=--~~' + '~~}' + '}\n\n', |
|||
el.onmouseover = function () {multifade_toggle(id, time, true); return;} |
|||
'sampleText': 'Inserisci un suggerimento' |
|||
el.onmouseout = function () {multifade_toggle(id, time, false); return;} |
|||
}; |
|||
else el.onclick = function () {multifade_toggle(id, time); return;}; |
|||
var On = getElementsByClass(el, "fadeOn")[0]; |
|||
if (!On) return; |
|||
var toggle; |
|||
if (el.firstChild.nodeType != 1) { |
|||
toggle = document.createElement('span'); |
|||
toggle.innerHTML = el.firstChild.nodeValue; |
|||
el.replaceChild(toggle, el.firstChild); |
|||
} |
|||
else toggle = el.firstChild; |
|||
toggle.id = id + "-toggle" + n; /* dato che n è i, gli id possono non essere consecutivi */ |
|||
On.id = id + "-toggle" + n + "-on"; |
|||
var Off = getElementsByClass(el, "fadeOff")[0]; |
|||
if (!Off) { |
|||
Off = toggle.cloneNode(true); |
|||
Off.style.display = 'none'; |
|||
el.appendChild(Off); |
|||
} |
|||
Off.id = id + "-toggle" + n + "-off"; |
|||
return; |
|||
} |
|||
} |
|||
var pulsantePedice = { |
|||
function multifade_toggle(id, general_time, hoverWantedState) { |
|||
'imageFile': 'http://upload.wikimedia.org/wikipedia/en/7/70/Button_lower_letter.png', |
|||
if(hoverWantedState != undefined && hoverWantedState == multifade_state[id]) return; |
|||
'speedTip': 'Pedice', |
|||
var contents = getElementsByName(id + "-Content"); |
|||
'tagOpen': '<sub>', |
|||
var el, time; |
|||
'tagClose': '</sub>', |
|||
for (var i = 0; i < contents.length; i++) { |
|||
'sampleText': 'Inserire qui il testo' |
|||
el = contents[i]; |
|||
}; |
|||
if (/fadeTime-\d+/.test(el.className)) time = parseInt(el.className.match(/fadeTime-(\d+)/)[1]); |
|||
else { |
|||
if (general_time != -1) time = general_time; |
|||
else { |
|||
if (multifade_master[id] && multifade_master[id].time != -1) time = multifade_master[id].time; |
|||
else time = multifade_time; |
|||
} |
|||
} |
|||
Fade(el, time, multifade_interval, multifade_state[id], multifade_state[id]? 0.8 : 1); |
|||
} |
|||
var toggles = getElementsByName(id + "-Toggle"); |
|||
for (var i = 0; i < toggles.length; i++) { |
|||
var el = document.getElementById(id + "-toggle" + i); |
|||
if (!el) continue; |
|||
el.innerHTML = (multifade_state[id])? document.getElementById(id + "-toggle" + i + "-off").innerHTML : document.getElementById(id + "-toggle" + i + "-on").innerHTML; |
|||
} |
|||
multifade_state[id] = !multifade_state[id]; |
|||
return; |
|||
} |
|||
var pulsanteRedirect = { |
|||
/* Parser for simple math expressions |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/7/73/Bottone_redirect.png', |
|||
Created by MFH for Nonciclopedia */ |
|||
'speedTip': 'Redirect', |
|||
'tagOpen': '#REDIRECT [[', |
|||
'tagClose': ']]', |
|||
'sampleText': 'Nome pagina' |
|||
}; |
|||
var pulsanteReflink = { |
|||
function opSolve(opArray, posArray) { |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/6/6e/Bottone_reflink.png', |
|||
var opDivided = new Array(Array(opArray[posArray[0]][0])); |
|||
'speedTip': 'Inserisci la nota nel testo', |
|||
var posDivided = new Array(Array(posArray[0], 0)); /* Position, length-1*/ |
|||
'tagOpen': '<ref>', |
|||
var opDivInd = 0; |
|||
'tagClose': '</ref>', |
|||
for (var i = 1; i < posArray.length; i++) { /* Separates the different brackets*/ |
|||
'sampleText': 'Inserisci qui il testo della nota' |
|||
if (posArray[i] == posArray[i-1] + 1) { |
|||
}; |
|||
opDivided[opDivInd].push(opArray[posArray[i]][0]); |
|||
posDivided[opDivInd][1] = posDivided[opDivInd][1] + 1; |
|||
} |
|||
else { |
|||
opDivInd = opDivInd + 1; |
|||
posDivided.push(Array(posArray[i], 1)); |
|||
} |
|||
} |
|||
for (var i = 0; i <= opDivInd; i++) { |
|||
for (var j = 1; j < opDivided[opDivInd].length - 1; j++) { |
|||
if (opDivided[i][j] == '^') { |
|||
opDivided[i][j-1] = Math.pow(parseFloat(opDivided[i][j-1]),parseFloat(opDivided[i][j+1])); |
|||
opDivided[i].splice(j, 2); |
|||
j = j - 1; |
|||
} |
|||
} |
|||
for (var j = 1; j < opDivided[opDivInd].length - 1; j++) { |
|||
if (opDivided[i][j] == '*') { |
|||
opDivided[i][j-1] = parseFloat(opDivided[i][j-1])*parseFloat(opDivided[i][j+1]); |
|||
opDivided[i].splice(j, 2); |
|||
j = j - 1; |
|||
} |
|||
if (opDivided[i][j] == '/') { |
|||
opDivided[i][j-1] = parseFloat(opDivided[i][j-1])/parseFloat(opDivided[i][j+1]); |
|||
opDivided[i].splice(j, 2); |
|||
j = j - 1; |
|||
} |
|||
} |
|||
for (var j = 1; j < opDivided[opDivInd].length - 1; j++) { |
|||
if (opDivided[i][j] == '+') { |
|||
opDivided[i][j-1] = parseFloat(opDivided[i][j-1])+parseFloat(opDivided[i][j+1]); |
|||
opDivided[i].splice(j, 2); |
|||
j = j - 1; |
|||
} |
|||
if (opDivided[i][j] == '-') { |
|||
opDivided[i][j-1] = parseFloat(opDivided[i][j-1])-parseFloat(opDivided[i][j+1]); |
|||
opDivided[i].splice(j, 2); |
|||
j = j - 1; |
|||
} |
|||
} |
|||
} |
|||
for (var i = posDivided.length -1; i >= 0; i--) { |
|||
opArray[posDivided[i][0]] = Array(opDivided[i][0], opArray[posDivided[i][0]][1] - 1); |
|||
opArray.splice(posDivided[i][0]+1, posDivided[i][1]); |
|||
} |
|||
return opArray; |
|||
} |
|||
var pulsanteRestauro = { |
|||
function math_parser(operation, xValue) { |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/6/6c/Button_restauro.png', |
|||
var opArray = new Array(); |
|||
'speedTip': 'Articolo da sistemare', |
|||
var brInd = 0; /* Bracket index */ |
|||
'tagOpen': '{{Restauro|motivo=', |
|||
var brIndMax = 0; |
|||
'tagClose': '|firma=--~~' + '~~}' + '}\n\n', |
|||
'sampleText': 'Inserire qui la descrizione' |
|||
}; |
|||
var pulsanteRiquadro1 = { |
|||
for (var i = 0; i < operation.length; i++) { /* Divides the string in single characters */ |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/f/f9/Button_box.png', |
|||
var textChunk = operation.substr(i,1); |
|||
'speedTip': 'Box', |
|||
if (textChunk != ' ') { /* Removes useless spaces */ |
|||
'tagOpen': '{{Riquadro\n|larghezza=\n|colore-sfondo=\n|colore-testo=\n|colore-bordo=\n|spessore-bordo=\n|testo=\n|file-sx=\n|largh-file-sx=\n|file-dx=\n|largh-file-dx=\n}' + '}\n', |
|||
if (textChunk == '(') { /* Removes brackets, conserving the information */ |
|||
'tagClose': '', |
|||
brInd = brInd + 1; |
|||
'sampleText': '' |
|||
if (brInd > brIndMax) { |
|||
}; |
|||
brIndMax = brInd; |
|||
} |
|||
} |
|||
else if (textChunk == ')') { |
|||
brInd = brInd - 1; |
|||
} |
|||
else if (textChunk == 'x') { |
|||
opArray.push(Array(xValue, brInd)); |
|||
} |
|||
else { |
|||
opArray.push(Array(textChunk, brInd)); |
|||
} |
|||
} |
|||
} |
|||
i = 0; |
|||
while (i < opArray.length - 1) { /* Puts numbers together again */ |
|||
if ((opArray[i][0].match(/[0-9\.]/) || (opArray[i][0].match(/-/) && (i == 0 || opArray[i-1][1] < opArray[i][1]))) && opArray[i+1][0].match(/[0-9\.]/)) { |
|||
/* If is a number or a comma, or if is a minus at the beginnig of a bracket; and the following is a number or a comma */ |
|||
opArray[i][0] = opArray[i][0] + opArray[i+1][0]; |
|||
opArray.splice(i+1, 1); |
|||
} |
|||
else { |
|||
i++; |
|||
} |
|||
} |
|||
for (var i = brIndMax; i >= 0; i--) { |
|||
var posArray = new Array(); |
|||
for (var j = 0; j < opArray.length; j++) { |
|||
if (opArray[j][1] == i) { |
|||
posArray.push(j); |
|||
} |
|||
} |
|||
opArray = opSolve(opArray, posArray); |
|||
} |
|||
return opArray[0][0]; |
|||
} |
|||
var pulsanteRiquadro2 = { |
|||
/*Analisi delle visite*/ |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/f/f9/Button_box.png', |
|||
function init() { |
|||
'speedTip': 'Box', |
|||
codice = document.createElement('script'); |
|||
'tagOpen': '{{Riquadro\n|classe=\n|larghezza=\n|colore-sfondo=\n|colore-testo=\n|colore-bordo=\n|stile-bordo=\n|spessore-bordo=\n|stile-riquadro=\n|testo=\n|file-sx=\n|largh-file-sx=\n|file-dx=\n|largh-file-dx=\n}' + '}\n', |
|||
codice.type = 'text/javascript'; |
|||
'tagClose': '', |
|||
if (wgUserName) { |
|||
'sampleText': '' |
|||
codice.innerHTML = "var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-17496928-1']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);})();"; |
|||
}; |
|||
else { |
|||
codice.innerHTML = "var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-17496918-1']); _gaq.push(['_trackPageview']); (function() {var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);})();"; |
|||
} |
|||
headTag = document.getElementsByTagName("head")[0]; |
|||
headTag.appendChild(codice); |
|||
} |
|||
addOnloadHook(init); |
|||
var pulsanteScadenza = { |
|||
/* Funzione returnto in Special:Signup - disattivata per problemi */ |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/a/a5/Button_Samara.png', |
|||
/*function entraSignUp() { |
|||
'speedTip': 'Articolo in scadenza', |
|||
if(!wgUserName) { |
|||
'tagOpen': '{{Scadenza|scadenza=' + '{{subst:7g}' + '}|note=', |
|||
document.getElementById('pt-login').innerHTML='<a accesskey="o" title="La registrazione è consigliata, anche se non obbligatoria [o]" href="/index.php?title=Speciale:Signup&returnto=' + wgPageName + '>Entra / Registrati</a>' |
|||
'tagClose': '|firma=--~~' + '~~}' + '}\n\n', |
|||
} |
|||
'sampleText': 'Note' |
|||
} |
|||
}; |
|||
var pulsanteSmall = { |
|||
addOnloadHook(entraSignUp);*/ |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/5/58/Button_small.png', |
|||
'speedTip': 'Piccolo', |
|||
'tagOpen': '{{Dimensione|80%|', |
|||
'tagClose': '}' + '}', |
|||
'sampleText': 'Inserisci qui il testo' |
|||
}; |
|||
var pulsanteSottolineato = { |
|||
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/f/fd/Button_underline.png', |
|||
'speedTip': 'Sottolineato', |
|||
'tagOpen': '{{u|', |
|||
'tagClose': '}' + '}', |
|||
'sampleText': 'Inserire qui il testo' |
|||
}; |
|||
var pulsanteTabella = { |
|||
'imageFile': 'https://upload.wikimedia.org/wikipedia/en/6/60/Button_insert_table.png', |
|||
'speedTip': 'Tabella', |
|||
'tagOpen': '{| class="wikitable"\n|-\n', |
|||
'tagClose': '\n|}\n', |
|||
'sampleText': '!| header 1\n!| header 2\n!| header 3\n|-\n|| riga 1, cella 1\n|| riga 1, cella 2\n|| riga 1, cella 3\n|-\n|| riga 2, cella 1\n|| riga 2, cell1 2\n|| riga 2, cella 3' |
|||
}; |
|||
var pulsanteVideo = { |
|||
function facebooklikeboxTEST() { |
|||
'imageFile': 'https://images.wikia.nocookie.net/__cb20100915172123/nonciclopedia/images/f/ff/Bottone_video.png', |
|||
window.fbAsyncInit = function() { |
|||
'speedTip': 'Inserisci un video - Per i parametri aggiuntivi leggi la pagina del template', |
|||
FB.init({appId: '331743818234', status: true, cookie: true, |
|||
'tagOpen': '{{YoutubeVideo|', |
|||
xfbml: true}); |
|||
'tagClose': '}' + '}', |
|||
}; |
|||
'sampleText': 'Inserisci qui il codice del video' |
|||
(function() { |
|||
}; |
|||
var e = document.createElement('script'); e.async = true; |
|||
e.src = document.location.protocol + |
|||
'//connect.facebook.net/en_US/all.js'; |
|||
document.getElementById('fb-root').appendChild(e); |
|||
}()); |
|||
var pulsanteEvidenzia = { |
|||
addOnloadHook(facebooklikeboxTEST); |
|||
"imageFile": "https://images.wikia.nocookie.net/__cb20140408123004/nonciclopedia/images/b/b5/Bottone_evidenziatore.png", |
|||
} |
|||
"speedTip": "Evidenziatore", |
|||
"tagOpen": "{{Evidenzia|giallo|", |
|||
"tagClose": "}}", |
|||
"sampleText": "Testo" |
|||
}; |
Versione attuale delle 10:55, 12 apr 2019
/*************** Variabili di uso globale ***************/
// Variabili per il caricamento della pagina
var hooksCustom = new Array(); // Array di funzioni personalizzate da avviare unicamente al caricamento della pagina
var hooksCustomRender = new Array(); // Array di funzioni personalizzate da avviare al caricamento della pagina e dell'anteprima
// Sintassi:
// Se la funzione non ha bisogno di parametri: hooksCustom.push(nomeFunzione);
// Se invece la funzione ha bisogno di parametri: hooksCustom.push([nomeFunzione, [parametro1, parametro2, ...]]);
// nomeFunzione _non_ deve essere _mai_ fra virgolette! E non bisogna nemmeno scrivere nomeFunzione(), le parentesi non ci vogliono!
// Variabili per gli effetti
var navigationBarHide = '[Nascondi]'; // Usati per il dismissableNotice e il cassetto
var navigationBarShow = '[Vedi]';
var slideDelay = 600; // Usati per cassetto, toggleLink e Morph
var fadeDelay = 400;
var navigationBarShowDefault = 0; // Usato per cassetto
/*************** Variabili di regolazione degli effetti ***************/
var disableHideEdit = false; // Disabilita la funzione hideEditPatch()
var disableTargetBlank = false; // Disabilita la funzione targetBlank()
var disableUsernameReplace = false; // Disabilita la funzione usernameReplace()
// var disableAlert = false; // Disabilita le funzioni alertLink() e alertLoad()
var disableRefTooltip = false; // Disabilita la funzione refTooltip()
var buttonPurge = false; // Abilita la funzione createPurgeButton()
var disableSectionZeroEditLink = false; // Disabilita la funzione sectionZeroEditLink()
var disableAddCSS = false; // Disabilita la funzione addCSS()
var disableAssignTitle = false; // Disabilita la funzione rewriteTitle()
var disableAssignSubTitle = false; // Disabilita la funzione rewriteSubTitle()
var noNavSlide = false; // Disabilita lo scorrimento nei cassetti [funzione toggleNavigationBar()]
var noMorphSFX = false; // Disabilita scorrimento e fading nel morph [funzioni toggleCollapse() e performMorph()]
/*************** Variabili di debug ***************/
var navBarDebug = false; // Funzione createNavigationBarToggleButton()
var toggleDebug = false; // Funzione createToggleLinks()
var morphDebug = false; // Funzione createMorphLinks()
var createTagsDebug = false; // Funzione createTags()
var testDebug = false; // Funzione displayTest()
var abcDebug = false; // Funzione displayAbc()
/*************** Caricamento della pagina ***************/
mw.hook('nonciclopedia.ready').add(function() {
// Patch
uncyPtPatch();
toolbarPatch();
communityPatch();
searchBoxPatch();
shareLinksPatch();
if($('.catinsert').length > 0) {
catInsertPatch();
setInterval(catInsertPatch, 30);
}
if(wgPageName == 'Speciale:Chat') chatPatch();
if(wgPageName == 'Speciale:Entra') registrationPatch();
if(wgPageName == 'Speciale:AdminDashboard') dashboardPatch();
oasisCheck()
// Skin
startAjaxWatch();
toolbarCookieHide();
linkAdQ();
if(wgAction == 'edit' || wgAction == 'submit') quickEditor();
if(buttonPurge && wgCanonicalNamespace != 'Special') createPurgeButton();
// Inclusioni
// Sintassi: importScript(script, condizione);
importScript('MediaWiki:Pesce_aprile_2009.js', wgPageName == 'Nonciclopedia:Storia/Pagine_commemorative/Pesci_d\'aprile/3');
importScript('MediaWiki:Pesce_aprile_2010.js', wgPageName == 'Nonciclopedia:Storia/Pagine_commemorative/Pesci_d\'aprile/4');
importScript('MediaWiki:Pesce_aprile_2011.js', wgPageName == 'Nonciclopedia:Storia/Pagine_commemorative/Pesci_d\'aprile/5');
//Funzioni dell'anteprima
hooksCommonRender();
// Altro
googleStat();
if(wgUserName) addEditintro();
// Funzioni fuori dal common.js
for(var i = 0; i < hooksCustom.length; i++) {
if(typeof hooksCustom[i] == typeof Array()) { // Se ci sono parametri da passare alla funzione
hooksCustom[i][0].apply(this, hooksCustom[i][1]);
}
else {
hooksCustom[i]();
}
}
});
// Funzioni da avviare al caricamento della pagina e dell'anteprima
function hooksCommonRender() {
// Patch
youtubePatch();
if(wgCanonicalNamespace == 'File') filePatch();
if(wgPageName == 'Speciale:Carica' || wgAction == 'edit') catTreePatch();
if(navigator.appName == 'Microsoft Internet Explorer') hiddenCatsExplorerPatch();
if(!disableHideEdit && $('#ca-edit').length && $('#hide-edit').length) hideEditPatch();
// Skin
// randomLogo();
moveEditSection();
if(wgNamespaceNumber > -1 && !disableSectionZeroEditLink) sectionZeroEditLink();
if(!disableAddCSS) addCSS();
if(!disableAssignTitle) rewriteTitle();
if(!disableAssignSubTitle) rewriteSubTitle();
// Effetti
numList();
randomList();
checkTimers();
initializeCoolCounter();
if(!disableTargetBlank) targetBlank();
if(!disableUsernameReplace) usernameReplace();
if(!disableRefTooltip) refTooltip();
if(!navBarDebug) createNavigationBarToggleButton();
if(!toggleDebug) createToggleLinks();
if(!morphDebug) createMorphLinks();
if(!createTagsDebug) createTags();
if(!testDebug) displayTest();
if(!abcDebug) displayAbc();
// Altro
jsLoading(); // Non mettere altro qui sotto
// Funzioni fuori dal common.js
for(var i = 0; i < hooksCustomRender.length; i++) {
if(typeof hooksCustomRender[i] == typeof Array()) { // Se ci sono parametri da passare alla funzione
hooksCustomRender[i][0].apply(this, hooksCustomRender[i][1]);
}
else {
hooksCustomRender[i]();
}
}
return;
}
// Funzioni da avviare da cellulare (Solo PP)
function hooksMobile() {
imgMobilePatch();
numList();
randomList();
createNavigationBarToggleButton();
createToggleLinks();
createMorphLinks();
}
/*************** Utilità ***************/
// Funzione per importare script
// Parametri:
// script: Nome della pagina in cui si trova lo script, solitamente una sottopagina di Nonciclopedia:Script
// condition: Condizione logica necessaria per includere lo script
function importScript(script, condition) {
if(!script) {
return;
}
if(condition || condition == undefined) {
var scriptElem = document.createElement('script');
scriptElem.type = 'text/javascript';
scriptElem.charset = 'UTF-8';
scriptElem.src = '/index.php?title=' + script + '&action=raw&ctype=text/javascript';
document.getElementsByTagName('head')[0].appendChild(scriptElem);
}
return;
}
// Restituisce il valore di un cookie
// Parametri:
// name: Nome della variabile memorizzata nel cookie
function getCookie(name) {
if(!document.cookie.length) {
return null;
}
var start = document.cookie.indexOf(name);
if(start == -1) {
return null;
}
start += name.length + 1;
var end = document.cookie.indexOf(';', start);
if(end == -1) {
end = document.cookie.length;
}
return unescape(document.cookie.substring(start,end));
}
/*************** Altro ***************/
// Statistiche di Google
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-17496918-1']);
_gaq.push(['_trackPageview']);
function googleStat() {
var ga = document.createElement('script');
ga.type = 'text/javascript';
ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
}
// Funzione per il Template:Caricamento
function jsLoading() {
$('.jsloading-pre').remove();
$('.jsloading-post').show();
}
// Aggiunge l'Editintro nei link di modifica anche per gli utenti registrati
function addEditintro() {
if($('#ca-talk').hasClass('new')) {
$('#ca-talk a:first').attr('href', $('#ca-talk a:first').attr('href') + '&editintro=MediaWiki:Editintro');
}
if(wgCurRevisionId) {
$('#ca-edit a:first').attr('href', $('#ca-edit a:first').attr('href') + '&editintro=MediaWiki:Editintro');
}
$('span.editsection a').each(function() {
$(this).attr('href', $(this).attr('href') + '&editintro=MediaWiki:Editintro');
});
return;
}
/************** Pulsanti ***************/
// Pulsanti aggiunti di default
if(skin != 'wikiamobile' && mwCustomEditButtons) {
mwCustomEditButtons[mwCustomEditButtons.length] = {
"imageFile": "https://upload.wikimedia.org/wikipedia/commons/0/0c/Button_P_template.png",
"speedTip": "Template",
"tagOpen": "{{",
"tagClose": "}" + "}",
"sampleText": "Template"
};
mwCustomEditButtons[mwCustomEditButtons.length] = {
"imageFile": "https://upload.wikimedia.org/wikipedia/commons/0/05/Button_Anf%C3%BChrung.png",
"speedTip": "Citazione",
"tagOpen": "{{Cit2|",
"tagClose": "|Testo sotto}" + "}",
"sampleText": "Testo citazione"
};
}
// Pulsanti da aggiungere nella pagina di modifica: sistema di aggiornamento centralizzato
var pulsanteAccusa = {
'imageFile': 'https://static.miraheze.org/nonciclopediawiki/9/93/Button_Jessica.png',
'speedTip': 'Articolo in dubbio',
'tagOpen': '{{Accusa|accusa=',
'tagClose': '|firma=--~~' + '~~}' + '}\n\n',
'sampleText': 'Inserire qui l\'accusa'
};
var pulsanteAllinea = {
'imageFile': 'https://static.miraheze.org/nonciclopediawiki/f/f7/Button_align_center.png',
'speedTip': 'Centrato',
'tagOpen': '{{Allinea|center|',
'tagClose': '}' + '}',
'sampleText': 'Inserisci qui il testo'
};
var pulsanteAllineaDX = {
"imageFile": "https://upload.wikimedia.org/wikipedia/commons/a/a5/Button_align_right.png",
"speedTip": "Align right",
"tagOpen": '{{Allinea|right|',
"tagClose": "}}",
"sampleText": "Testo allineato a destra"
};
var pulsanteAllineaSX = {
"imageFile": "https://upload.wikimedia.org/wikipedia/commons/e/ea/Button_align_left.png",
"speedTip": "Align left",
"tagOpen": '{{Allinea|left|',
"tagClose": "}}",
"sampleText": "Testo allineato a sinistra"
};
var pulsanteApice = {
'imageFile': 'http://upload.wikimedia.org/wikipedia/en/8/80/Button_upper_letter.png',
'speedTip': 'Apice',
'tagOpen': '<sup>',
'tagClose': '</sup>',
'sampleText': 'Inserire qui il testo'
};
var pulsanteAPU = {
'imageFile': 'https://static.miraheze.org/nonciclopediawiki/0/0a/Button_sad.png',
'speedTip': 'Articolo poco umoristico',
'tagOpen': '{{Accusa|accusa=APU|firma=--~~' + '~~}' + '}\n\n',
'tagClose': '',
'sampleText': ''
};
var pulsanteBarrato = {
'imageFile': 'https://upload.wikimedia.org/wikipedia/en/c/c9/Button_strike.png',
'speedTip': 'Barrato',
'tagOpen': '{{s|',
'tagClose': '}' + '}',
'sampleText': 'Inserire qui il testo'
};
var pulsanteBig = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/5/56/Button_big.png',
'speedTip': 'Grande',
'tagOpen': '{{Dimensione|125%|',
'tagClose': '}' + '}',
'sampleText': 'Inserisci qui il testo'
};
var pulsanteBTA = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/3/34/Button_MrX.png',
'speedTip': 'Battute tra amici',
'tagOpen': '{{Cancellazione|motivo=BTA|firma=--~~' + '~~}' + '}\n\n',
'tagClose': '',
'sampleText': ''
};
var pulsanteCancellazione = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/0/0c/Button_Chuck.png',
'speedTip': 'Cancellazione immediata (USARE CON CAUTELA!)',
'tagOpen': '{{Cancellazione|motivo=',
'tagClose': '|firma=--~~' + '~~}' + '}\n\n',
'sampleText': 'Inserire qui il motivo'
};
var pulsanteCarattere = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/8/8c/Bottone_Carattere.png',
'speedTip': 'Carattere',
'tagOpen': '{{Carattere|Tipo di carattere|dim%|',
'tagClose': '|#colore}}',
'sampleText': 'testo'
};
var pulsanteCassetto = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/3/38/Button_cassetto.png',
'speedTip': 'Cassetto',
'tagOpen': '{{Cassetto|titolo=Titolo cassetto|testo=',
'tagClose': '}}',
'sampleText': 'Inserire qui il testo'
};
var pulsanteCatImg = {
'imageFile': '',
'speedTip': 'Categoria immagini',
'tagOpen': '[[Categoria:Immagini ',
'tagClose': ']]',
'sampleText': ''
};
var pulsanteCC = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/0/04/Button_Creative_Commons.png',
'speedTip': 'Creative Commons',
'tagOpen': '{{Creative Commons|by=y|nc=y|sa=y|versione=3.0}' + '}\n',
'tagClose': '',
'sampleText': ''
};
var pulsanteCensura = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/2/20/Button_censura2.png',
'speedTip': 'Censura',
'tagOpen': '{{Censura|',
'tagClose': '}}',
'sampleText': 'testo da censurare'
};
var pulsanteCit2 = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/6/6f/Button_cit2.png',
'speedTip': 'Citazione 2',
'tagOpen': '{{Cit2|',
'tagClose': '}}\n',
'sampleText': 'Inserire qui la citazione'
};
var pulsanteCitnec = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/f/f6/Button_Citnec.png',
'speedTip': 'Citazione necessaria',
'tagOpen': '{{Citnec|',
'tagClose': '}}',
'sampleText': 'Inserire qui la citazione'
};
var pulsanteColonne = {
'imageFile': 'https://images.wikia.nocookie.net/__cb20100806112827/nonciclopedia/images/1/15/Button_colonne.png',
'speedTip': 'Testo in colonne',
'tagOpen': '{{Colonne|col=2|',
'tagClose': '}}\n',
'sampleText': 'Inserire qui il testo per le colonne'
};
var pulsanteColore = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/0/0f/Bottone_colore.png',
'speedTip': 'Colore',
'tagOpen': '{{Colore|#Codice esadecimale|',
'tagClose': '}}',
'sampleText': 'testo da colorare'
};
var pulsanteDimensione = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/2/2f/Bottone_dimensione.png',
'speedTip': 'Dimensione',
'tagOpen': '{{Dimensione|dim%|',
'tagClose': '}}',
'sampleText': 'testo'
};
var pulsanteFormattazione1 = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/d/d6/E%27fiamme.png',
'speedTip': 'Formattazione',
'tagOpen': '{{Formattazione|note=',
'tagClose': '|firma=--~~' + '~~}' + '}\n\n',
'sampleText': 'Inserire qui cosa fare'
};
var pulsanteFormattazione2 = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/e/e1/E%27mat.png',
'speedTip': 'Formattazione',
'tagOpen': '{{Formattazione|note=',
'tagClose': '|firma=--~~' + '~~}' + '}\n\n',
'sampleText': 'Inserire qui cosa fare'
};
var pulsanteGallery = {
'imageFile': 'https://images.wikia.nocookie.net/central/images/1/12/Button_gallery.png',
'speedTip': 'Galleria di immagini',
'tagOpen': '\n<gallery>\n',
'tagClose': '\n</gallery>\n',
'sampleText': 'File:Example.jpg|Caption1\nFile:Example.jpg|Caption2'
};
var pulsanteManuali = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/f/fe/Bottone_Man.png',
'speedTip': 'Link ai manuali',
'tagOpen': '{{Man|',
'tagClose': '}}',
'sampleText': 'Manuale (iniziale)'
};
var pulsanteNomedimmerda = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/3/33/Sguardone.png',
'speedTip': 'Immagine da rinominare ',
'tagOpen': '{{Nomedimmerda|scadenza={{subst:7g}' + '}|motivo=',
'tagClose': '|firma=--~~' + '~~}' + '}\n\n',
'sampleText': 'Inserisci un suggerimento'
};
var pulsantePedice = {
'imageFile': 'http://upload.wikimedia.org/wikipedia/en/7/70/Button_lower_letter.png',
'speedTip': 'Pedice',
'tagOpen': '<sub>',
'tagClose': '</sub>',
'sampleText': 'Inserire qui il testo'
};
var pulsanteRedirect = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/7/73/Bottone_redirect.png',
'speedTip': 'Redirect',
'tagOpen': '#REDIRECT [[',
'tagClose': ']]',
'sampleText': 'Nome pagina'
};
var pulsanteReflink = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/6/6e/Bottone_reflink.png',
'speedTip': 'Inserisci la nota nel testo',
'tagOpen': '<ref>',
'tagClose': '</ref>',
'sampleText': 'Inserisci qui il testo della nota'
};
var pulsanteRestauro = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/6/6c/Button_restauro.png',
'speedTip': 'Articolo da sistemare',
'tagOpen': '{{Restauro|motivo=',
'tagClose': '|firma=--~~' + '~~}' + '}\n\n',
'sampleText': 'Inserire qui la descrizione'
};
var pulsanteRiquadro1 = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/f/f9/Button_box.png',
'speedTip': 'Box',
'tagOpen': '{{Riquadro\n|larghezza=\n|colore-sfondo=\n|colore-testo=\n|colore-bordo=\n|spessore-bordo=\n|testo=\n|file-sx=\n|largh-file-sx=\n|file-dx=\n|largh-file-dx=\n}' + '}\n',
'tagClose': '',
'sampleText': ''
};
var pulsanteRiquadro2 = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/f/f9/Button_box.png',
'speedTip': 'Box',
'tagOpen': '{{Riquadro\n|classe=\n|larghezza=\n|colore-sfondo=\n|colore-testo=\n|colore-bordo=\n|stile-bordo=\n|spessore-bordo=\n|stile-riquadro=\n|testo=\n|file-sx=\n|largh-file-sx=\n|file-dx=\n|largh-file-dx=\n}' + '}\n',
'tagClose': '',
'sampleText': ''
};
var pulsanteScadenza = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/a/a5/Button_Samara.png',
'speedTip': 'Articolo in scadenza',
'tagOpen': '{{Scadenza|scadenza=' + '{{subst:7g}' + '}|note=',
'tagClose': '|firma=--~~' + '~~}' + '}\n\n',
'sampleText': 'Note'
};
var pulsanteSmall = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/5/58/Button_small.png',
'speedTip': 'Piccolo',
'tagOpen': '{{Dimensione|80%|',
'tagClose': '}' + '}',
'sampleText': 'Inserisci qui il testo'
};
var pulsanteSottolineato = {
'imageFile': 'https://images.wikia.nocookie.net/nonciclopedia/images/f/fd/Button_underline.png',
'speedTip': 'Sottolineato',
'tagOpen': '{{u|',
'tagClose': '}' + '}',
'sampleText': 'Inserire qui il testo'
};
var pulsanteTabella = {
'imageFile': 'https://upload.wikimedia.org/wikipedia/en/6/60/Button_insert_table.png',
'speedTip': 'Tabella',
'tagOpen': '{| class="wikitable"\n|-\n',
'tagClose': '\n|}\n',
'sampleText': '!| header 1\n!| header 2\n!| header 3\n|-\n|| riga 1, cella 1\n|| riga 1, cella 2\n|| riga 1, cella 3\n|-\n|| riga 2, cella 1\n|| riga 2, cell1 2\n|| riga 2, cella 3'
};
var pulsanteVideo = {
'imageFile': 'https://images.wikia.nocookie.net/__cb20100915172123/nonciclopedia/images/f/ff/Bottone_video.png',
'speedTip': 'Inserisci un video - Per i parametri aggiuntivi leggi la pagina del template',
'tagOpen': '{{YoutubeVideo|',
'tagClose': '}' + '}',
'sampleText': 'Inserisci qui il codice del video'
};
var pulsanteEvidenzia = {
"imageFile": "https://images.wikia.nocookie.net/__cb20140408123004/nonciclopedia/images/b/b5/Bottone_evidenziatore.png",
"speedTip": "Evidenziatore",
"tagOpen": "{{Evidenzia|giallo|",
"tagClose": "}}",
"sampleText": "Testo"
};