
	
	var xmlhttp
	var req;
	var contatore;
	contatore=0;
	var valore_provincia;
	var valore_comune;
	var valore_zona;
	
	function chiamata(indirizzo){
			//disattivo select fino a quando non carica

			cambia_stato_select(0);
		
			valore_provincia=0;
			valore_comune=0;
			valore_zona=0;
			
			if ((document.form1.provincia.selectedIndex)>=0) valore_provincia=document.form1.provincia.options[document.form1.provincia.selectedIndex].value;
			if ((valore_provincia=='')&&(document.form1.provincia_ricevuta.value!='')) valore_provincia=document.form1.provincia_ricevuta.value;
			
			if ((document.form1.comune.selectedIndex)>=0) valore_comune=document.form1.comune.options[document.form1.comune.selectedIndex].value;
			if ((valore_comune=='')&&(document.form1.comune_ricevuta.value!='')) valore_comune=document.form1.comune_ricevuta.value;
						
			if ((document.form1.zona.selectedIndex)>=0) valore_zona=document.form1.zona.options[document.form1.zona.selectedIndex].value;	
			if ((valore_zona=='')&&(document.form1.zona_ricevuta.value!='')) valore_zona=document.form1.zona_ricevuta.value;
			

			loadXMLDoc(indirizzo);	
	}
	
	function loadXMLDoc(indirizzo) {
		req = false;
	    // branch for native XMLHttpRequest object
	    if(window.XMLHttpRequest && !(window.ActiveXObject)) {
	    	try {
				req = new XMLHttpRequest();
	        } catch(e) {
				req = false;
	        }
	    // branch for IE/Windows ActiveX version
	    } else if(window.ActiveXObject) {
	       	try {
	        	req = new ActiveXObject("Msxml2.XMLHTTP");
	      	} catch(e) {
	        	try {
	          		req = new ActiveXObject("Microsoft.XMLHTTP");
	        	} catch(e) {
	          		req = false;
	        	}
			}
	    }
		if(req) {
			
			
			req.onreadystatechange = xmlhttpChange;
			indirizzo=indirizzo + "?provincia=" + valore_provincia;		
			indirizzo=indirizzo + "&comune=" + valore_comune;		
			indirizzo=indirizzo + "&zona=" + valore_zona;	
			
			indirizzo=indirizzo + "&nocache=" + Math.random();				
			req.open("GET", indirizzo, true);	
			req.send("");			
		}
	}
	
	function xmlhttpChange()
	{
	// if xmlhttp shows "loaded"
	if (req.readyState==4)
	  {
	  //OK
	  if (req.status==200)
	    {	    	
			visualizzaRisultatiTesto(req.responseText)			
			//attivo select
			cambia_stato_select(1);			
	    }
	  else
	    {
	    alert("There was a problem retrieving the XML data:\n" +
	                req.statusText);
	    }
	  }
	}
	
	function visualizzaRisultatiTesto(testo){
		var valore_selezionato;	
		famiglie=testo.split("|");
		provincia=famiglie[0].split(",");	
		comune=famiglie[1].split(",");	
		zona=famiglie[2].split(",");
		
		selezionato=false;
		if (valore_provincia=="") selezionato=true;
		aggiungi_tendina(document.form1.provincia,"Seleziona una provincia",0,selezionato);			
		
		for (var i = 0; i < provincia.length; i++) {
					provincia_interno=provincia[i].split("*");
					provincia_id=provincia_interno[0];
					provincia_nome=provincia_interno[1];
					if (provincia_id!=""){
						selezionato=false;
						if (valore_provincia==provincia_id) selezionato=true;												
						aggiungi_tendina(document.form1.provincia,provincia_nome,provincia_id,selezionato);				
					}
		}
		contatore=0;
	
	//	
		for( nOpt=0;nOpt=document.form1.comune.length;nOpt++) {   document.form1.comune[0] = null   }		
		selezionato=false;
		if (valore_comune=="") selezionato=true;
		aggiungi_tendina(document.form1.comune,"Tutte i comuni",0,selezionato);	
		
			for (var i = 0; i < comune.length; i++) {				
					comune_interno=comune[i].split("*");					
					comune_id=comune_interno[0];
					comune_nome=comune_interno[1];					
					if (comune_id!=""){							
							selezionato=false;					
							if (valore_comune==comune_id) selezionato=true;
							aggiungi_tendina(document.form1.comune,comune_nome,comune_id,selezionato);				
					}
					
//					if (valore_comune!=valore_selezionato){	///svuoto le zone se ho cambiato provincia
//						 valore_zona=0;
//						 for(var ix = 0; ix < zona.length; ix++) {   zona[ix] = ""   }							 
//					}	 
					
			}
		contatore=0;
			
		for( nOpt=0;nOpt=document.form1.zona.length;nOpt++) {   document.form1.zona[0] = null   }		
		selezionato=false;
		if (valore_zona=="") selezionato=true;
		aggiungi_tendina(document.form1.zona,"Tutte le zone",0,selezionato);	
		
			for (var i = 0; i < zona.length; i++) {
						zona_interno=zona[i].split("*");
						zona_id=zona_interno[0];
						zona_nome=zona_interno[1];
		
						if (zona[i]!=""){						
								selezionato=false;
								if (valore_zona==zona_id) selezionato=true;						
								aggiungi_tendina(document.form1.zona,zona_nome,zona_id,selezionato);				
						}		
			}
			contatore=0;
			
		}
		
	function visualizzaRisultati(xmlDoc) {	//// per xml
		
		var nodo = xmlDoc.getElementsByTagName("moto");						
		for (var i = 0; i < nodo.length; i++) {				
				nodo_interno = nodo[i];
				var provincia = nodo_interno.getElementsByTagName("provincia")[0];
				var provincia_codice = nodo_interno.getElementsByTagName("provincia_codice")[0];
				alert(provincia.childNodes[0].nodeValue);
				aggiungi_tendina(provincia.childNodes[0].nodeValue,provincia_codice.childNodes[0].nodeValue)
		}
	}
	
	function aggiungi_tendina(oggetto_select,valore,codice,selezionato)
	{
		oggetto_select.options[contatore]=new Option(valore, codice, selezionato	, selezionato);
		contatore++;
	}	
	
	function cambia_stato_select(attivo){
		if (attivo==1){
				document.form1.provincia.disabled=false;
				document.form1.comune.disabled=false;
				document.form1.zona.disabled=false;
		}
		else
			{
				
		//		form1.provincia.options[0].text="Attendere..";
		//		form1.provincia.selectedIndex=0;
				document.form1.provincia.disabled=true;

//				form1.comune.options[0].text="Attendere..                    ";
//				form1.comune.selectedIndex=0;
				document.form1.comune.disabled=true;
				
//				form1.zona.options[0].text="Attendere..                       ";
//				form1.zona.selectedIndex=0;
				document.form1.zona.disabled=true;
		}				
	}


