var xmlHttp

function subscribe() {
	var fn		= document.getElementById('nl_firstname').value;
	var ln		= document.getElementById('nl_lastname').value;
	var addr	= document.getElementById('nl_address').value;
	var city	= document.getElementById('nl_city').value;
	var phone= document.getElementById('nl_phone').value;
	var email	= document.getElementById('nl_email').value;
	var zone	= document.getElementById('nl_zone').value;
	var t_app	= document.getElementById('nl_type_app').checked;
	var t_house	= document.getElementById('nl_type_house').checked;
	var t_shop	= document.getElementById('nl_type_shop').checked;
	var t_park	= document.getElementById('nl_type_park').checked;
	var t_wood	= document.getElementById('nl_type_wood').checked;
	var t_other	= document.getElementById('nl_type_other').checked;
	
	if (checkFields(fn, ln, city, email)==false) {
		return;
	}
	
	xmlHttp=GetXmlHttpObject();

	if (xmlHttp == null) {
		alert ("Il tuo browser non supporta AJAX. Per favore usa un browser compatibile, come Mozilla Firefox");
		return
	}
	
	var url="newsletter/nl_ajax.php"
	document.getElementById("nl_message").className = 'ajax_msg';
	document.getElementById("nl_message").innerHTML = "Invio informazioni in corso..."
	url=url+"?fn="+fn+"&ln="+ln+"&email="+email+"&addr="+addr+"&city="+city+"&phone="+phone+"&zone="+zone;
	url=url+"&t_app="+t_app+"&t_house="+t_house+"&t_shop="+t_shop+"&t_park="+t_park+"&t_wood="+t_wood+"&t_other="+t_other;
	xmlHttp.onreadystatechange=stateChanged 
	xmlHttp.open("GET",url,true)
	xmlHttp.send(null)
} 

function unsubscribe() {
	var email	= document.getElementById('nl_email').value;
	if (email == "") {
		missingvals +=1;
		document.getElementById("nl_email").className = 'error_field';
		document.getElementById("nl_message").className = 'error';
		document.getElementById("nl_message").innerHTML = "Indirizzo e-mail non specificato";
		return;
	} else {
		document.getElementById("nl_email").className = 'text';
	}
	
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp == null) {
		alert ("Il tuo browser non supporta AJAX. Per favore usa un browser compatibile, come Mozilla Firefox");
		return
	}
	
	var url="newsletter/nl_ajax.php"
	document.getElementById("nl_message").className = 'ajax_msg';
	document.getElementById("nl_message").innerHTML = "Invio informazioni in corso..."
	url=url+"?del="+email;
	xmlHttp.onreadystatechange=unsubscribeChanged 
	xmlHttp.open("GET",url,true)
	xmlHttp.send(null)
}

function stateChanged() { 
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")	{
		var result = xmlHttp.responseText;
		document.getElementById("nl_message").className = 'error';
		if (result == 0) {
			document.getElementById("nl_message").innerHTML = "Indirizzo e-mail non valido";
			document.getElementById("nl_email").className = 'error_field';
		} else if (result == 1) {
			document.getElementById("nl_message").innerHTML = "Indirizzo e-mail gi&agrave; esistente. Non &egrave; necessaria l'iscrizione"
		} else if (result == 2) {
			document.getElementById("nl_message").innerHTML = "Errore nel salvataggio dell'indirizzo e-mail"
		} else if (result == 3) {
			document.getElementById("nl_form").innerHTML = "<p>I vostri dati sono stati salvati.<br/>" +
				"Vi &egrave; stata mandata una e-mail all'indirizzo fornito: seguite le istruzioni incluse per completare l'iscrizione.</p><p></p>"
		} else {
			document.getElementById("nl_message").innerHTML = result
		}
	} 
} 

function unsubscribeChanged() {
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")	{
		var result = xmlHttp.responseText;
		document.getElementById("nl_message").className = 'error';
		if (result == 0) {
			document.getElementById("nl_message").innerHTML = "Indirizzo e-mail non presente nel nostro database." ;
			document.getElementById("nl_email").className = 'error_field';
		} else if (result == 4) {
			document.getElementById("nl_form").innerHTML = "<p>Cancellazione avvenuta.<br/>" +
				"I vostri dati sono stati cancellati dal nostro database.</p><p></p>"
		} else {
			document.getElementById("nl_message").innerHTML = result
		}
	}
}

function checkFields(fn, ln, city, email) {
	var missingvals = 0;
	
	if (fn == "") {
		missingvals +=1;
		document.getElementById("nl_firstname").className = 'error_field';
	} else {
		document.getElementById("nl_firstname").className = 'text';
	}
	
	if (ln == "") {
		missingvals +=1;
		document.getElementById("nl_lastname").className = 'error_field';
	} else {
		document.getElementById("nl_lastname").className = 'text';
	}
	
	if (city == "") {
		missingvals +=1;
		document.getElementById("nl_city").className = 'error_field';
	} else {
		document.getElementById("nl_city").className = 'text';
	}
	
	if (email == "") {
		missingvals +=1;
		document.getElementById("nl_email").className = 'error_field';
	} else {
		document.getElementById("nl_email").className = 'text';
	}
	
	if (missingvals > 0) {
		document.getElementById("nl_message").className = 'error';
		document.getElementById("nl_message").innerHTML = "Uno o pi&ugrave; campi obbligatori non sono stati riempiti";
		return false;
	} else {
		return true;
	}
}

function GetXmlHttpObject() { 
	var objXMLHttp=null
	if (window.XMLHttpRequest) {
		objXMLHttp=new XMLHttpRequest()
	}	else if (window.ActiveXObject) {
		objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
	}
	return objXMLHttp
} 
