var myRequest = null;
var mySezione = '';
myFase=1;
ricarica=0;

function CreateXmlHttpReq(handler) {
	var xmlhttp = null;
	try {
		xmlhttp = new XMLHttpRequest();
	} catch(e) {
		try {
			xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
		} catch(e) {
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
	xmlhttp.onreadystatechange = handler;
	return xmlhttp;
}

function change_menu_box(fase,stringa)
{
	myRequestSelect = CreateXmlHttpReq(fillSelect);
	myRequestSelect.open("POST", "/fillSelect.php", true);
	myRequestSelect.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	if (fase=='2')
		dag = "&sloc="+escape(document.getElementById('sel2').options[document.getElementById('sel2').selectedIndex].innerHTML);
	else
		dag = '';
		
	var body="fase="+fase+"&stringa="+escape(stringa)+dag;

	myFase = fase;
	myRequestSelect.setRequestHeader("Content-length", body.length);
	myRequestSelect.setRequestHeader("Connection", "close");
	myRequestSelect.send(body);
	
}

function fillSelect() {
	if (myRequestSelect.readyState == 4 && myRequestSelect.status == 200) {
		switch(myFase)
		{
				case '1':
					eProv = document.getElementById('sel2');
					all_all = myRequestSelect.responseText.split('[DEF]');
					listaprov = all_all[0];
					if(eProv.options)
						eProv.options.length=0;
					lp = listaprov.split('---');
					provsel='';
					indicere=0;
					
					if(all_all[1] && id_pro=='')
					{
						id_pro = all_all[1];
					}
					
					if(lp.length>0)
					{
						for (k=0;k<lp.length;k++)
						{
							dp = lp[k].split('XXX');
							if (id_pro != '' && dp[0] == id_pro)
							{
								provsel=dp[0];
								indicere=k;
								eProv.options[k] = new Option(dp[1],dp[0]);
							}
							else
								eProv.options[k] = new Option(dp[1],dp[0]);
						}

						if(provsel=='')
						{
							ddp=lp[0].split('XXX');
							provsel = ddp[0];
						}
						eProv.options.selectedIndex=indicere;
						change_menu_box('2',provsel);
					}
					break;

				case '2':
					eLoc = document.getElementById('sel3');
					listaloc = myRequestSelect.responseText;
					
					all_all2 = myRequestSelect.responseText.split('[DEF]');
					listaprov = all_all2[0];
					if(eLoc.options)
						eLoc.options.length=0;
					ll = listaprov.split('---');
					indiceloca=0;
					
					if(all_all2[1] && id_loca=='')
					{
						id_loca = all_all2[1];
					}
					
					if(ll.length>0)
					{
						for (k=0;k<ll.length;k++)
						{
							dp = ll[k].split('XXX');
							if(id_loca != '' && dp[0] == id_loca)
							{
								indiceloca=k;
								eLoc.options[k] = new Option(dp[1],dp[0]);
							}
							else
								eLoc.options[k] = new Option(dp[1],dp[0]);
						}
						
						eLoc.options.selectedIndex=indiceloca;
						if(ricarica)	
							location.href='/meteo/'+escape(eLoc.options[eLoc.selectedIndex].text.toLowerCase());
					}
					break;
		}
		return true;
	}
}

function change_menu_box2(fase,stringa)
{
	myRequestSelect = CreateXmlHttpReq(fillSelect2);
	myRequestSelect.open("POST", "/fillSelectEstero.php", true);
	myRequestSelect.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	var body="fase="+fase+"&stringa="+escape(stringa);
	myFase = fase;
	myRequestSelect.setRequestHeader("Content-length", body.length);
	myRequestSelect.setRequestHeader("Connection", "close");
	myRequestSelect.send(body);
	
}

function fillSelect2() {
	if (myRequestSelect.readyState == 4 && myRequestSelect.status == 200) {
		switch(myFase)
		{
				case '1':
					eProv = document.getElementById('sel2e');

                    all_all = myRequestSelect.responseText.split('[DEF]');
                    listaprov = all_all[0];
                    if(eProv.options)
                            eProv.options.length=0;
                    lp = listaprov.split('---');
                    provsel='';
                    indicere=0;


                    if(all_all[1] && id_stato=='')
                    {
                            id_stato = all_all[1];
                    }

					indicestato=0;
					if(lp.length>0)
					{
						for (k=0;k<lp.length;k++)
						{
							dp = lp[k].split('xXx');
							if (id_stato != '' && dp[0].toString() === id_stato.toString())
							{
								provsel=dp[0].toString();
								id_stato = dp[0];
								indicestato=k;
								eProv.options[k] = new Option(dp[1],dp[0]);
							}
							else
								eProv.options[k] = new Option(dp[1],dp[0]);
						}

						if(provsel=='')
						{
							dp=lp[0].split('xXx');
							provsel = dp[0];
						}
						
						eProv.options.selectedIndex=indicestato;
							change_menu_box2('2',provsel);
					}
					break;

				case '2':
					eLoc = document.getElementById('sel3e');

                    all_all2 = myRequestSelect.responseText.split('[DEF]');

//alert(myRequestSelect.responseText);
                    listaloc = all_all2[0];
                    if(eLoc.options)
                            eLoc.options.length=0;
                    ll = listaloc.split('---');
                    indiceloca=0;

                    if(all_all2[1] && id_loca=='')
                    {
                            id_loca = all_all2[1];
                    }

					if(ll.length>0)
					{
						for (k=0;k<ll.length;k++)
						{
							dp = ll[k].split('xXx');
							if(id_loca != '' && dp[0] == id_loca)
							{
								eLoc.options[k] = new Option(dp[1],dp[0]);
								indiceloca=k;
							}
							else
								eLoc.options[k] = new Option(dp[1],dp[0]);
						}
						
						eLoc.options.selectedIndex=indiceloca;

						if(decisioni == 'NAZIONE' && ricarica)
						{
							document.fis.action = '/meteoestero/meteo_estero_png.php';
							document.fis.submit();
						}
						else if(ricarica)
						{
							location.href='/meteo/'+escape(document.fis.id.options[document.fis.id.selectedIndex].text)+'/'+escape(document.fis.stato_scelto.options[document.fis.stato_scelto.selectedIndex].text);
							//document.fis.submit();
						}
					}
					break;
		}
	}
}

function myHandler() {
	if (myRequest.readyState == 4 && myRequest.status == 200) {
		if(mySezione.toString() == '2')
		{
			e = document.getElementById("blocco_italiazz");
			e.innerHTML = e.innerHTML + myRequest.responseText;
		}
	}
}

function doPost(sezione){
	myRequest = CreateXmlHttpReq(myHandler);
	myRequest.open("POST", "asincrono.php", true);
	myRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
	var body="sezione="+sezione;
	mySezione = sezione;
	myRequest.setRequestHeader("Content-length", body.length);
	myRequest.setRequestHeader("Connection", "close");
	myRequest.send(body);
}
