var elencoSettori, elencoCategorie, arrSettori, arrCategorie;


function toggleNodo(nome) {
	var lista=document.getElementById("list_"+nome);
	var immagine=document.getElementById("img_"+nome);
	
	if (lista.style.display=="none")
		espandi(lista, immagine);
	else
		comprimi(lista, immagine);
}


function comprimiTutto() {
	var i, lista, immagine;

	for (i=0; i<arrCategorie.length; i++) {
		lista=document.getElementById("list_cta"+arrCategorie[i]);
		immagine=document.getElementById("img_cta"+arrCategorie[i]);
		if (lista.style.display!="none")
			comprimi(lista, immagine);
	}
	for (i=0; i<arrSettori.length; i++) {
		lista=document.getElementById("list_sta"+arrSettori[i]);
		immagine=document.getElementById("img_sta"+arrSettori[i]);
		if (lista.style.display!="none")
			comprimi(lista, immagine);
	}
}


function espandiTutto() {
	var i, lista, immagine;

	for (i=0; i<arrSettori.length; i++) {
		lista=document.getElementById("list_sta"+arrSettori[i]);
		immagine=document.getElementById("img_sta"+arrSettori[i]);
		if (lista.style.display=="none")
			espandi(lista, immagine);
	}
	for (i=0; i<arrCategorie.length; i++) {
		lista=document.getElementById("list_cta"+arrCategorie[i]);
		immagine=document.getElementById("img_cta"+arrCategorie[i]);
		if (lista.style.display=="none")
			espandi(lista, immagine);
	}
}


function espandi(lista, immagine) {
	lista.style.display="block";
	immagine.src="/piazzaffari/immagini/espanso.gif";
	immagine.alt="Comprimi";
}


function comprimi(lista, immagine) {
	lista.style.display="none";
	immagine.src="/piazzaffari/immagini/compresso.gif";
	immagine.alt="Espandi";
}


function toggleModifica(nome) {
	var testo=document.getElementById("testo_"+nome);
	var input=document.getElementById("mod_"+nome);
	var imgElimina=document.getElementById("imge_"+nome);
	var imgModifica=document.getElementById("imgm_"+nome);
	
	if (testo.style.display!="none") {
		input.disabled=false;
		input.style.display="inline";
		testo.style.display="none";
		imgModifica.src="../immagini/annulla_modifica.gif";
		imgModifica.alt="Annulla modifica";
		if (imgElimina!=null)
			imgElimina.style.display="none";
	} else {
		input.disabled=true;
		input.style.display="none";
		testo.style.display="inline";
		imgModifica.src="../immagini/modifica.gif";
		imgModifica.alt="Modifica";
		if (imgElimina!=null)
			imgElimina.style.display="inline";
	}
}


function espandi2(nome) {
	var lista=document.getElementById("list_"+nome);
	var immagine=document.getElementById("img_"+nome);

	if (lista.style.display!="block") {
		lista.style.display="block";
		immagine.src="../immagini/espanso.gif";
		immagine.alt="Comprimi";
	}
}


function aggiungiFiglio(nome) {
	var i, trovato, listitem, inputnew;
	i=1;
	trovato=false;

	listitem=document.getElementById("lin"+i+"_"+nome);
	while(listitem!=null) {
		if (listitem.style.display!="block") {
			listitem.style.display="block";
			inputnew=document.getElementById("new"+i+"_"+nome);
			inputnew.disabled=false;
			inputnew.value="";
			trovato=true;
			break;
		}
		i++;
		listitem=document.getElementById("lin"+i+"_"+nome);
	}
	
	if (trovato) {
		if (nome.indexOf("root")==-1) espandi2(nome);
	} else {
		i--;
		if (i==0)
			alert('Non si possono aggiungere figli all\'elemento ' + nome);
		else
			alert('Si possono aggiungere al massimo ' + i + ' figli per volta');
	}
}


function eliminaNuovo(nome, num) {
	var i, listitem, inputnew;
	i=num+1;

	listitem=document.getElementById("lin"+i+"_"+nome);
	while(listitem!=null) {
		if (listitem.style.display=="block") {
			document.getElementById("new"+(i-1)+"_"+nome).value=document.getElementById("new"+i+"_"+nome).value;
		} else {
			break;
		}
		i++;
		listitem=document.getElementById("lin"+i+"_"+nome);
	}
	i--;
	listitem=document.getElementById("lin"+i+"_"+nome);
	inputnew=document.getElementById("new"+i+"_"+nome);
	listitem.style.display="none";
	inputnew.value="";
	inputnew.disabled=true;
}


function toggleElimina(nome) {
	var checkbox=document.getElementById("elim_"+nome);
	var testo=document.getElementById("testo_"+nome);
	var imgElimina=document.getElementById("imge_"+nome);
	var imgModifica=document.getElementById("imgm_"+nome);
	var imgAggiungi, disabilitato, i, listitem;

	if (!checkbox.checked) {
		checkbox.checked=true;
		testo.style.textDecoration="line-through";
		imgElimina.src="../immagini/annulla_elimina.gif";
		imgElimina.alt="Annulla elimina";
		imgModifica.style.display="none";
	} else {
		checkbox.checked=false;
		testo.style.textDecoration="none";
		imgElimina.src="../immagini/elimina.gif";
		imgElimina.alt="Elimina";
		imgModifica.style.display="inline";
	}

	if (nome.indexOf("sca")==-1) {
		imgAggiungi=document.getElementById("imga_"+nome);
		if (checkbox.checked) {
			imgAggiungi.style.display="none";
			disabilitato=true;
		} else {
			imgAggiungi.style.display="inline";
			disabilitato=false;
		}
		i=1;
		listitem=document.getElementById("lin"+i+"_"+nome);
		while(listitem!=null) {
			if (listitem.style.display=="block") {
				document.getElementById("new"+i+"_"+nome).disabled=disabilitato;
			} else {
				break;
			}
			i++;
			listitem=document.getElementById("lin"+i+"_"+nome);
		}
	}
}


function writeInizioNodo(tipo, id, nome, numFigli) {
	var nodo, i, tipoFiglio;
	nodo=tipo;
	if (tipo!='root') nodo+=id;

	switch(tipo.toLowerCase()) {
		case "root":
			tipoFiglio="sta";
			break;
		case "sta":
			tipoFiglio="cta";
			break;
		case "cta":
			tipoFiglio="sca";
			break;
	}

	if (tipo!='root') {
		document.writeln('<li>');
		if (tipo!='sca')
			document.writeln('<img id="img_' + nodo + '" width="12" height="12" onClick="toggleNodo(\'' + nodo + '\');">');
		document.writeln(id + ' - ');
		document.writeln('<span id="testo_' + nodo + '">' + nome + '</span>');
		document.writeln('<input type="text" class="mod' + tipo + '" name="mod_' + nodo + '" id="mod_' + nodo + '" maxlength="80" disabled value="' + nome + '">');
		if (tipo!='sca')
			document.writeln('<img id="imga_' + nodo + '" src="../immagini/nuovo.gif" width="12" height="12" alt="Aggiungi" onClick="aggiungiFiglio(\'' + nodo + '\');">');
		else
			document.writeln('<span class="numaziendesca">(' + numFigli + ' az.)</span>');
		document.writeln('<img id="imgm_' + nodo + '" src="../immagini/modifica.gif" width="12" height="12" alt="Modifica" onClick="toggleModifica(\'' + nodo + '\');">');
		if (numFigli==0) {
			document.writeln('<img id="imge_' + nodo + '" src="../immagini/elimina.gif" width="12" height="12" alt="Elimina" onClick="toggleElimina(\'' + nodo + '\');">');
			document.writeln('<input type="checkbox" class="nascosto" name="elim_' + tipo + '" id="elim_' + nodo + '" value="' + id + '">');
		}
		document.writeln('</li>');
	}
	
	if (tipo!='sca') {
		document.writeln('<ul class="lista' + tipoFiglio + '" id="list_' + nodo + '">');
		for (i=1; i<=maxAggiungibili; i++) {
			document.writeln('<li class="linew" id="lin' + i + '_' + nodo + '">');
			if (tipo!='cta')
				document.writeln('<img src="../immagini/compresso.gif" width="12" height="12">');
			document.writeln('<input class="new' + tipoFiglio + '" name="new' + i + '_' + nodo + '" id="new' + i + '_' + nodo + '" type="text" maxlength="80" disabled>');
			document.writeln('<img src="../immagini/elimina.gif" width="12" height="12" alt="Elimina" onClick="eliminaNuovo(\'' + nodo + '\', ' + i + ');">');
			document.writeln('</li>');
		}
	}
}


function writeFineNodo() {
	document.writeln('</ul>');
}


function writeInizioNodo2(tipo, id, nome, numFigli) {
	var nodo, i, tipoFiglio;
	nodo=tipo;
	if (tipo!='root') nodo+=id;

	switch(tipo.toLowerCase()) {
		case "root":
			tipoFiglio="sta";
			break;
		case "sta":
			tipoFiglio="cta";
			break;
		case "cta":
			tipoFiglio="sca";
			break;
	}

	if (tipo!='root') {
		document.writeln('<li>');
		if (tipo!='sca')
			document.writeln('<img id="img_' + nodo + '" width="12" height="12" onClick="toggleNodo(\'' + nodo + '\');">');
		document.writeln('<a href="javascript:vediAziende(\'' + tipo + '\', ' + id + ');"><span id="testo_' + nodo + '">' + nome + '</span></a>');
		document.writeln('<span class="numaziendesca">(' + numFigli + ' aziend' + ((numFigli==1)?'a':'e') + ')</span>');
		document.writeln('</li>');
	}
	
	if (tipo!='sca') {
		document.writeln('<ul class="lista' + tipoFiglio + '" id="list_' + nodo + '">');
	}
}
