/* ----------------------------- DZ: utilità ajax */

var xmlHttp = getXmlHttpObject();

function getXmlHttpObject()
{
  var xmlHttp=null;
  try
    {
    // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
    }
  catch (e)
    {
    // Internet Explorer
    try
      {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      }
    catch (e)
      {
      xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    }
  return xmlHttp;
}



/* ----------------------------- DZ: gestione tendine */

function loadList(tb, id){
xmlHttp.open('GET', 'regioniAjax.php?table='+tb+'&id='+id, true);
xmlHttp.onreadystatechange = stateChanged;
xmlHttp.send(null);
}
function addOption(select, value, text) {
	//Aggiunge un elemento <option> ad una lista <select>
	var option = document.createElement("option");
	option.value = value,
	option.text = text;
	try {
		select.add(option, null);
	} catch(e) {
		//Per Internet Explorer
		select.add(option);
	}
}
function getSelected(select) {
	//Ritorna il valore dell'elemento <option> selezionato in una lista
	return select.options[select.selectedIndex].value;
}


function stateChanged() {
	if(xmlHttp.readyState == 4) {
		//Stato OK
		if (xmlHttp.status == 200) {
			var resp = xmlHttp.responseText;
			
			if(resp) {
				//Le coppie di valori nella striga di risposta sono separate da ;
				var values = resp.split(';');
				//Il primo elemento è l'ID della lista.
				var listId = values.shift();
				var select = document.getElementById(listId);
				//Elimina i valori precedenti
				while (select.options.length) {
					select.remove(0);
				} 
				
				if(listId == 'regioni') {
					addOption (select, 0, '-- Selezionare regione --');
				}
				var limit = values.length;
				
				for(i=0; i < limit; i++) {
					var pair = values[i].split('|');
					//aggiunge un elemento <option>
					addOption(select, pair[0], pair[1]);
				}
			}
		} else {
			alert(xmlHttp.responseText);
		}
	}
}



/* ----------------------------- DZ: invio mail */

function sendPosta(){
	
	//recupero i valori dal form
var nome = document.forms['moduloPosta'].nome.value;
var cognome = document.forms['moduloPosta'].cognome.value;
var telefono = document.forms['moduloPosta'].telefono.value;
var email = document.forms['moduloPosta'].email.value;
var locali = document.forms['moduloPosta'].locali.value;
var regioni = document.forms['moduloPosta'].regioni.value;
var province = document.forms['moduloPosta'].province.value;
var comuni	 = document.forms['moduloPosta'].comuni.value;
var privacy	 = document.forms['moduloPosta'].privacy.value;

	//faccio fare il controllo dei campi alla funzione checkmodulo
if (checkModulo("moduloPosta")) {	
	//adess el mandi tutt in ajax alla php che manda la mail
	xmlHttp.open('GET', 'sendPosta.php?nome='+nome+'&cognome='+cognome+'&telefono='+telefono+'&email='+email+'&locali='+locali+'&regioni='+regioni+'&province='+province+'&comuni='+comuni+'&privacy='+privacy, true);
	xmlHttp.onreadystatechange = stateChangedMail;
	xmlHttp.send(null);
}

}


function stateChangedMail() {
	if(xmlHttp.readyState == 4) {
		//Stato OK
		if (xmlHttp.status == 200) {
			var resp = xmlHttp.responseText;
			
			if(resp) {
				var testo ="<h1>la tua richiesta &egrave; stata inviata!</h1><p>Ora potrai ricevere informazioni in merito alle nostre iniziative nella zona da te indicata!<br/><br/> Grazie della collaborazione.</p>";
				document.getElementById("modulo").innerHTML = testo;
			}
		} else {
			alert(xmlHttp.responseText);
		}
	}
}




/* ----------------------------- DZ: controllo moduli form */

function checkModulo(formname) {
var campi = '';
var reg = /\'/g;
var text = 'e\' necessario compilare i seguenti campi:';

if (formname=="moduloPosta") {
	
	
	if (document.forms[formname].province.value=='' ) {
	campi = campi + 'province' + '\n';
	document.forms[formname].province.style.borderColor = "#990000";
	} else { 
	var province =  document.forms[formname].province.value;
	province = province.replace(reg,"`");
	document.forms[formname].province.value = province;
	document.forms[formname].province.style.borderColor = "#cccccc";
	}  

	if (document.forms[formname].comuni.value=='' ) {
	campi = campi + 'comuni' + '\n';
	document.forms[formname].comuni.style.borderColor = "#990000";
	} else { 
	var comuni =  document.forms[formname].comuni.value;
	comuni = comuni.replace(reg,"`");
	document.forms[formname].comuni.value = comuni;
	document.forms[formname].comuni.style.borderColor = "#cccccc";
	}  
	
	if (document.forms[formname].privacy.checked != true ) { 
	campi = campi + 'privacy' + '\n';
	} 

}

	if (document.forms[formname].nome.value=='' ) { 
	campi = campi + 'nome' + '\n';
	document.forms[formname].nome.style.borderColor = "#990000";
	} else { 
	var nome = document.forms[formname].nome.value;
	nome = nome.replace(reg,"`");
	document.forms[formname].nome.value = nome;
	document.forms[formname].nome.style.borderColor = "#cccccc";
	}
	
	if (document.forms[formname].cognome.value=='' ) {
	campi = campi + 'cognome' + '\n';
	document.forms[formname].cognome.style.borderColor = "#990000";
	} else { 
	var cognome =  document.forms[formname].cognome.value;
	cognome = cognome.replace(reg,"`");
	document.forms[formname].cognome.value = cognome;	
	document.forms[formname].cognome.style.borderColor = "#cccccc";
	}  

	if (document.forms[formname].email.value=='' ) { 
	campi = campi + 'email' + '\n';
	document.forms[formname].email.style.borderColor = "#990000";
	} else { 
		var email = document.forms[formname].email.value;
		Filtro = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
		if (Filtro.test(email)){
			email = email.replace(reg,"`");
			document.forms[formname].email.value = email;
			document.forms[formname].email.style.borderColor = "#cccccc";
		} else {
			campi = campi + 'email non corretta' + '\n';
			document.forms[formname].email.style.borderColor = "#990000";
			document.forms[formname].email.value = email;
			document.forms[formname].email.focus();
		}
	}
	
	

if (campi == '')
{
	return true;
} else { 
window.alert(text + '\n\n' + campi );
}  
}



/* ----------------------------- DZ: varie  */

function mail_no_spam(user,dominio) { 
    document.location.href = "mailto:" + user + "@" + dominio; 
}

function chiudiDiv(box){
	document.getElementById(box).style.display ="none";
}
function apriDiv(box){
	document.getElementById(box).style.display ="block";
}



/* ----------------------------- DZ: gestione dei tabs in homepage */


	function entraTab(qualeTab) {
		esciTab();
		document.getElementById("lnk_"+qualeTab).className = "active";
		var pagina = "tab_"+qualeTab+".php";
		xmlHttp.open('GET', pagina, true);
		xmlHttp.onreadystatechange = function () {stateTab(qualeTab);};
		xmlHttp.send(null);
		}

	function stateTab(qualeTab) {
		if(xmlHttp.readyState == 4) {
			//Stato OK
			if (xmlHttp.status == 200) {
				var resp = xmlHttp.responseText;
				if(resp) {
					document.getElementById("content").innerHTML = resp;
					if(qualeTab=="feedback") {
					loadList('regioni', 0);
					}
					
				}
			} else {
				alert(xmlHttp.responseText);
			}
		}
	}

	function esciTab(){
		document.getElementById("lnk_cose").className = "";
		document.getElementById("lnk_feedback").className = "";
		document.getElementById("lnk_programma").className = "";
		}
		
		

