// crea l'oggetto per la comunicazione AJAX con il server
// compatibile con tutti i browser che supportano AJAX
function crea_http_req() {
	var req = false;
	if (typeof XMLHttpRequest != "undefined")
		req = new XMLHttpRequest();
	if (!req && typeof ActiveXObject != "undefined") {
		try {
			req=new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e1) {
			try {
				req=new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e2) {
				try {
					req=new ActiveXObject("Msxml2.XMLHTTP.4.0");
				} catch (e3) {
					req=null;
				}
			}
		}
	}

	if(!req && window.createRequest)
		req = window.createRequest();

	if (!req) alert("Il browser non supporta AJAX");
	return req;
}
// l'oggetto per comunicare con il server
var http_req = crea_http_req();	
// invia i dati del form al server
function invia_dati(comando) {

if (logon == 1)
	{

	var dati_post = "username=" +
					encodeURIComponent( document.getElementById("username").value ) +
					"&password=" +
					encodeURIComponent( document.getElementById("password").value );

	http_req = crea_http_req();	
	http_req.onreadystatechange = gestisci_risposta;
	http_req.open('POST', 'login.php', true);
	http_req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	http_req.setRequestHeader("Content-length", dati_post.length);
	http_req.setRequestHeader("Connection", "close");
	http_req.send(dati_post);
	}else {
	
		scollega();	
	}
}

function registrazione() {
	
				dojo.xhrPost( { // 
					 url: "registrazione.php", 
					 handleAs: "text",

					timeout: 10000, // Time in milliseconds

					load: function(response, ioArgs) { // 
						    var mainPage= dojo.byId("MainPage");
						    mainPage.innerHTML=response;
							dojo.parser.parse(mainPage)
							//resize_tabella();
							return response; 
					},
					error: function(response, ioArgs) { // 
						//dijit.byId("rightPanel").setContent(response); 
						alert("HTTP status code: ", ioArgs.xhr.status); // 
						return response; // 
					}
					//content: {articoli: articoli}
			});				
}




function submitregistration() {
	var isvalid = true
	if( document.getElementById('azienda_target').value == "" ) {
				document.getElementById('azienda_div').style.color = "red";
				isvalid = false;
			}
			else {
				document.getElementById('azienda_div').style.color = "";
			}

	if( document.getElementById('nome_target').value == "" ) {
				document.getElementById('nome_div').style.color = "red";
				isvalid = false;
			}
			else {
				document.getElementById('nome_div').style.color = "";
			}
	if (document.getElementById('provincia').value == "Scegli Provincia")
	{
				document.getElementById('provincia_div').style.color = "red";
				isvalid = false;
	}else {
				document.getElementById('provincia_div').style.color = "";
	}
	if( document.getElementById('cognome_target').value == "" ) {
				document.getElementById('cognome_div').style.color = "red";
				isvalid = false;
			}
			else {
				document.getElementById('cognome_div').style.color = "";
			}


	if( document.getElementById('indirizzo_target').value == "" ) {
				document.getElementById('indirizzo_div').style.color = "red";
				isvalid = false;
			}
			else {
				document.getElementById('indirizzo_div').style.color = "";
			}
	if( document.getElementById('citta_target').value == "" ) {
				document.getElementById('citta_div').style.color = "red";
				isvalid = false;
			}
			else {
				document.getElementById('citta_div').style.color = "";
			}
	if( document.getElementById('cap_target').value == "" ) {
				document.getElementById('cap_div').style.color = "red";
				isvalid = false;
			}
			else {
				document.getElementById('cap_div').style.color = "";
			}
	if( document.getElementById('nazione_target').value == "" ) {
				document.getElementById('nazione_div').style.color = "red";
				isvalid = false;
			}
			else {
				document.getElementById('nazione_div').style.color = "";
			}

	if( document.getElementById('telefono_target').value == "" ) {
				document.getElementById('telefono_div').style.color = "red";
				isvalid = false;
			}
			else {
				document.getElementById('telefono_div').style.color = "";
			}
	if( document.getElementById('fax_target').value == "" ) {
				document.getElementById('fax_div').style.color = "red";
				isvalid = false;
			}
			else {
				document.getElementById('fax_div').style.color = "";
			}
	if( document.getElementById('emailcom_target').value == "" ) {
				document.getElementById('emailcom_div').style.color = "red";
				isvalid = false;
			}
			else {
				document.getElementById('emailcom_div').style.color = "";
			}
	if( document.getElementById('emailamm_target').value == "" ) {
				document.getElementById('emailamm_div').style.color = "red";
				isvalid = false;
			}
			else {
				document.getElementById('emailamm_div').style.color = "";
			}
	if( document.getElementById('partita_iva_target').value == "" ) {
				document.getElementById('partita_iva_div').style.color = "red";
				isvalid = false;
			}
			else {
				document.getElementById('partita_iva_div').style.color = "";
			}
	if( document.getElementById('codicefiscale_target').value == "" ) {
				document.getElementById('codicefiscale_div').style.color = "red";
				isvalid = false;
			}
			else {
				document.getElementById('codicefiscale_div').style.color = "";
			}
	if( document.getElementById('agreed_field').checked  == false ) {
				document.getElementById('agreed_div').style.color = "red";
				isvalid = false;
			}
			else {
				document.getElementById('agreed_div').style.color = "";
			}

	if( !(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(document.getElementById('emailcom_target').value))) {
				alert( 'Per favore, inserisci un indirizzo e-mail Commerciale valido.');
				return false;
			}
	if( !(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,4})+$/.test(document.getElementById('emailamm_target').value))) {
				alert( 'Per favore, inserisci un indirizzo e-mail Amministrativo valido.');
				return false;
			}
	if (!document.getElementById('agreed_field').checked) {
				alert( "Devi accettare i Termini del Servizio." );
				return false;
			}
	if( !isvalid) {
			alert("Per favore, fai attenzione che il modulo sia completo e valido." );
			}else{
			dojo.xhrPost( { // 
					 url: "verifica_unicita.php", 
					 handleAs: "text",

					timeout: 10000, // Time in milliseconds

					load: function(response, ioArgs, unico) { // 
						    if (response == '0')
						    {
								dojo.xhrPost( { // 
										url: "verifica_registrazione.php", 
										handleAs: "text",

										timeout: 10000, // Time in milliseconds

										load: function(response, ioArgs) { // 
											var mainPage= dojo.byId("MainPage");
											mainPage.innerHTML=response;
											dojo.parser.parse(mainPage)
											return response; 
										},
											error: function(response, ioArgs) { // 
											//dijit.byId("rightPanel").setContent(response); 
											alert("HTTP status code: ", ioArgs.xhr.status); // 
											return response; // 
										},
										content: {provincia: document.getElementById('provincia').value, azienda: document.getElementById('azienda_target').value, nome: document.getElementById('nome_target').value, cognome: document.getElementById('cognome_target').value, indirizzo: document.getElementById('indirizzo_target').value, citta: document.getElementById('citta_target').value, cap: document.getElementById('cap_target').value, nazione: document.getElementById('nazione_target').value, telefono: document.getElementById('telefono_target').value, fax: document.getElementById('fax_target').value, emailcom: document.getElementById('emailcom_target').value, emailamm: document.getElementById('emailamm_target').value, piva: document.getElementById('partita_iva_target').value, cfiscale: document.getElementById('codicefiscale_target').value, sito: document.getElementById('sito_target').value}
								});	
								


						    }else { 
							
							alert ("Registrazione gia effettuata in precedenza");
							}				
							return response; 
					},
					error: function(response, ioArgs) { // 
						//dijit.byId("rightPanel").setContent(response); 
						alert("HTTP status code: ", ioArgs.xhr.status); // 
						return response; // 
					},
					content: {piva: document.getElementById('partita_iva_target').value}
			});

			}

		
}
function inviaregistrazione(){
			document.getElementById('invia_registrazione').disabled = true;
			dojo.xhrPost( { // 
					 url: "invia_mail.php", 
					 handleAs: "text",

					timeout: 10000, // Time in milliseconds

					load: function(response, ioArgs) { // 
						    var mainPage= dojo.byId("MainPage");
						    mainPage.innerHTML=response;
							dojo.parser.parse(mainPage)
							return response; 
					},
					error: function(response, ioArgs) { // 
						//dijit.byId("rightPanel").setContent(response); 
						alert("HTTP status code: ", ioArgs.xhr.status); // 
						return response; // 
					},
					content: {provincia: document.getElementById('provincia_target').value, azienda: document.getElementById('azienda_target').value, nome: document.getElementById('nome_target').value, cognome: document.getElementById('cognome_target').value, indirizzo: document.getElementById('indirizzo_target').value, citta: document.getElementById('citta_target').value, cap: document.getElementById('cap_target').value, nazione: document.getElementById('nazione_target').value, telefono: document.getElementById('telefono_target').value, fax: document.getElementById('fax_target').value, emailcom: document.getElementById('emailcom_target').value, emailamm: document.getElementById('emailamm_target').value, piva: document.getElementById('partita_iva_target').value, cfiscale: document.getElementById('codicefiscale_target').value, sito: document.getElementById('sito_target').value}
			});	

}

// recupero e gestisco la risposta inviata dal server
function gestisci_risposta() {
	if(http_req.readyState == 4) {
		var risultato = http_req.responseText;
		esito=risultato.substring(0,1);
		//alert(risultato.substring(1,risultato.indexOf("#")));
		//pippo=risultato.substring(1,risultato.indexOf("#"));
		//alert(pippo);
		accesso=risultato.substring(1,risultato.indexOf("#"));
		switch (esito) {
		  case '1':
			alert('username e/o password non corretti');
		  break;

		  case '2':
	      window.onbeforeunload = '';
		  location.reload();
		  cambia(accesso);

		  break;

		  default:
			  location.reload();
			//alert('Risposta del server non riconosciuta: ' + esito);
		  break;
		}
	}
}
