Utente:Jalo/monobook.js: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
test marco27
Riga 1:
//<source lang=javascript>
//<pre>
//Questa variabile contiene il nome del browser utilizzato. Molto utile per evitare problemi
// Elenco dei tool da caricare.
// di incompatibilita' tra la varie funzioni Javascript
// Si autovalorizza. Le sottovariabili da usare sono "BrowserDetect.browser", "BrowserDetect.version"
// e "BrowserDetect.OS"
var BrowserDetect = {
init: function () {
this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
this.version = this.searchVersion(navigator.userAgent)
|| this.searchVersion(navigator.appVersion)
|| "an unknown version";
this.OS = this.searchString(this.dataOS) || "an unknown OS";
},
searchString: function (data) {
for (var i=0;i<data.length;i++) {
var dataString = data[i].string;
var dataProp = data[i].prop;
this.versionSearchString = data[i].versionSearch || data[i].identity;
if (dataString) {
if (dataString.indexOf(data[i].subString) != -1)
return data[i].identity;
}
else if (dataProp)
return data[i].identity;
}
},
searchVersion: function (dataString) {
var index = dataString.indexOf(this.versionSearchString);
if (index == -1) return;
return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
},
dataBrowser: [
{ string: navigator.userAgent,
subString: "OmniWeb",
versionSearch: "OmniWeb/",
identity: "OmniWeb"
},
{
string: navigator.vendor,
subString: "Apple",
identity: "Safari"
},
{
prop: window.opera,
identity: "Opera"
},
{
string: navigator.vendor,
subString: "iCab",
identity: "iCab"
},
{
string: navigator.vendor,
subString: "KDE",
identity: "Konqueror"
},
{
string: navigator.userAgent,
subString: "Firefox",
identity: "Firefox"
},
{
string: navigator.vendor,
subString: "Camino",
identity: "Camino"
},
{ // for newer Netscapes (6+)
string: navigator.userAgent,
subString: "Netscape",
identity: "Netscape"
},
{
string: navigator.userAgent,
subString: "MSIE",
identity: "Explorer",
versionSearch: "MSIE"
},
{
string: navigator.userAgent,
subString: "Gecko",
identity: "Mozilla",
versionSearch: "rv"
},
{ // for older Netscapes (4-)
string: navigator.userAgent,
subString: "Mozilla",
identity: "Netscape",
versionSearch: "Mozilla"
}
],
dataOS : [
{
string: navigator.platform,
subString: "Win",
identity: "Windows"
},
{
string: navigator.platform,
subString: "Mac",
identity: "Mac"
},
{
string: navigator.platform,
subString: "Linux",
identity: "Linux"
}
]
 
};
var myButtons = new Array([2,'{{WIP|Jalo}}\\n{{UNESCO\\n|tipoBene = patrimonio\\n|nome = \\n|nomeInglese = \\n|immagine = \\n|anno = \\n|tipologia = Culturali\\n|pericolo= \\n|criterio = (i) (ii) (iii) (iv) (v) (vi) (vii) (viii) (ix) (x) (xi) (xii)\\n|link = \\n|stato = \\n|linkCategoria= \\n}}\\n','','UNESCO tpl',245,''],[2,'{{WIP|Jalo}}\\n{{coord||display=title}}\\n{{UNESCO\\n|tipoBene = patrimonio\\n|nome = \\n|nomeInglese = \\n|immagine = \\n|anno = \\n|tipologia = Culturali\\n|pericolo= \\n|criterio = (i) (ii) (iii) (iv) (v) (vi) (vii) (viii) (ix) (x) (xi) (xii)\\n|link = \\n|stato = \\n|linkCategoria= \\n}}\\n\\n\\n==Collegamenti esterni==\\n\\n*[http://whc.unesco.org/en/list/ Scheda UNESCO]\\n\\n{{Patrimoni Unesco|}}\\n\\n[[Categoria:Patrimoni dell\'umanità in ]]\\n','','UNESCO voce',0,''],[2,'{{Bio\\n|Titolo = \\n|Nome = \\n|Cognome = \\n|PostCognome = \\n|ForzaOrdinamento = \\n|Sesso = \\n|LuogoNascita = \\n|GiornoMeseNascita = \\n|AnnoNascita = \\n|LuogoMorte = \\n|LuogoMorteLink = \\n|GiornoMeseMorte = \\n|AnnoMorte = \\n|Attività = \\n|Nazionalità = \\n|PostNazionalità =\\n|Immagine = \\n|Didascalia =\\n|FineIncipit = \\n|Categorie = \\n}}','','Bio',315,''],[2,'{{Conflitto\\n|nome del conflitto = \\n|parte_di = \\n|immagine = \\n|didascalia = \\n|data = \\n|luogo = \\n|casus = \\n|mutamenti_territoriali = \\n|esito = \\n|schieramento1 = \\n|schieramento2 = \\n|comandante1 = [[Immagine:White flag icon.svg|16px]]\\n|comandante2 = \\n|effettivi1 = \\n|effettivi2 = \\n|perdite1 = \\n|perdite2 = \\n|perdite3 = \\n|note = \\n}}\\n{{Campagnabox conquista spagnola del Perù}}\\n{{Campagnabox Arauco}}\\n{{Campagnabox Guerra civile Inca}}\\n','','Conflitto',0,''],[2,'{{Box successione\\n|carica = \\n|immagine = \\n|periodo = \\n|precedente = \\n|successivo = \\n}}','','Box successione',92,'']);
BrowserDetect.init();
 
function fullescape(text)
var myLinks = new Array(['Voce su en.wiki','http://en.wikipedia.org/wiki/%TITOLO%'],['Voce su Commons','http://commons.wikimedia.org/wiki/Image:%TITOLO2%'],['Vecchio Edit-count','http://tools.wikimedia.de/~interiot/cgi-bin/count_edits?user=Jalo&dbname=itwiki_p'],['Bold / No bold','javascript:bolda();'],['Logo / No logo','javascript:noLogo();']);
{
return escape(text).replace(/\+/g,"%2B");
}
 
// Grazie a [[:en:User:Topaz]]
// Firefox
function xmlhttpreq()
var toLoad = "purg led ns0 lks tabs mjs sand admin bot requi uec log whois unw allp wiki stu voto canc caut bpar edw wip sot small bar case fat nfat cwtch popup nms qed since edt vfol linkcomplete lrc elrc";
{
if (window.XMLHttpRequest)
xmlhttpobj = new XMLHttpRequest()
else
{
try
{
xmlhttpobj = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
xmlhttpobj = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e)
{
xmlhttpobj = null;
}
}
}
return xmlhttpobj;
}
 
// Grazie a [[:en:User:Topaz]]
var nomeBot="JaloBot";
function doreq(url,postdata,headers)
{
var req = xmlhttpreq();
req.open(postdata?"POST":"GET", url, false);
for(header in headers)
req.setRequestHeader(header,headers[header]);
req.send(postdata||null);
return req;
}
 
// Grazie a [[:en:User:Topaz]]
function setpagecontent(pagename,content,summary,watch)
{
var prelimresp = doreq("/w/index.php?title="+pagename+"&action=submit");
var edittime = prelimresp.responseText.match(/\<input type='hidden' value="(\d+)" name="wpEdittime" \/\>/)[1];
var edittoken = prelimresp.responseText.match(/\<input type='hidden' value="([^"]+)" name="wpEditToken" \/\>/)[1];
doreq("/w/index.php?title="+pagename+"&action=submit",
"wpEdittime="+edittime+
"&wpEditToken="+fullescape(edittoken)+
"&wpTextbox1="+encodeURIComponent(content)+
"&wpSummary="+escape(summary)+
(watch?"&wpWatchthis=on":"")+
"&wpSection=&wpSave=Save+page",
{"Content-Type":"application/x-www-form-urlencoded"});
}
 
// Grazie a [[:en:User:Topaz]]
//Lancia il vero monobook
function getpagecontent(pagename)
// Vedi [[Wikipedia:Monobook.js/MonobookCompleto.js]]
{
//
var req = doreq("/w/index.php?title="+pagename+"&action=edit");
document.writeln('<script type="text/javascript" src="/w/index.php?title=Wikipedia:Monobook.js/MonobookCompleto.js&action=raw&ctype=text/javascript&dontcountme=s"></script>');
var content = req.responseText.match(/\<textarea[\w\W]*?\>([\w\W]*?)\<\/textarea\>/)[1];
content = content.replace(/\&lt\;/gi, "<");
content = content.replace(/\&gt\;/gi, ">");
content = content.replace(/\&quot\;/gi, "\"");
content = content.replace(/\&amp\;/gi, "&");
return content;
}
 
// Recupera il valore di un cookie
//JUST FOR DEBUG
function GetCookie(name)
//document.writeln('<script type="text/javascript" src="/w/index.php?title=Utente:Jalo/monobook.js/test&action=raw&ctype=text/javascript&dontcountme=s"></script>');
{
var cookie = ' ' + document.cookie;
var search = ' ' + name + '=';
var setStr = '';
var offset = 0;
var end = 0;
offset = cookie.indexOf(search);
if (offset != -1)
{
offset += search.length;
end = cookie.indexOf(';', offset)
if (end == -1)
end = cookie.length;
setStr = cookie.substring(offset, end);
setStr = setStr.replace(/\\+/g, ' ');
setStr = decodeURIComponent(setStr);
}
return(setStr);
}
 
// Setta il valore di un cookie
function SetCookie(name, value, expires, path, ___domain, secure)
{
var cookie = name + '=' + encodeURIComponent(value);
if (expires != null)
cookie += '; expires=' + expires
if (path != null)
cookie += '; path=' + path;
if (___domain != null)
cookie += '; ___domain=' + ___domain;
if (secure != null)
cookie += '; secure';
document.cookie = cookie;
}
 
// Crea un nuovo portlet e lo aggiunge dopo "strumenti"
function createPortlet(id,title)
{
var newPortlet = document.createElement('div');
newPortlet.innerHTML = "<div class='portlet' id='"+id+"'><h5>"+title+"</h5><div class='pBody'><ul></ul></div>";
document.getElementById("p-tb").parentNode.insertBefore(newPortlet, document.getElementById("p-tb").nextSibling);
}
 
//Aggiunge qualcosa ad un portlet.
//CONFIGURAZIONE POPUP
//PARAMS:
popupDelay = 2; // aspetta 2 secondi
//* id: id del portlet.
popupRedlinkRemoval = true; // elimina i collegamenti a link rossi
//* obj: L'oggetto da aggiungere
popupQueriedRevertSummary = "Rollback da popup. Ripristinata la versione di $3";
function addToPortlet(id, obj)
popupRedlinkSummary = "Eliminato link rosso: %s";
{
popupOnEditSelection = false;
var f = document.getElementById(id);
 
f = f.getElementsByTagName("div")[0];
//Mostra i Tatoo
f.appendChild(obj);
document.writeln('<script type="text/javascript" src="/w/index.php?title=Utente:Jalo/Tatoo&action=raw&ctype=text/javascript&dontcountme=s"></script>');
}
 
//Elimina un Node
//TASTI PERSONALI
addLoadEvent ( function RemoveNode(id)
{
if (var node = document.title.indexOfgetElementById("Modifica") == -1id);
node.parentNode.removeChild(node);
return;
}
addToolbarButton('tb-firma', 'javascript:addTextAtCursor("~~~~","","",4)',
'http://upload.wikimedia.org/wikipedia/commons/d/d1/Button_mysignature.png', 'My sign', 'Jalo');
 
// Aggiunge un generico tab
addToolbarButton('tb-commento', 'javascript:addTextAtCursor("<!"+"--","Tolgo immagine inesistente","-->",0)',
function addlilink(tabs, url, name, id)
'http://upload.wikimedia.org/wikipedia/commons/2/23/Quotes-Lithuanian.png', 'no-img', 'Tolgo immagine inesistente');
{
var na = document.createElement('a');
na.href = url;
na.appendChild(document.createTextNode(name));
var li = document.createElement('li');
li.id = id;
li.appendChild(na);
tabs.appendChild(li);
return li;
}
 
// Aggiunge un tab come menu
daInserire = "==Cronologia precedente alla pulizia dai copyviol==\n{{cassetto\n|titolo=cronologia\n|testo=<pre>\n</pre>}}";
function addlimenu(tabs, name, id)
addToolbarButton('tb-cass', 'javascript:addText(daInserire, "Cronologia pre-pulizia copyviol", 1)',
'http://upload.wikimedia.org/wikipedia/commons/c/cd/Button_vote_deletion.png', '[pre-copyviol]', 'Cronologia pre-copyviol');
});
 
//NASCONDI IL COPYWARN SOTTO LA CASELLA DI MODIFICA
addLoadEvent ( function ()
{
if ( var na = document.getElementByIdcreateElement("editpage-copywarn")'a');
na.href = '#';
document.getElementById("editpage-copywarn").style.display="none";
var mn = document.createElement('ul');
})
na.appendChild(document.createTextNode(name));
var li = document.createElement('li');
li.id = id;
li.className = 'tabmenu';
li.appendChild(na);
li.appendChild(mn);
tabs.appendChild(li);
return li;
}
 
// recupera un parametro dall'URL
//Bolda il "wpTextbox1"
function boldagetParam(name)
{
if(___location.search)
//Inverte BOLD/NO BOLD
{
var cookieExpire = new Date(); // scadenza del cookie
for(var x in ___location.search.substring(1).split('&'))
cookieExpire.setTime(cookieExpire.getTime() + (30 * 24 * 60 * 60 * 1000)); // il cookie scade dopo un mese
{
var eq = x.indexOf('=');
if(x.substring(0, eq) == name) return x.substring(eq + 1);
}
}
return '';
}
 
function getParamValue(paramName, h) {
var boldare = GetCookie('wikiBolda');
if (boldaretypeof h == 'siundefined' )
{
SetCookie('wikiBolda', 'no', cookieExpire.toGMTString(), '/');
h = document.___location.href;
else
}
SetCookie('wikiBolda', 'si', cookieExpire.toGMTString(), '/');
var cmdRe=RegExp('[&?]'+paramName+'=([^&]*)');
var m=cmdRe.exec(h);
if (m) {
try
{
return decodeURI(m[1]);
}
catch (someError) {}
}
return null;
}
 
//Aggiunge un pulsante generico alla Toolbar
if (wgAction == "edit")
function addToolbarButton(id, href, src, alt, title)
addLoadEvent ( function ()
{
var boldaretoolbar = GetCookiedocument.getElementById('wikiBolda'"toolbar");
if (boldare!toolbar) == 'si')return;
var today = new Date();
$("wpTextbox1").style.fontWeight = "bold";
var anno= today.getYear()+1900;
})
var mese = arrayMese[today.getMonth()];
 
var tmp = document.createElement("a");
tmp.id = id;
tmp.href = href;
var imag = document.createElement("img");
imag.setAttribute('src', src);
imag.setAttribute('alt', alt);
imag.setAttribute('title', title);
tmp.appendChild(imag);
toolbar.appendChild(tmp);
}
 
//Aggiunge del testo alla pagina
//Nascondi il logo di wikipedia
//text: testo da aggiungere
function noLogo()
//summary: oggetto della modifica
//n: 0=aggiungi in cima; 1=aggiungi in coda
//offset = spostamento del cursore rispetto all'inizio del testo inserito
function addText(text, summary, n, offset)
{
// copia il frame di wikEd (http://en.wikipedia.org/wiki/User:Cacycle/wikEd.js) nella wpTextbox1 textarea
//Inverte LOGO/NO LOGO
if (typeof(wikEdUseWikEd) != 'undefined')
var cookieExpire = new Date(); // scadenza del cookie
if (wikEdUseWikEd == true)
cookieExpire.setTime(cookieExpire.getTime() + (30 * 24 * 60 * 60 * 1000)); // il cookie scade dopo un mese
WikEdUpdateTextarea();
 
wpTextbox1=document.getElementById("wpTextbox1");
var nologo = GetCookie('wikiLogo');
 
if (nologo == 'si')
//ricorda la lunghezza della pagina
SetCookie('wikiLogo', 'no', cookieExpire.toGMTString(), '/');
var lunghezza=wpTextbox1.value.length;
 
if (n == 0)
wpTextbox1.value=text + "\n" +wpTextbox1.value;
else
wpTextbox1.value=wpTextbox1.value + text;
var summ=document.getElementById("wpSummary");
if (summ)
summ.value=summ.value+summary;
 
// copia la wpTextbox1 textarea nel frame di wikEd
if (typeof(wikEdUseWikEd) != 'undefined')
if (wikEdUseWikEd == true)
WikEdUpdateFrame();
// Setta la posizione del cursore aggiungendo l'offset
if (offset == null) offset=0;
if (n == 0)
setCurPos(offset,offset);
else
{
SetCookie('wikiLogo', 'si', cookieExpire.toGMTString(), '/');
setCurPos(lunghezza+offset,lunghezza+offset);
wpTextbox1.scrollTop = 1000; //1000 pixel = goToEnd
}
}
 
//Aggiunge del testo alla pagina (nella posizione del cursore)
addLoadEvent ( function ()
//myValue: testo da aggiungere
//summary: oggetto della modifica
//myValue2: se non e' vuoto il testo diventa <myValue><testo evidenziato><myValue2>
// se e' vuoto il <testo evidenziato> viene sostituito da <myValue>
//offset: prima di uscire, di quanti caratteri devo spostare il cursore rispetto al punto di partenza?
function addTextAtCursor(myValue,summary,myValue2,offset)
{
wpTextbox1=document.getElementById("wpTextbox1");
var nologo = GetCookie('wikiLogo');
// se stiamo usando anche il wikEd sfrutto la sua funzione per la sostituzione del testo
if (nologo == 'si')
var wikEdited="no";
$("p-logo").style.display = "none";
if (typeof(wikEdUseWikEd) != 'undefined')
})
if (wikEdUseWikEd == true)
{
insertTags(myValue, myValue2, "");
wikEdSummaryText.value = wikEdSummaryText.value+summary;
wikEdited="yes";
}
 
//se e' stato usato wikEd abbiamo gia' finito
// TRADOTTO DA
if (wikEdited=="yes") return;
function addTradottoDa()
{
enArticle = getpagecontent(wgTitle);
enArticle = enArticle.substr(enArticle.indexOf("[[en:")+5);
enArticle = enArticle.substr(0,enArticle.indexOf("]]"));
 
//ricorda la posizione del cursore
var my_date = new Date();
var curPos=getCurPos();
dataOggi = my_date.getDate()+" "+arrayMese[my_date.getMonth()+1]+" "+(1900+my_date.getYear());
var selDim=0;
//IE e Opera support
addTextAtCursor("{{Tradotto da|en|"+enArticle+"|"+dataOggi+"|id}}\n~~"+"~~","+Tradotto da","",0);
if (document.selection)
{
wpTextbox1.focus();
sel = document.selection.createRange();
selDim = sel.text.length;
if (myValue2=="")
sel.text = myValue;
else
{
//la selezione partira' dalla fine del primo tag
curPos += myValue.length;
 
// piccola aggiustatina per Opera
if (BrowserDetect.browser == "Opera")
curPos -= selDim;
sel.text = myValue + sel.text + myValue2;
}
}
//MOZILLA/NETSCAPE support
else if (wpTextbox1.selectionStart || wpTextbox1.selectionStart == '0')
{
// ricorda la posizione dello scroll della textarea
var scrollTop, scrollLeft;
if (wpTextbox1.type == 'textarea' && typeof wpTextbox1.scrollTop != 'undefined')
{
scrollTop = wpTextbox1.scrollTop;
scrollLeft = wpTextbox1.scrollLeft;
}
 
var startPos = wpTextbox1.selectionStart;
var endPos = wpTextbox1.selectionEnd;
selDim = endPos - startPos;
if (myValue2=="")
{
wpTextbox1.value = wpTextbox1.value.substring(0, startPos)
+ myValue
+ wpTextbox1.value.substring(endPos, wpTextbox1.value.length);
}
else
{
curPos += myValue.length; //la selezione partira' dalla fine del primo tag
wpTextbox1.value = wpTextbox1.value.substring(0, startPos)
+ myValue + wpTextbox1.value.substring(startPos,endPos) + myValue2
+ wpTextbox1.value.substring(endPos, wpTextbox1.value.length);
}
// torna alla posizione di scroll di partenza
if (typeof scrollTop != 'undefined')
{
wpTextbox1.scrollTop = scrollTop;
wpTextbox1.scrollLeft = scrollLeft;
}
}
else
wpTextbox1.value += myValue;
 
var summ=document.getElementById("wpSummary");
if (summ)
summ.value=summ.value+summary;
// Setta la posizione del cursore aggiungendo l'offset
if (offset == null) offset=0;
setCurPos(curPos+offset,curPos+offset+selDim);
}
 
function getCurPos()
// Configurazione HOTKEYS
{
var tastiHotkeys = new Array();
wpTextbox1=document.getElementById("wpTextbox1");
tastiHotkeys["firma"] = 'F';
wpTextbox1.focus(); // altrimenti lo 'stored_range' si rifersce al testo esterno alla finestra
tastiHotkeys["cate"] = 'C';
var CaretPos = 0;
tastiHotkeys["obj"] = 'Z';
 
//Opera Support
pulsantiComandoPers = new Array();
if (BrowserDetect.browser == "Opera")
pulsantiHotkeyPers = new Array();
{
pulsantiDescrPers = new Array();
var Sel = document.selection.createRange ();
Sel.moveStart ('character', -wpTextbox1.value.length);
//PATRIMONIO
CaretPos = Sel.text.length;
pulsantiComandoPers["patrimonio"] = 'javascript:addTextAtCursor("[[patrimonio dell\'umanità|patrimoni dell\'umanità]]","","",50)';
}
pulsantiHotkeyPers["patrimonio"] = 'P';
// IE Support
pulsantiDescrPers["patrimonio"] = 'Patrimonio';
else if (document.selection)
{
// IE non possiede metodi per recuperare la posizione del cursore in una textarea
// Quello che segue e' un metodo scamuzzo creato per aggirare il problema
 
// La selezione corrente
//UNESCO
var range = document.selection.createRange();
pulsantiComandoPers["unesco"] = 'javascript:addTextAtCursor("[[Organizzazione delle Nazioni Unite per l\'Educazione, la Scienza e la Cultura|UNESCO]]","","",87)';
pulsantiHotkeyPers["unesco"] = 'U';
pulsantiDescrPers["unesco"] = 'Unesco';
 
// la usaremo ome selezine 'farlocca'
//SUP 2
var stored_range = range.duplicate();
pulsantiComandoPers["sup2"] = 'javascript:addTextAtCursor("²","","",1)';
pulsantiHotkeyPers["sup2"] = '2';
pulsantiDescrPers["sup2"] = 'Alla seconda';
 
// Seleziona tutto il testo
//CITA
stored_range.moveToElementText(wpTextbox1);
pulsantiComandoPers["cita"] = 'javascript:addTextAtCursor("<ref>{{Cita||}}</ref>","","",12)';
pulsantiHotkeyPers["cita"] = 'R';
pulsantiDescrPers["cita"] = '{{Cita}}';
 
// Ora sposta il termine del 'farlocco' al punto finale della selezione originale
//PORTALE ANTICA ROMA
stored_range.setEndPoint('EndToEnd', range);
pulsantiComandoPers["roma"] = 'javascript:addTextAtCursor("{{Portale|Antica Roma|Germani|Storia}}","","",0)';
pulsantiHotkeyPers["roma"] = 'A';
pulsantiDescrPers["roma"] = 'Portali';
 
// Ora calcola il punto iniziale e finale
//SOVRAIMMAGINE
CaretPos = stored_range.text.length - range.text.length;
pulsantiComandoPers["simm"] = 'javascript:addTextAtCursor("{{Sovraimmagine\\n | allineamento = right\\n | sotto = Germania Magna jpg.jpg\\n | sotto_larghezza = 300px\\n | sotto_didascalia = Mappa delle tribù germaniche (Nell ovale rosso gli Angrivari)\\n | sopra = Red oval.svg\\n | sopra_larghezza = 40px\\n | sopra_didascalia = Angrivari\\n | x = 80\\n | y = 55\\n}}","","",0)';
pulsantiHotkeyPers["simm"] = 'S';
pulsantiDescrPers["simm"] = 'Sovraimmagine';
 
// Il punto finale e', al momento, inutile
//INTERPROGETTO
//element.selectionEnd = element.selectionStart + range.text.length;
pulsantiComandoPers["ipro2"] = 'javascript:addTextAtCursor("==Altri progetti==\\n\\n\\n\\n","","",20)';
pulsantiHotkeyPers["ipro2"] = 'I';
// Non so perche', ma questo metodo conta doppio i caratteri '\n'
pulsantiDescrPers["ipro2"] = 'Interprogetto + titolo';
// Bisogna taroccare il risultato per renderlo esatto
conteggioCR = 0; // conta i 'Carriage Return'
 
for (var i=0;i<CaretPos;i++)
//CATEGORY:
if (wpTextbox1.value.charAt(i) == '\n')
pulsantiComandoPers["category"] = 'javascript:addTextAtCursor("Category:","","",9)';
conteggioCR++;
pulsantiHotkeyPers["category"] = 'X';
pulsantiDescrPers["category"] = 'Category:';
 
CaretPos -= conteggioCR; //aggiusta la posizione della selezione
//FOTO RICHIESTE:
pulsantiComandoPers["foto"] = 'javascript:addTextAtCursor("{{Richiesta"+" foto|}}","","",17)';
pulsantiHotkeyPers["foto"] = 'N';
pulsantiDescrPers["foto"] = 'Richiesta foto';
 
}
//TRADOTTO DA:
// Firefox support
pulsantiComandoPers["mytradda"] = 'javascript:addTradottoDa()';
else if (wpTextbox1.selectionStart || wpTextbox1.selectionStart == '0')
pulsantiHotkeyPers["mytradda"] = 'T';
CaretPos = wpTextbox1.selectionStart;
pulsantiDescrPers["mytradda"] = 'Tradotto da';
 
return (CaretPos);
//CARICA IMMAGINE EDP:
}
pulsantiComandoPers["edp"] = 'javascript:$("wpUploadDescription").value=$("wpUploadDescription").value + "Foto di [[John Howland Rowe]], archeologo ed antropologo statunitense dell\'[[Università della California (Berkeley)]].\\n\\nL\'immagine è stata presa [http://www.mnsu.edu/emuseum/information/biography/pqrst/rowe_john_howland.html da questo sito] e i diritti sul suo sfruttamento sono di [http://www.universityofcalifornia.edu/senate/inmemoriam/johnhowlandrowe.htm].\\n\\nIl file va considerato accettabile per l\'[[Wikipedia:EDP per it.wiki|EDP]] in quanto la persona è morta.\\n\\n{{EDP}}"';
pulsantiHotkeyPers["edp"] = 'E';
pulsantiDescrPers["edp"] = 'Carica imamgine EDP';
 
function setCurPos(newPos,newPos2)
//</pre>
{
wpTextbox1=document.getElementById("wpTextbox1");
 
if (wpTextbox1.createTextRange)
{
var range = wpTextbox1.createTextRange();
range.collapse(true);
range.moveEnd('character', newPos2);
range.moveStart('character', newPos);
range.select();
}
else if (wpTextbox1.setSelectionRange)
{
wpTextbox1.focus();
wpTextbox1.setSelectionRange(newPos, newPos2);
}
}
 
// aggiungi tutti i bottoni alla toolbar
function ToolbarButton() {
var toolbar = null;
toolbar = document.getElementById("toolbar");
if (toolbar == null)
return;
 
// pulsante ESEMPIO (aggiunge il testo in cima o in fondo alla voce)
addToolbarButton('tb-xxx', 'javascript:addText("Testo da inserire", "Oggetto della modifica", Dove inserirlo, Offset)', "Indirizzo URL dell'immagine", 'Testo alternativo', 'Titolo immagine');
 
// SPAZIO TRA PULSANTI (QUESTO NON VA MODIFICATO!!!)
addToolbarButton('tb-farlocco', 'javascript:;', 'http://upload.wikimedia.org/wikipedia/it/5/53/Pulsante_Vuoto.png', '', '');
 
// pulsante ESEMPIO2 (aggiunge il testo al posto del cursore)
addToolbarButton('tb-xxx', 'javascript:addTextAtCursor("Prima","Oggetto","Dopo",offset)', "Indirizzo URL dell'immagine", 'Testo alternativo', 'Titolo immagine');
}
addLoadEvent(ToolbarButton);
//</source>