// JavaScript Document
var xmlHttp;
var lookingFor;

function getTo(str)
{ 
	if (str.length > 0)
	{ 
		document.getElementById("wait_from").style.visibility="visible";
		var url="getTo.php?q=" + str;
		lookingFor="to";
		xmlHttp=GetXmlHttpObject(stateChanged);
		xmlHttp.open("GET", url , true);
		xmlHttp.send(null);
	} 
	else
	{ 
		document.getElementById("fileSelect").innerHTML='<span class="selectdefault">Select Route Above</span>';
		document.getElementById("from").className='select_now';
		document.getElementById("toSelect").innerHTML='<select name="to" class="select_wait" id="to"><option value="">To</option></select>';
	} 
} 

function getVia(str)
{ 
	if (str.length > 0)
	{ 
		document.getElementById("wait_to").style.visibility="visible";
		var url="getVia.php?q=" + str + "&r=" + document.getElementById("from").value;
		lookingFor="via";
		xmlHttp=GetXmlHttpObject(stateChanged);
		xmlHttp.open("GET", url , true);
		xmlHttp.send(null);
	} 
	else
	{ 
		document.getElementById("fileSelect").innerHTML='<span class="selectdefault">Select Route Above</span>';
	} 
}

function getFile(str)
{ 
	if (str.length > 0)
	{ 
		document.getElementById("wait_via").style.visibility="visible";
		var url="getFile.php?q=" + str + "&r=" + document.getElementById("from").value + "&s=" + document.getElementById("to").value;
		lookingFor="file";
		xmlHttp=GetXmlHttpObject(stateChanged);
		xmlHttp.open("GET", url , true);
		xmlHttp.send(null);
	} 
	else
	{ 
		document.getElementById("fileSelect").innerHTML='<span class="selectdefault">Select Route Above</span>';
	} 
}

function getSpecial(str)
{ 
	if (str.length > 0)
	{ 
		document.getElementById("wait_special").style.visibility="visible";
		var url="getSpecial.php?q=" + str;
		lookingFor="special";
		xmlHttp=GetXmlHttpObject(stateChanged);
		xmlHttp.open("GET", url , true);
		xmlHttp.send(null);
	} 
	else
	{ 
		document.getElementById("specialSelect").innerHTML='<span class="selectdefault">Select Route Above</span>';
		document.getElementById("special").className='select_now';
	} 
} 

function stateChanged() 
{ 
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{
		switch(lookingFor)
		{
			case "to":
				document.getElementById("toSelect").innerHTML=xmlHttp.responseText ;
				document.getElementById("viaSelect").innerHTML='<select name="via" class="select_wait" id="via"><option value="">Via</option></select>';
				document.getElementById("fileSelect").innerHTML='<span class="selectdefault">Select Route Above</span>';
				document.getElementById("wait_from").style.visibility="hidden";
				document.getElementById("from").className='select_done';
				document.getElementById("to").className='select_now';
				document.getElementById("via").className='select_wait';
				break;
			case "via":
				document.getElementById("viaSelect").innerHTML=xmlHttp.responseText ;
				document.getElementById("fileSelect").innerHTML='<span class="selectdefault">Select Route Above</span>';
				document.getElementById("wait_to").style.visibility="hidden";
				document.getElementById("to").className='select_done';
				document.getElementById("via").className='select_now';
				break;
			case "file":
			{
				document.getElementById("fileSelect").innerHTML=xmlHttp.responseText ;
				document.getElementById("wait_via").style.visibility="hidden";
				document.getElementById("via").className='select_done';
				break;
			}
			case "special":
			{
				document.getElementById("specialSelect").innerHTML=xmlHttp.responseText ;
				document.getElementById("wait_special").style.visibility="hidden";
				document.getElementById("special").className='select_done';
				break;
			}
		}
	} 
} 

function GetXmlHttpObject(handler)
{ 
	var objXmlHttp=null
	
	if (navigator.userAgent.indexOf("Opera")>=0)
	{
		alert("This example doesn't work in Opera") 
		return 
	}
	if (navigator.userAgent.indexOf("MSIE")>=0)
	{ 
		var strName="Msxml2.XMLHTTP"
		if (navigator.appVersion.indexOf("MSIE 5.5")>=0)
		{
			strName="Microsoft.XMLHTTP"
		} 
		try
		{ 
			objXmlHttp=new ActiveXObject(strName)
			objXmlHttp.onreadystatechange=handler 
			return objXmlHttp
		} 
		catch(e)
		{ 
			alert("Error. Scripting for ActiveX might be disabled") 
			return 
		} 
	} 
	if (navigator.userAgent.indexOf("Mozilla")>=0)
	{
		objXmlHttp=new XMLHttpRequest()
		objXmlHttp.onload=handler
		objXmlHttp.onerror=handler 
		return objXmlHttp
	}
} 