Wikipedia:Monobook.js/MonobookCompleto.js/Monobook: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
funzione esportata
Sostituisco con avviso. Non cancello perché il codice originale è nella crono di questa pagina.
 
(5 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1:
// Pagina mantenuta per la sola cronologia. Lo script è stato incorporato in [[Wikipedia:Monobook.js/MonobookCompleto.js]] e [[Wikipedia:Monobook.js/MonobookCompleto.js/Toolbar.js]]
/* <source lang="javascript"> */
importScript('Wikipedia:Monobook.js/MonobookCompleto.js/Toolbar.js');
/** VARIABILI GLOBALI **/
arrayMonitoraggioStringhe = new Array(" ", "Abruzzo", "Acronimi",
"Acquariofilia", "Africa", "Alatri", "Alpinismo", "Altomilanese",
"Amministrazioni", "Anarchia", "Anime e manga", "Antifascismo", "Antroponimi",
"Apicoltura", "Apple", "Archeologia", "Archeologia/Vicino Oriente Antico",
"Architettura", "Aree protette", "Arte e media", "Arte", "AS Roma",
"Astronomia", "Astronomia/Asteroidi", "Aviazione", "Aviazione/Elicotteri",
"Bari", "Basilicata", "Benevento", "Bio", "Bio/Enzimi", "Biografie",
"Birmania", "Bisanzio", "Comuni brasiliani", "Brianza", "Buddismo",
"Cagliari", "Calabria", "Cartoons", "Catania", "Catanzaro", "Cattolicesimo",
"Cerignola", "Chimica", "Ciclo dell'eredità", "Cina", "Cinema", "Cinema/Film",
"Cinema/Film horror", "Cucina", "Cucina/Birre", "Cucina/Pane, pizza e pasta",
"Cucina/Vini DOC", "Danza", "Dialetti d'Italia", "Disney",
"Disturbi psichici", "Dragonlance", "Ecologia", "Economia", "Editoria",
"Emilia e Romagna", "Europa", "Fantasy", "Fascismo", "Fiction TV",
"Filosofia", "Firenze", "Fisica", "Font", "Forme di vita",
"Forme di vita/Artropodi", "Forme di vita/Cavallo", "Forme di vita/Funghi",
"Forme di vita/Mammiferi", "Forme di vita/Pesci", "Forme di vita/Piante",
"Forme di vita/Uccelli", "Fotografia", "Frosinone", "Fumetti", "Genova",
"Geografia", "Geografia/Comuni", "Geografia/Frazioni", "Giappone",
"Giochi di ruolo", "Guerra", "Guerre Stellari", "Harry Potter", "Immaginario",
"Informatica", "Informatica/Software libero", "Ingegneria",
"La storia infinita", "Lazio", "Letteratura", "Liguria", "Lingua latina",
"Lingue", "Linguistica", "Lombardia", "Manutenzione", "Marche", "Matematica",
"Medicina", "Meteorologia", "Mitologia", "Moda", "Montagne", "Musei",
"Musica", "Musica/Blues", "Musica/Classica", "Musica/Elettronica",
"Musica/Heavy metal", "Musica/Hip hop", "Musica/Jazz", "Musica/Progressive",
"Musica/Punk", "Musica/Rock", "Napoli", "Narnia", "Natale", "Nautica",
"Nazismo", "Numismatica", "Omosessualità", "Padova", "Palermo", "PK",
"Piemonte", "Pisa", "Pokémon", "Politica", "Prato", "Premi Nobel",
"Psicologia", "Puglia", "Qualità", "Radiantismo", "Reggio Calabria",
"Religione", "Religione/Buddismo", "Religione/Cattolicesimo",
"Religione/Diocesi", "Religione/Divinazione",
"Religione/Documenti della Chiesa Cattolica", "Religione/Gesù",
"Religione/Mormonismo", "Religione/Neopaganesimo", "Religione/Santi", "Roma",
"Russia", "San Marino", "Sardegna", "Scacchi", "Scienze della Terra", "Scout",
"Sicilia", "Sitcom animate", "Sociologia", "Sport", "Sport/Calcio",
"Sport/Calcio a 5", "Sport/Ciclismo", "Sport/F1", "Sport/Olimpiadi",
"Sport/Pallacanestro", "Sport/Pallavolo", "Sport/Rugby",
"Sport/Sport invernali", "Star Trek", "Stargate", "Stati", "Storia",
"Storia/Antica Roma", "Storia/Longobardi", "Storia/Storia antica",
"Storia/Storia contemporanea", "Storia/Storia medievale",
"Storia/Storia moderna", "Subacquea", "Svizzera", "Teatro", "Televisione",
"Tolkien", "Torino", "Toscana", "Trasporti", "Umbria", "Veneto",
"Venezia e Laguna", "Vessillologia", "Vicenza", "Videogiochi", "Voci comuni",
"Warhammer", "WikiAfrica", "Wikilex", "Wrestling");
 
arrayMonitoraggioCodici = new Array(" ", "Abruzzo", "Acquariofilia", "Acronimi",
"Africa", "Alatri", "Alpinismo", "Altomilanese", "Amministrazioni",
"Anarchia", "Anime e manga", "Antifascismo", "Antroponimi", "Apicoltura",
"Apple", "Archeologia", "Vicino Oriente Antico", "Architettura",
"Aree protette", "Arte e media", "Arte", "AS Roma", "Astronomia", "Asteroidi",
"Aviazione", "Elicotteri", "Bari", "Basilicata", "Benevento", "Bio", "Enzimi",
"Biografie", "Birmania", "Birra", "Bisanzio", "Brasile", "Brianza",
"Buddismo", "Cagliari", "Calabria", "Cartoons", "Catania", "Catanzaro",
"Cattolicesimo", "Cerignola", "Chimica", "Ciclo dell'eredità", "Cina",
"Cinema", "Film", "Film horror", "Cucina", "Birre", "Pane, pizza e pasta",
"Vini DOC", "Danza", "Dialetti d'Italia", "Walt Disney", "Disturbi psichici",
"Dragonlance", "Ecologia", "Economia", "Editoria", "Emilia e Romagna",
"Europa", "Fascismo", "Fiction TV", "Filosofia", "Firenze", "Fisica", "Font",
"Forme di vita", "Artropodi", "Cavallo", "Funghi", "Mammiferi", "Pesci",
"Piante", "Uccelli", "Fotografia", "Frosinone", "Fumetti", "Geografia",
"Comuni", "Frazioni e località italiane", "Genova", "Giappone",
"Giochi di ruolo", "Guerra", "Guerre Stellari", "Harry Potter", "Immaginario",
"Informatica", "Software libero", "Ingegneria", "La storia infinita", "Lazio",
"Letteratura", "Liguria", "Lingua latina", "Lingue", "Linguistica",
"Lombardia", "Manutenzione", "Marche", "Matematica", "Medicina", "Mitologia",
"Moda", "Montagne", "Musei", "Musica", "Blues", "Classica", "Elettronica",
"Heavy metal", "Hip hop", "Jazz", "Progressive", "Punk", "Rock", "Napoli",
"Narnia", "Natale", "Nautica", "Nazismo", "Neuroscienze", "Numismatica",
"Omosessualità", "Padova", "Palermo", "PK", "Piemonte", "Pisa", "Pokémon",
"Politica", "Prato", "Premi Nobel", "Psicologia", "Puglia", "Qualità",
"Radiantismo", "Reggio Calabria", "Religione", "Buddismo", "Cattolicesimo",
"Diocesi", "Divinazione", "Documenti della Chiesa Cattolica", "Gesù",
"Mormonismo", "Neopaganesimo", "Santi", "Roma", "Russia", "San Marino",
"Sardegna", "Scacchi", "Scienze della Terra", "Scout", "Sicilia",
"Sitcom animate", "Sociologia", "Sport", "Calcio", "Calcio a 5", "Ciclismo",
"F1", "Olimpiadi", "Pallacanestro", "Pallavolo", "Rugby", "Sport invernali",
"Star Trek", "Stargate", "Stati", "Storia", "Antica Roma", "Longobardi",
"Storia antica", "Storia contemporanea", "Storia medievale", "Storia moderna",
"Subacquea", "Svizzera", "Teatro", "Televisione", "Tolkien", "Torino",
"Toscana", "Trasporti", "Umbria", "Veneto", "Venezia e Laguna",
"Vessillologia", "Vicenza", "Videogiochi", "Voci comuni", "Warhammer",
"WikiAfrica", "Wikilex", "Wrestling");
 
/**** Carica le funzioni personalizzate ****/
 
//Crea il menu' a tendina sopra alla toolbar
function creaTendina() {
var tendina = document.createElement('select');
tendina.name = 'popupSelect';
tendina.id = 'tendina';
tendina.size = 1;
 
// Label "Altri pulsanti: "
var paragraph = document.createElement('span');
paragraph.id = 'labelTendina';
var labelTendina = document.createTextNode('Altri pulsanti: ');
paragraph.appendChild(labelTendina);
paragraph.appendChild(tendina);
 
// crea il primo bottone "OK"
var button1 = document.createElement('input');
button1.value = 'OK';
button1.type = 'button';
// il comando dipende dal browser utilizzato
// Per ora e' stato testato solo con Firefox2 ed IE6. In caso di problemi fare riferimento alla
// dichiarazione di "BrowserDetect", in cima allo script, per avere la lista dei browser
// supportati e dei metodi di calcolo degli stessi
if (BrowserDetect.browser == "Firefox" || BrowserDetect.browser == "Mozilla" ||
BrowserDetect.browser == "Netscape")
button1.setAttribute('onclick', 'tendinaAzione1()');
else
//if (BrowserDetect.browser=="Explorer") commentato per farlo funzionare con gli altri browser
button1.onclick = tendinaAzione1;
paragraph.appendChild(button1);
 
// Aggiunge un line break prima della toolbar, per evitare problemi allineamento in caso di molte immagini
var lineBreak = document.createElement('span');
lineBreak.innerHTML = "<br clear=all>";
document.getElementById("toolbar").parentNode.insertBefore(lineBreak, document
.getElementById("toolbar"));
 
// Appende la prima tendina sopra la toolbar
document.getElementById("toolbar").parentNode.insertBefore(paragraph, document
.getElementById("toolbar"));
 
var tendina2 = document.createElement('select');
tendina2.name = 'popupSelect';
tendina2.id = 'tendina2';
tendina2.size = 1;
 
// Label "Pulsanti personali: "
var paragraph2 = document.createElement('span');
var labelTendina2 = document.createTextNode('Pulsanti personali: ');
paragraph2.style.margin = '10px';
paragraph2.appendChild(labelTendina2);
paragraph2.appendChild(tendina2);
paragraph2.id = 'labelTendina2';
 
// crea il secondo bottone "OK"
var button2 = document.createElement('input');
button2.value = 'OK';
button2.i = 'OK2';
button2.type = 'button';
// il comando dipende dal browser utilizzato
// Per ora e' stato testato solo con Firefox2 ed IE6. In caso di problemi fare riferimento alla
// dichiarazione di "BrowserDetect", in cima allo script, per avere la lista dei browser
// supportati e dei metodi di calcolo degli stessi
if (BrowserDetect.browser == "Firefox" || BrowserDetect.browser == "Mozilla" ||
BrowserDetect.browser == "Netscape")
button2.setAttribute('onclick', 'tendinaAzione2()');
else
//if (BrowserDetect.browser=="Explorer") commentato per farlo funzionare con gli altri browser
button2.onclick = tendinaAzione2;
paragraph2.appendChild(button2);
 
// Aggiunge l'help
var labelTendinaCome = document.createElement('a');
labelTendinaCome.style.margin = '10px';
labelTendinaCome.href =
'javascript:var code1 = getpagecontent("Wikipedia:Monobook.js/Pulsanti_personali.js"); if(code1) eval(code1);';
labelTendinaCome.appendChild(document.createTextNode('Aggiungi altri pulsanti'));
paragraph2.appendChild(labelTendinaCome);
 
// Appende la seconda tendina sopra la toolbar
document.getElementById("toolbar").parentNode.insertBefore(paragraph2,
document.getElementById("toolbar"));
}
 
function caricaTendinaPersonale() {
if (typeof (myButtons) == 'undefined')
return;
 
var tendina = document.getElementById("tendina2");
 
for (i = 0; i < myButtons.length; i++) {
// Aggiusto il carattere a capo '\n'
while (myButtons[i][1].indexOf("\\n") != -1) {
temp = myButtons[i][1].substr(0, myButtons[i][1].indexOf("\\n"));
temp += '\n';
temp += myButtons[i][1].substr(myButtons[i][1].indexOf("\\n") + 2);
myButtons[i][1] = temp;
}
 
while (myButtons[i][1].indexOf("\\n") != -1) {
temp = myButtons[i][2].substr(0, myButtons[i][2].indexOf("\\n"));
temp += '\n';
temp += myButtons[i][2].substr(myButtons[i][2].indexOf("\\n") + 2);
myButtons[i][2] = temp;
}
 
// Aggiunge l'opzione al menu'
var option = new Option(myButtons[i][3], myButtons[i]);
tendina.options[tendina.options.length] = option;
}
}
 
//Aggiunge un'opzione alla tendina della toolbar
function addToTendina(type, before, after, text, offset) {
var tendina = document.getElementById("tendina");
 
// Aggiunge l'opzione al menu'
var elemento = new Array(type, before, after, text, offset);
var option = new Option(text, elemento);
tendina.options[tendina.options.length] = option;
}
 
// aggiungi tutti i bottoni alla toolbar
$(oldToolbarButtons);
 
function HelpHotkeys() {
var text = "";
var counter = 0;
 
for (codice in pulsantiHotkey)
if (pulsantiHotkey[codice] != '')
text += pulsantiDescr[codice] + " = Alt+" + pulsantiHotkey[codice] + '\n';
 
alert(text);
}
 
/* Aggiorna la lista degli hotkeys */
$(function () {
// modifica gli hotkeys di default in base a quanto scelto dall'utente
if (typeof (tastiHotkeys) != "undefined")
for (tasto in tastiHotkeys) {
// vietato usare lo stesso codice per 2 pulsanti diversi
for (tasto2 in pulsantiHotkey)
if (pulsantiHotkey[tasto2] == tastiHotkeys[tasto])
pulsantiHotkey[tasto2] = '';
 
// assegna il valore scelto dall'utente
pulsantiHotkey[tasto] = tastiHotkeys[tasto];
}
 
// Aggiungi gli hotkeys creati dall'utente
if (typeof (pulsantiHotkeyPers) == "undefined")
return;
else
for (pulsante in pulsantiHotkeyPers) {
// vietato usare lo stesso codice per 2 pulsanti diversi
for (pulsante2 in pulsantiHotkey)
if (pulsantiHotkey[pulsante2] == pulsantiHotkeyPers[pulsante])
pulsantiHotkey[pulsante2] = '';
 
// assegna il valore scelto dall'utente
pulsantiHotkey[pulsante] = pulsantiHotkeyPers[pulsante];
pulsantiComando[pulsante] = pulsantiComandoPers[pulsante];
if (typeof (pulsantiDescrPers) != "undefined")
pulsantiDescr[pulsante] = pulsantiDescrPers[pulsante];
}
});
 
/* Catch di hotkeys + speedy google search*/
function catchHotkeys() {
if (BrowserDetect.browser == "Firefox" || BrowserDetect.browser == "Mozilla" ||
BrowserDetect.browser == "Netscape") {
var listenerKeyPress = function (e) {
e = (e) ? e : ((window.event) ? window.event : null);
if (e && e.altKey && !e.shiftKey && !e.ctrlKey) {
var toCheckNum = (e.which) ? e.which : e.keyCode;
var toCheck = String.fromCharCode(toCheckNum);
 
for (x in pulsantiHotkey) {
if (pulsantiHotkey[x].toUpperCase() == toCheck.toUpperCase())
eval(pulsantiComando[x]);
}
 
//Fermo il propagarsi degli eventi
e.stopPropagation();
//Cancello l'azione di default
e.preventDefault();
 
return false;
}
}
 
wpTextbox1 = document.getElementById("wpTextbox1");
if (wpTextbox1 != null) {
if (wpTextbox1.addEventListener)
wpTextbox1.addEventListener('keypress', listenerKeyPress, true); //Non-IE
else
wpTextbox1.onkeypress = listenerKeyPress;
}
wpUploadDescription = document.getElementById("wpUploadDescription");
if (wpUploadDescription != null) {
if (wpUploadDescription.addEventListener)
wpUploadDescription.addEventListener('keypress', listenerKeyPress, true); //Non-IE
else
wpUploadDescription.onkeypress = listenerKeyPress;
}
}
var listenerMouseUp = function (e) {
e = (e) ? e : ((window.event) ? window.event : null);
if (e && e.ctrlKey) {
if (navigator.appName == 'Microsoft Internet Explorer' && navigator.userAgent
.indexOf("Opera") == -1) //IE
var t = document.selection.createRange().text;
else //Non-IE
var t = document.getSelection ? document.getSelection().toString() :
window.getSelection().toString();
t = t.replace(/^\s+/, '').replace(/\s+$/, ''); //trim
var q = t.indexOf('"') == -1 ? '"' : '';
if (t)
window.open("http://www.google.com/search?q=" + q + encodeURIComponent(t) +
q);
}
}
 
if (window.addEventListener)
window.addEventListener('mouseup', listenerMouseUp, false); //Non-IE
else
document.onmouseup = listenerMouseUp; //IE
}
$(catchHotkeys);
 
// </source>