// <![CDATA[
var myRequest = null;



function createXmlHttpRequest(handler) {
	var xmlhttp = null;
	
	// informazioni sul nome del browser
	var browserUtente = navigator.userAgent.toUpperCase();
	
	// browser standard con supporto nativo non importa il tipo di browser
	if(typeof(XMLHttpRequest) === "function" || typeof(XMLHttpRequest) === "object"){
		xmlhttp = new XMLHttpRequest();
	// browser Internet Explorer ? necessario filtrare la versione 4
	} else if ( window.ActiveXObject && browserUtente.indexOf("MSIE 4") < 0 ) {
		// la versione 6 di IE ha un nome differente per il tipo di oggetto ActiveX
		if (browserUtente.indexOf("MSIE 5") < 0) {
			xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		// le versioni 5 e 5.5 invece sfruttano lo stesso nome
		} else {
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		}
	}

	xmlhttp.onreadystatechange = handler;
  	return xmlhttp;
} 

function caricaMiniature(categoria) {
	categoria = categoria.getAttribute("codice");

	var divVociMenu = document.getElementById("categorie");
	var i = 0;
	var numNodi = divVociMenu.childNodes.length;
	while (i < numNodi) {
		try {
			var id = divVociMenu.childNodes[i].firstChild.id;
			if (id.substring(0,5) == "idLin") {
				divVociMenu.childNodes[i].firstChild.className = "";
			}
		} catch (e) { }
		i++;
	}

	var divCategorie = document.getElementById("categorie");
	var i = 0;
	var numNodi = divCategorie.childNodes.length;
	while (i < numNodi) {
		var id = divCategorie.childNodes[i].id;
		try {
			if (id.substring(0,5) == "idLin") {
				divCategorie.childNodes[i].className = "";
			} else if (id.substring(0,5) == "idFot") {
				divCategorie.childNodes[i].firstChild.className = "";
			}
		} catch (e) { }
		i++;
	}
	
	var foto = document.getElementById("idImg" + categoria);
	foto.className = "bordoGiallo";
	var linkCategoria = document.getElementById("idLink" + categoria);
	linkCategoria.className = "coloreGiallo";
	
	myRequest = createXmlHttpRequest(handlerMiniature);
	myRequest.open("POST","./script/caricaFoto.php",true);
	myRequest.setRequestHeader("content-type", "application/x-www-form-urlencoded");
	myRequest.send("richiesta=miniature&categoria="  + categoria);
}



function handlerMiniature() {
	if (myRequest.readyState == 4 && myRequest.status == 200) {
		var divMiniature = document.getElementById("miniature");

		// ciclo per rimuovere tutte le miniature
		while (divMiniature.firstChild) {
			divMiniature.removeChild(divMiniature.firstChild);
		}
 
		var rispostaScript = myRequest.responseText;
		if (rispostaScript == "Errore"){
			alert("La categoria selezionata non ha foto.");
		} else {
			rispostaScript = eval('(' + rispostaScript + ')');
			var i = 0;
			
			var categoria = "";
			while (i < rispostaScript.Miniature.length) {
				var collegamento = document.createElement("a");
				var img = document.createElement("img");
				var codice = rispostaScript.Miniature[i].CodiceFoto;
				var nome = rispostaScript.Miniature[i].NomeFoto;
				categoria = rispostaScript.Miniature[i].Categoria;
				var nomeCategoria =  rispostaScript.Miniature[i].NomeCategoria;
				var descrizione =  "Visualizza la foto";
				var directory =  rispostaScript.Miniature[i].Directory;

				collegamento.setAttribute("codice", codice);
				collegamento.href = "./index.php?pagina=foto&categoria=" + categoria + "&foto=" + codice;
				collegamento.onclick = function () { caricaFotoGrande(this); return false; };
				img.src = directory;
				img.id = "idImgMin" + codice;
				img.className = "miniatura";
				img.alt = descrizione;
				img.title = descrizione;
				collegamento.appendChild(img);
				document.getElementById("miniature").appendChild(collegamento);
				
				// se si tratta della prima miniatura carico anche la foto grande
				if (i == 0) {
					caricaFotoGrande(codice);
				}
				i++;
			}
			document.getElementById("categoriaEvidenziata").firstChild.nodeValue = "FOTO - " + nomeCategoria;
		}
	}
}

function caricaFotoGrande(foto) {
	try { 
		foto = foto.getAttribute("codice");
	} catch(e) { }

	var divMiniature = document.getElementById("miniature");
	var i = 0;
	var numNodi = divMiniature.childNodes.length;
	while (i < numNodi) {
		try {
			var id = divMiniature.childNodes[i].firstChild.id;
			if (id.substring(0,5) == "idImg") {
				divMiniature.childNodes[i].firstChild.className = "";
			} 
		} catch (e) { }
		i++;
	}

	var miniatura = document.getElementById("idImgMin" + foto);
	miniatura.className = "bordoGiallo";

	myRequest = createXmlHttpRequest(handlerFotoGrande);
	myRequest.open("POST","./script/caricaFoto.php",true);
	myRequest.setRequestHeader("content-type", "application/x-www-form-urlencoded");
	myRequest.send("richiesta=fotoGrande&foto="  + foto);
}

function handlerFotoGrande() {
	visualizzaLoader(myRequest);
	if (myRequest.readyState == 4 && myRequest.status == 200) {
		var fotoGrande = document.getElementById("imgFotoZoom");
		var rispostaScript = myRequest.responseText;
		if (rispostaScript == "Errore"){
			alert("La foto relativa alla miniatura selezionata non e' presente.");
		} else {
			rispostaScript = eval('(' + rispostaScript + ')');
			var descrizione =  rispostaScript.Foto.Descrizione;
			var directory = rispostaScript.Foto.Directory
			fotoGrande.src = directory;		
			fotoGrande.alt = descrizione;		
			fotoGrande.title = descrizione;	
			location = "#contenuti";
		}
	}
}

function settaOnClickCategorie() {
	myRequest = createXmlHttpRequest(handlerOnClickCategorie);
	myRequest.open("POST","./script/caricaFoto.php",true);
	myRequest.setRequestHeader("content-type", "application/x-www-form-urlencoded");
	myRequest.send("richiesta=onClickCategorie");
}

function handlerOnClickCategorie() {
	if (myRequest.readyState == 4 && myRequest.status == 200) {
		var rispostaScript = myRequest.responseText;
		if (rispostaScript == "Errore") {
			alert("");
		} else {
			rispostaScript = eval('(' + rispostaScript + ')');
			var i = 0;
			while (i < rispostaScript.Categorie.length) {
				var codice = rispostaScript.Categorie[i].Codice;
				var categoriaFoto = document.getElementById("idFotoCategoria" + codice);
				var categoriaLink = document.getElementById("idLink" + codice);
				categoriaFoto.setAttribute("codice", codice);
				categoriaFoto.onclick = function () { caricaMiniature(this); return false; };
				categoriaLink.setAttribute("codice", codice);
				categoriaLink.onclick = function () { caricaMiniature(this); return false; };
				i++;
			}
		}
		settaOnClickMiniature();
	}
}

function settaOnClickMiniature() {
	var categoria = getParametroQueryString('categoria');
	myRequest = createXmlHttpRequest(handlerOnClickMiniature);
	myRequest.open("POST","./script/caricaFoto.php",true);
	myRequest.setRequestHeader("content-type", "application/x-www-form-urlencoded");
	if (categoria == null) {
		queryString = "richiesta=onClickMiniature";
	} else {
		queryString = "richiesta=onClickMiniature&categoria=" + categoria;
	}	
	myRequest.send(queryString);
}

function handlerOnClickMiniature() {
	if (myRequest.readyState == 4 && myRequest.status == 200) {
		var rispostaScript = myRequest.responseText;
		if (rispostaScript == "Errore") {
			alert("");
		} else {
			rispostaScript = eval('(' + rispostaScript + ')');
			var i = 0;
			while (i < rispostaScript.Foto.length) {
				var codice = rispostaScript.Foto[i].Codice;
				var miniatura = document.getElementById("idLinkMiniatura" + codice);
				miniatura.setAttribute("codice", codice);
				miniatura.onclick = function () { caricaFotoGrande(this); return false; };
				i++;
			}
		}
	}
}

function caricaMappa() {
	var nodoMappa = document.getElementById("italiaMolise");
	var collegamento = document.getElementById("linkMappa");
	var collegamentoImg = document.getElementById("mappa");
	var img = document.createElement("img");
	
	if (nodoMappa != null){
		nodoMappa = document.getElementById("italiaMolise");
		collegamento.href = "./index.php?pagina=doveSiamo&figura=monteroduni";
		collegamento.firstChild.nodeValue = "Clicca per aumentare il dettaglio";
		collegamentoImg.href = "./index.php?pagina=doveSiamo&figura=monteroduni";
		collegamentoImg.title = "Clicca per aumentare il dettaglio";
		img.onload = function(){aggiornaFooter();};
		img.id = "monteroduni";
		img.src = "./immagini/italiaMolise.jpg";
		img.alt = "Cartina del Molise";
		img.title = "Cartina del Molise";
	} else {
		nodoMappa = document.getElementById("monteroduni");
		collegamento.href = "./index.php?pagina=doveSiamo&figura=italiaMolise";
		collegamento.firstChild.nodeValue = "Clicca per diminuire il dettaglio";
		collegamentoImg.href = "./index.php?pagina=doveSiamo&figura=italiaMolise";
		collegamentoImg.title = "Clicca per diminuire il dettaglio";
		img.onload = function(){aggiornaFooter();};
		img.id = "italiaMolise";
		img.src = "./immagini/monteroduni.jpg";
		img.alt = "Mappa di Monteroduni";
		img.title = "Mappa di Monteroduni";
	}
	
	collegamento.onclick = function () {caricaMappa(); return false;};
	collegamentoImg.onclick = function () {caricaMappa(); return false;};
	collegamentoImg.removeChild(nodoMappa);
	collegamentoImg.appendChild(img);
}

function impostaOnLoadImg (pagina) {
	var nodoImmagine;
	if (pagina == "foto") {
		nodoImmagine = document.getElementById("imgFotoZoom");
		nodoImmagine.onload = function (){rimuoviLoader();};
		settaOnClickCategorie();
	}
	//nodoImmagine.onload = function (){aggiornaFooter();};
}

function aggiornaFooter(){
	var divFooter = document.getElementById("footer");
	var divContainer = document.getElementById("container");
	divContainer.removeChild(divFooter);
	divContainer.appendChild(divFooter);
}

function getParametroQueryString(parametro) {
	var url = window.location.toString();
	var indice = url.indexOf(parametro);
	if (indice == -1 || parametro == "") {
		return null;
	}
	var indice2 = url.indexOf('&', indice);
	if (indice2 == -1) {
		indice2 = url.length;
	}
	var valore = unescape(url.substring(indice + parametro.length + 1, indice2));
	return valore;
}

// ]]>
