var readyState = {
	INATTIVO:		0,
	INIZIALIZZATO:	1,
	RICHIESTA:		2,
	RISPOSTA:		3,
	COMPLETATO:		4
};
		
var statusText = new Array();
	statusText[100] = "Continue";
	statusText[101] = "Switching Protocols";
	statusText[200] = "OK";
	statusText[201] = "Created";
	statusText[202] = "Accepted";
	statusText[203] = "Non-Authoritative Information";
	statusText[204] = "No Content";
	statusText[205] = "Reset Content";
	statusText[206] = "Partial Content";
	statusText[300] = "Multiple Choices";
	statusText[301] = "Moved Permanently";
	statusText[302] = "Found";
	statusText[303] = "See Other";
	statusText[304] = "Not Modified";
	statusText[305] = "Use Proxy";
	statusText[306] = "(unused, but reserved)";
	statusText[307] = "Temporary Redirect";
	statusText[400] = "Bad Request";
	statusText[401] = "Unauthorized";
	statusText[402] = "Payment Required";
	statusText[403] = "Forbidden";
	statusText[404] = "Not Found";
	statusText[405] = "Method Not Allowed";
	statusText[406] = "Not Acceptable";
	statusText[407] = "Proxy Authentication Required";
	statusText[408] = "Request Timeout";
	statusText[409] = "Conflict";
	statusText[410] = "Gone";
	statusText[411] = "Length Required";
	statusText[412] = "Precondition Failed";
	statusText[413] = "Request Entity Too Large";
	statusText[414] = "Request-URI Too Long";
	statusText[415] = "Unsupported Media Type";
	statusText[416] = "Requested Range Not Satisfiable";
	statusText[417] = "Expectation Failed";
	statusText[500] = "Internal Server Error";
	statusText[501] = "Not Implemented";
	statusText[502] = "Bad Gateway";
	statusText[503] = "Service Unavailable";
	statusText[504] = "Gateway Timeout";
	statusText[505] = "HTTP Version Not Supported";
	statusText[509] = "Bandwidth Limit Exceeded";

function prendiElementoDaId(id_elemento) {
	var elemento;
	if(document.getElementById)
		elemento = document.getElementById(id_elemento);
	else
		elemento = document.all[id_elemento];	
	return elemento;
}


function assegnaXMLHttpRequest() {
	var XHR = null,
	browserUtente = navigator.userAgent.toUpperCase();
	
	if(typeof(XMLHttpRequest) === "function" || typeof(XMLHttpRequest) === "object")
		XHR = new XMLHttpRequest();
	else if(window.ActiveXObject && browserUtente.indexOf("MSIE 4") < 0) {
		if(browserUtente.indexOf("MSIE 5") < 0)
			XHR = new ActiveXObject("Msxml2.XMLHTTP");
		else
			XHR = new ActiveXObject("Microsoft.XMLHTTP");
	}
	
	return XHR;
} 

function mettiModello(id,idSel) {

  var
    // assegnazione oggetto XMLHttpRequest
    ajax = assegnaXMLHttpRequest(),
    // assegnazione elemento del documento
    elemento = prendiElementoDaId("modelli");
        
  // se l'oggetto XMLHttpRequest non è nullo
  if(ajax) {

    // impostazione richiesta asincrona in GET
    // del file specificato
    ajax.open("post", "viewModels.php", true);
    
    // imposto il giusto header
	//ajax.setRequestHeader("Content-Type","text/html; charset=iso-8859-1"); 
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    ajax.setRequestHeader ("Charset", "text/plain");


    // rimozione dell'header "connection" come "keep alive"
    ajax.setRequestHeader("connection", "close");

    // impostazione controllo e stato della richiesta
    ajax.onreadystatechange = function() {
      
      // verifica dello stato
      if(ajax.readyState === readyState.COMPLETATO) {
        // verifica della risposta da parte del server
        if(statusText[ajax.status] === "OK")
          // operazione avvenuta con successo
          elemento.innerHTML = ajax.responseText;
        else {
          // errore di caricamento
          elemento.innerHTML = "Impossibile effettuare l'operazione richiesta.<br />";
          elemento.innerHTML += "Errore riscontrato: " + statusText[ajax.status];
        }
      } 
    }

    // effettuo la richiesta inviando la variabile leggi con contenuto Dante
	ajax.send("idMarca="+id+"&idSel="+idSel); 
  }
   
} 

function mettiComune(id,idSel) {

  var
    // assegnazione oggetto XMLHttpRequest
    ajax = assegnaXMLHttpRequest(),
    // assegnazione elemento del documento
    elemento = prendiElementoDaId("comuni");
    
  // se l'oggetto XMLHttpRequest non è nullo
  if(ajax) {

    // impostazione richiesta asincrona in GET
    // del file specificato
    ajax.open("post", "viewPlaces.php", true);
    
    // imposto il giusto header
	//ajax.setRequestHeader("Content-Type","text/html; charset=iso-8859-1"); 
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    ajax.setRequestHeader ("Charset", "text/plain");


    // rimozione dell'header "connection" come "keep alive"
    ajax.setRequestHeader("connection", "close");

    // impostazione controllo e stato della richiesta
    ajax.onreadystatechange = function() {
      
      // verifica dello stato
      if(ajax.readyState === readyState.COMPLETATO) {
        // verifica della risposta da parte del server
        if(statusText[ajax.status] === "OK")
          // operazione avvenuta con successo
          elemento.innerHTML = ajax.responseText;
        else {
          // errore di caricamento
          elemento.innerHTML = "Impossibile effettuare l'operazione richiesta.<br />";
          elemento.innerHTML += "Errore riscontrato: " + statusText[ajax.status];
        }
      } 
    }

    // effettuo la richiesta inviando la variabile leggi con contenuto Dante
	ajax.send("idProvincia="+id+"&idSel="+idSel); 
  }
   
} 

function prendiElementoDaId(id_elemento) {
	var elemento;
	
	if(document.getElementById)
		elemento = document.getElementById(id_elemento);
	else
		elemento = document.all[id_elemento];
		
	return elemento;
}


function validaAnnuncio(categoria,titolo,costoIntero,costoVirgola,comune,spedizione,pagamento,via,civico){

	var 
		elemento = prendiElementoDaId("bottone"),
		bottoni ="<br><input name=\"Submit\" type=\"button\" value=\"Valida\" onClick=\"validaAnnuncio(categoria.value,titolo.value,costoIntero.value,costoVirgola.value,comune.value,spedizione.value,pagamento.value,via.value,civico.value);\">"+
                 "<input name=\"Submit2\" type=\"reset\" value=\"Annulla\"></font>",
		errore = "<font color=red>";
		
	
	if (categoria==0) {
		errore+="E' necessario inserire la categoria.";
	} else if (titolo.length<2){
		errore+="E' necessario inserire il titolo.";	
	} else if (isNaN(costoIntero) || isNaN(costoVirgola) || costoIntero.length < 1 || costoVirgola.length < 1) {
		errore+="E' necessario inserire il costo correttamente.";	
	} else if (via.length<3){
		errore+="E' necessario inserire l'indirizzo.";	
	} else if (civico.length<1){
		errore+="E' necessario inserire il numero civico.";	
	} else if (comune==0) {
		errore+="E' necessario inserire il comune di riferimento.";	
	} else if (spedizione==0) {
		errore+="E' necessario inserire le modalità di spedizione.";	
	} else if (pagamento==0) {
		errore+="E' necessario inserire le modalità di pagamento.";	
	} else {
		elemento.innerHTML="<input name=\"Submit\" type=\"submit\" value=\"Inserisci\">";
		return;	
	}
	
	elemento.innerHTML=errore+bottoni;
	 
}

function validaAnnuncioFast(categoria,titolo,costoIntero,costoVirgola,comune,spedizione,pagamento,via,civico,eMail,nome,pwd1,pwd2){

	var 
		elemento = prendiElementoDaId("bottone"),
		bottoni ="<br><input name=\"Submit\" type=\"button\" value=\"Valida\" onClick=\"validaAnnuncioFast(categoria.value,titolo.value,costoIntero.value,costoVirgola.value,comune.value,spedizione.value,pagamento.value,via.value,civico.value,eMail.value,nome.value,pwd1.value,pwd2.value);\">"+
                 "<input name=\"Submit2\" type=\"reset\" value=\"Annulla\"></font>",
		errore = "<font color=red>";
		
	
	if (categoria==0) {
		errore+="E' necessario inserire la categoria.";
	} else if (titolo.length<2){
		errore+="E' necessario inserire il titolo.";	
	} else if (isNaN(costoIntero) || isNaN(costoVirgola) || costoIntero.length < 1 || costoVirgola.length < 1) {
		errore+="E' necessario inserire il costo correttamente.";	
	} else if (via.length<3){
		errore+="E' necessario inserire l'indirizzo.";	
	} else if (civico.length<1){
		errore+="E' necessario inserire il numero civico.";	
	} else if (comune==0) {
		errore+="E' necessario inserire il comune di riferimento.";	
	} else if (spedizione==0) {
		errore+="E' necessario inserire le modalità di spedizione.";	
	} else if (pagamento==0) {
		errore+="E' necessario inserire le modalità di pagamento.";	
	} else if (eMail.length<5) {
		errore+="E' necessario inserire l'e-Mail.";	
	} else {
		verificaUtenza(nome,pwd1,pwd2)
		return;	
	}
	
	elemento.innerHTML=errore+bottoni;
	 
}

function verificaUtenza(nome,pwd1,pwd2) {

  var
    // assegnazione oggetto XMLHttpRequest
    ajax = assegnaXMLHttpRequest(),
    // assegnazione elemento del documento
    elemento = prendiElementoDaId("bottone");
    
  // se l'oggetto XMLHttpRequest non è nullo
  if(ajax) {

    // impostazione richiesta asincrona in GET
    // del file specificato
    ajax.open("post", "verificaUtenza.php", true);
		
    // imposto il giusto header
	//ajax.setRequestHeader("Content-Type","text/html; charset=iso-8859-1"); 
	ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    ajax.setRequestHeader ("Charset", "text/plain");


    // rimozione dell'header "connection" come "keep alive"
    ajax.setRequestHeader("connection", "close");

    // impostazione controllo e stato della richiesta
    ajax.onreadystatechange = function() {
      
      // verifica dello stato
      if(ajax.readyState === readyState.COMPLETATO) {
        // verifica della risposta da parte del server
        if(statusText[ajax.status] === "OK") {
          elemento.innerHTML = ajax.responseText;
    	} else {
          // errore di caricamento
          elemento.innerHTML = "Impossibile effettuare l'operazione richiesta.<br />";
          elemento.innerHTML += "Errore riscontrato: " + statusText[ajax.status];
        }
      } 
    }

    // effettuo la richiesta inviando la variabile leggi con contenuto Dante
	ajax.send("nome="+nome+"&pwd1="+pwd1+"&pwd2="+pwd2); 
  }
  
} 

function validaClub(nome,pwd){

	var 
		elemento = prendiElementoDaId("bottone"),
		bottoni ="<br><input name=\"Submit\" type=\"button\" value=\"Valida\" onClick=\"validaClub(nome.value,pwd.value);\">"+
                 "<input name=\"Submit2\" type=\"reset\" value=\"Annulla\"></font>",
		errore = "<font color=red>";	
	
	if (nome.length<2){
		errore+="E' necessario inserire almeno il nome del Club.";	
	} else if (pwd!='41298462134'){
		errore+="E' necessario inserire la password di invito corretta.";	
	} else {
		elemento.innerHTML="<input name=\"Submit\" type=\"submit\" value=\"Inserisci\">";
		return;	
	}
	
	elemento.innerHTML=errore+bottoni; 
}

function validaScambioBanner(nome,url){

	var 
		elemento = prendiElementoDaId("bottone"),
		bottoni ="<br><input name=\"Submit\" type=\"button\" value=\"Valida\" onClick=\"validaScambioBanner(nome.value,url.value);\">"+
                 "<input name=\"Submit2\" type=\"reset\" value=\"Annulla\"></font>",
		errore = "<font color=red>";	
	
	if (nome.length<2){
		errore+="E' necessario inserire almeno il nome del sito.";	
	} else if (url.length<8){
		errore+="E' necessario inserire l'url del sito.";	
	} else {
		elemento.innerHTML="<input name=\"Submit\" type=\"submit\" value=\"Inserisci\">";
		return;	
	}
	
	elemento.innerHTML=errore+bottoni; 
}
