Utente:Alex brollo/libreriaVector.js

Da Wikisource.

Nota: dopo aver pubblicato, potrebbe essere necessario pulire la cache del proprio browser per vedere i cambiamenti.

  • Firefox / Safari: tieni premuto il tasto delle maiuscole Shift e fai clic su Ricarica, oppure premi Ctrl-F5 o Ctrl-R (⌘-R su Mac)
  • Google Chrome: premi Ctrl-Shift-R (⌘-Shift-R su un Mac)
  • Internet Explorer / Edge: tieni premuto il tasto Ctrl e fai clic su Aggiorna, oppure premi Ctrl-F5
  • Opera: premi Ctrl-F5.
importScript("Utente:Alex brollo/parseTemplate.js");
importScript("Utente:Alex brollo/getPage.js");
importScript("Utente:Alex brollo/Tabella_attiva.js");
//importScript("Utente:Alex brollo/ParsingHproduct.js");
// importScript("MediaWiki:Gadget-autoSal0.js");



if (typeof newAbbr === "undefined") newAbbr = {};
newAbbr["(includiIntestazione)"] = "{{IncludiIntestazione|sottotitolo=|prec=|succ=}}";
newAbbr["(Intestazione)"] = "{"+"{Intestazione" + "\n| Nome e cognome dell'autore =\n| Titolo =\n| Anno di pubblicazione =\n| Eventuale secondo anno di pubblicazione =\n| Lingua originale del testo =\n| Nome e cognome del traduttore =\n| Anno di traduzione =\n| Progetto = \n| Argomento =\n| URL della versione cartacea a fronte =\n}}\n";


mw.loader.load('//commons.wikimedia.org/w/index.php?title=MediaWiki:JSValidator.js&action=raw&ctype=text/javascript');
mw.loader.load('//it.wikisource.org/w/index.php?title=Utente:Alex_brollo/pagelistParsing.js&action=raw&ctype=text/javascript');
mw.loader.load('//it.wikisource.org/w/index.php?title=Utente:Alex_brollo/zs.js&action=raw&ctype=text/javascript');
mw.loader.load('//it.wikisource.org/w/index.php?title=Utente:Alex_brollo/medagliette.js&action=raw&ctype=text/javascript');
mw.loader.load('//it.wikisource.org/w/index.php?title=MediaWiki:Gadget-normalizza-AutoreCitato.js&action=raw&ctype=text/javascript');

$("#content").append($('<div id="newtattoo" align="right" style="position:fixed;bottom:0; right:0; background-color:white; border: 1px solid; border-color:#F0F0F0; z-index:1500;"></div>'));

/* funzione spostata in Utente:Alex brollo/getPage.js

function getIwPage (title, site, query, callback) {
	if (query == undefined) query = "text";
	// $("#spinnerIcon").css("display","inline");
	if (query == "html" || query == undefined) data = {
		format: 'json',
		action: 'parse',
		page: title,
		prop: 'text'
	};
	if (query == "text") data = {
		format: 'json',
		action: 'query',
		titles: title,
		prop: 'revisions',
		rvlimit: '1',
		rvprop: 'content'
	};
	$.ajax({
		url: 'https://' + site + '/w/api.php',
		async: false,
		data: data,
		dataType: 'jsonp' // this is the important one!
	}).done(function (data) {
		$("body").data("outputAjax", data);
		if (query === "text") {
			if (data.query.pages[-1] == undefined) {
				l = [];
				for (i in data.query.pages) {
					l.push(i);
				};
				bareData = data.query.pages[l[0]].revisions[0]["*"];
			} else {
				bareData = "Pagina non esistente";
			}
			if (query === "html") {
				if (data.error == undefined) {

					bareData = data.parse.text["*"];
				} else {bareData = "Pagina non esistente";}
			}

		}
		$("body").data("bareData", bareData);
		if (callback !== undefined) {
			callback();
		}
		//$("#spinnerIcon").css("display","none");
	});
} */


newButton("rmf", "rmflinks");
newButton("//upload.wikimedia.org/wikipedia/commons/5/5f/Button_center.png", "incapsula('{{Centrato|','}}')", "es");
newButton("//upload.wikimedia.org/wikipedia/commons/b/b6/Button_AC_plus.png", "ac_plus()", "es");
newButton("//upload.wikimedia.org/wikipedia/commons/4/45/Button_TC.png", "incapsula('{{TestoCitato|','}}')", "es");
newButton("//upload.wikimedia.org/wikipedia/commons/a/a2/SmallcapsButton.png", "incapsula('{{Sc|','}}')", "es");
newButton("//upload.wikimedia.org/wikipedia/commons/2/2a/Button_Subheadline.gif", "incapsula('{{Rule|4em}}','')", "es");
newButton("//upload.wikimedia.org/wikipedia/commons/thumb/c/c3/Button_capitalize.svg/23px-Button_capitalize.svg.png", "capit()", "es");
newButton("//upload.wikimedia.org/wikipedia/commons/thumb/0/0c/Button_Up_Low_toggle.svg/23px-Button_Up_Low_toggle.svg.png", "up_low()", "es");
newButton("//upload.wikimedia.org/wikipedia/commons/2/25/Btn_toolbar_indent_more.png", "indentSelection()", "es");
newButton("//upload.wikimedia.org/wikipedia/commons/a/ab/Btn_toolbar_indent_less.png", "deIndentSelection()", "es");
newButton("//upload.wikimedia.org/wikipedia/commons/5/56/Center.png", "eliminaRigheVuote()", "es");
//newButton("ZbL+", "incapsula('{{ZbLink||visualizza=<b>','</b>}}')", "es");
//newButton("ZbL", "incapsula('{{ZbLink|','}}')", "es");
//newButton("layout", "pr_toggle_layout", "es");
//newButton("cerca", "cerca");
newButton("show", "show('wiki text')", "evs");
// newButton("wikilink", "show('wikidata')", "evs");
// newButton("carica", "carica()", "es");
newButton("metadati", "show(1)", "es");
newButton("NewPP", "NewPP", "v");
newButton("note", "note", "es");
newButton("autoRi", "newRi", "es");
newButton("autoPt", "autoPt", "es");
newButton("autoNs0", "ns0Auto", "es");
newButton("autoSomm", "autoSommario", "es");
newButton("autoInd", "autoIndice", "es");
newButton("sections", "incapsula('&lt;section begin= /&gt;','&lt;section end= /&gt;')", "es");
newButton("preOCR", "preOCR()", "es");
newButton("tableM", "tableMaker()", "es");
importScript("User:"+wgUserName+"/PersonalButtons.js");


//newButton("ThPurge", "ThPurge()");

/*Bottoni disattivati
//newButton("noImg", "noImg1","es");
newButton("DP font", "dpFont");
newButton("//upload.wikimedia.org/wikipedia/commons/6/6d/Button_AC.png","incapsula('{{AutoreCitato|','}}')");
newButton("R-", "excludeR()");
newButton("spiriti","correggiGreco");
newButton("Tabella attiva", "loadActiveTab");
newButton("kw", "addKeyword()");   
newButton("//upload.wikimedia.org/wikipedia/commons/7/79/Button_reflink.png","incapsula('<ref>,'</ref>')");   
newButton("rule","incapsula('{{rule|4em|}}','\\n\\n')");
newButton("autIgnoto","autoreIgnoto");
newButton("ac_plus", "ac_plus");
newButton("Via","incapsula('align=&quote;right&quote;|{{Via/ISU||','||39}}')");
newButton("tabSom", "tabSomMaker");
newButton("RI","incapsula('{{RigaIndice|','|puntini=si}}')");
newButton("thumbs", "thumbs");
newButton("G lib","ottavaGl");
newButton("italic","incapsula('<i>','</i>')");
newButton("canz1","canz1()");
newButton("canz2","canz2()");
newButton("espandi", "espandi");
newButton("r mak", "rmak") 
*/

function espandi() {
	var lista = produciLista(leggiBox(), "(", ")", 1, "(");
	for (i = 0; i < lista.length; i += 1) {
		if (newAbbr[lista[i]] !== undefined) {
			scriviBox(leggiBox().replace(lista[i], newAbbr[lista[i]]));
		}
	}

}

function excludeR() {

	t = selection();
	t[1] = "::::::{{R-}}" + t[1];
	scriviBox(t.join(""));
}


/*
function ptPostAuto() {
    ptList=produciLista(testoPagPrec[1],"{{Pt|","}}",1,"{{");
    if (ptList.length>0) {
        mezzaparola=find_stringa(ptList[ptList.length-1],"{{Pt|","|",0).trim();
        if (mezzaparola.substring(mezzaparola.length-1,mezzaparola.length)=="-") {
            testocor=leggiBox();
            primaMezzaparola=testocor.substring(0,testocor.indexOf(" "));
            nPt="{{Pt|"+primaMezzaparola+"|"+mezzaparola.substring(0,mezzaparola.length-1)+primaMezzaparola+"}}";
            testocor=testocor.replace(primaMezzaparola,nPt);
            scriviBox(testocor);
        }
    }
    ri=find_stringa(testoPagPrec[0],"{"+"{RigaIntestazione","}}",0,"{{");
    if (ri.length>0) {
    ri="<!--"+ri+"-->";
    header=ri+leggiBox(0);
    scriviBox(header,0);
    }
}
 
*/

/******** Fine funzioni di supporto a p2d() ************/

function elaboradatiPaginaTest(i) {
	riga = datiPagina.righe[i][4];
	// vediamo centrato
	deltasin = datiPagina.righe[i][0] - datiPagina.paramPagina.min_x1;
	deltadx = datiPagina.paramPagina.max_x2 - datiPagina.righe[i][2];
	larghMax = datiPagina.paramPagina.max_x2 - datiPagina.paramPagina.min_x1;
	larghRiga = datiPagina.righe[i][2] - datiPagina.righe[i][0];
	if (larghRiga / larghMax < 0.95 && deltasin / deltadx > 0.7 && deltasin / deltadx < 1.4) riga = "{{Centrato|" + riga + "}}\n";
	return riga + "\n";
}


function jsonView() {
	myWindow = window.open('', '', 'width=500,height=200');
	testo = 'datiPagine["' + base + '"]=' + JSON.stringify(datiPag) + ";";
	myWindow.document.write(testo);
	myWindow.focus();
}


function ns0(cap, pag) {
	var editbox = document.getElementsByName('wpTextbox1')[0];
	var testo = editbox.value;
	ii = '{{IncludiIntestazione|sottotitolo=Capitolo #1|prec=../#0|succ=../#2}}\n\n<pages index="La Sacra Bibbia (Diodati 1885).djvu" from=#pag to=#pag1 fromsection=#1 tosection=#1 />\n\n{{Sezione note}}';
	x = prompt("capitolo,pagina:").split(",");
	cap = x[0];
	pag = x[1];
	testo = ii.replace(/\#1/g, cap).replace("#0", cap * 1 - 1).replace("#2", cap * 1 + 1).replace("#pag", pag).replace("#pag1", pag * 1 + 1);
	editbox.value = testo;
}


function dts() {
	var editbox = document.getElementsByName('wpTextbox1')[0];
	var testo = editbox.value;
	listaLemmi = produciLista(testo, "{{lemma|", "\n", 1);
	for (i = 0; i < listaLemmi.length; i += 1) {
		if (listaLemmi[1].indexOf("@") === -1) {
			lemma = find_stringa(listaLemmi[i], "{{lemma|", "}}, ", 1);
			var lemmaVal = find_stringa(lemma, "{{lemma|", "}}, ", 0).toLocaleLowerCase();
			lemmaDef = find_stringa(listaLemmi[i], lemma, "\n", 0);
			section_b = "<section begin=@@ />".replace("@@", "@" + lemmaVal);
			section_e = section_b.replace("<section begin", "<section end");
			lemmaNew = lemma + section_b + lemmaDef + section_e + "\n";
			testo = testo.replace(listaLemmi[i], lemmaNew);
		}
		editbox.value = testo;
	}
}


// AltraColonna
function altraColonna() {
	var t = selection();
	if (t[1] !== "") {
		alert("Il tool va lanciato senza selezionare alcun testo,\nma solo posizionando il cursore nel punto di inserimento di AltraColonna");
		return;
	}
	t[0] = t[0].replace(/\{\{altracolonna\}\}/i, "");
	t[2] = t[2].replace(/\{\{altracolonna\}\}/i, "");
	// caso AltraColonna in riga vuota
	if (t[0].charAt(t[0].length - 1) === "\n" && t[2].charAt(0) === "\n") {
		scriviBox(t[0] + "{{AltraColonna}}" + t[2]);
		return;
	}
	// caso AltraColonna a fine parola
	if (t[2].charAt(0) === " ") {
		t[0] += " ";
		t[2] = t[2].substring(1);
	}
	if (t[0].charAt(t[0].length - 1) === " ") {
		scriviBox(t[0] + "{{AltraColonna}}" + t[2]);
		return;
	}

	// caso AltraColonna a metà parola
	if (/[A-z]$/.test(t[0]) && /^[A-z]/.test(t[2])) {
		inizioParola = t[0].lastIndexOf(" ") + 1;
		inizioP = t[0].substring(inizioParola);
		fineParola = t[2].indexOf(" ");
		fineP = t[2].substring(0, fineParola);
		t[0] = t[0].substring(0, inizioParola) + "{{Pt|#|}}".replace("#", inizioP + "-");
		t[2] = "{{Pt|#|§}}".replace("#", fineP).replace("§", inizioP + fineP) + t[2].substring(fineParola);
		scriviBox(t[0] + "{{AltraColonna}}" + t[2]);
		return;
	}
}
//


acd_add = {};

function ac_plus() {
	var t = selection();
	var autore = t[1];
	if (acd[autore] === undefined) {
		if (acd_add[autore] !== undefined) {
			acd[autore] = acd_add[autore];
		} else {
			autoreCompleto = prompt("Autore ignoto. Inserisci cognome e nome:", autore);
			autoreCompleto = autoreCompleto.trim();
			if (autoreCompleto === "") return;

			acd_add[autore] = autoreCompleto;
			acd[autore] = autoreCompleto;
			saveCookAcd();
		}

	}
	t[1] = "{{AutoreCitato|" + acd[autore] + "|" + autore + "}}";
	scriviBox(t.join(""));

}
// Funzioni specifiche per i cookies; gestione cookie Acd, oggetto acd_add (autori aggiuntivi)
function saveCookAcd() {
	datiAcd = escape(JSON.stringify(acd_add));
	createMyCookie("Acd", datiAcd, 60);
}

function readCookAcd() {
	if (readMyCookie("Acd") !== null) {
		acd_add = JSON.parse(unescape(readMyCookie("Acd")));
	}
}

function resetCookAcd() {
	acd_add = {};
	saveCookAcd();
	alert("I dati del cookie Acd sono stati annullati");
}

// mw.loader.using( ['ext.wikiEditor.toolbar'], function(){
//   $(document).ready( bloccaTools );
// });



// Blocco del pannello sin

var width = $("#mw-panel").width();
$("#p-logo").css("position", "fixed").css("top", "0");
$("#mw-panel").attr("style", "position:fixed;overflow:auto;left:0; bottom:0; width:" + width + "px;");



$(document).ready(readCookAcd);

function spittatore(testo) {
	r = /[\,\;\.\:\-\_\'\ \"\*\+\?\!\|\[\]\{\}\(\)\=\n\/]+/g;
	a1 = testo.split(r);
	a2 = testo.match(r);
	return [a1, a2];
}


function desplittatore(coppia) {
	a1 = coppia[0];
	a2 = coppia[1];
	t = "";
	for (i = 0; i < a2.length; i += 1) {
		t += a1[i] + a2[i];
	}
	t += a1[a1.length - 1];
	return t;
}