//var strflighturl = "http://localhost/InstantConfirmation/ft_destinations/"; // XML File Path
var strflighturl = "/ft_destinations/"; // XML File Path
var objCountry;
var objCity;

function toggleList(objtarget, strLan)
{
    try
    {
	    el = document.getElementById(objtarget);
	    el.style.display = (el.style.display != 'block' ? 'block' : 'none' );
	    if (el.style.display == 'block')
	    {	
		    flightLoadCountry(objtarget, strLan);
	    }
	 }
	 catch(e)
	 {
	    alert('error on toggleList : ' + e);
	 }
}
 
function flightClearDDL(objtarget, myNewItem)
{
    try
    {
		for (i = objtarget.length; i >= 0; i--)
		{
			objtarget.options[i] = null;
		}
	
		var NewOption = new Option(myNewItem,"", false, false );
		objtarget.options[0] = NewOption;
    }
    catch(e)
    {
        alert('error on flightClearDDL : ' + e);
    }
};

function flightLoadCountry(objtarget, strLan)
{	
    try
    {
	    if( typeof(strLan) == 'undefined' )
	    {
		    strLan = 'en-US';
	    }
    	
	    var myCountry = null;
	    var objCity = null;
	    if (objtarget =='divCityListDepart')
	    {
	        objCountry = document.getElementById('Depart_CountryList');
            myCountry = 'Country/CountryDepart';
            objCity = document.getElementById('Depart_CityList');
	    }
	    else if (objtarget =='divCityListReturn')
	    {
	        objCountry = document.getElementById('Return_CountryList');
            myCountry = 'Country/CountryReturn';
            objCity = document.getElementById('Return_CityList');
	    }
	    else if (objtarget =='divCityListDepartFH')
	    {
	        objCountry = document.getElementById('Depart_CountryListFH');
            myCountry = 'Country/CountryDepart';
            objCity = document.getElementById('Depart_CityListFH');
	    }
	    else if (objtarget =='divCityListReturnFH')
	    {
	        objCountry = document.getElementById('Return_CountryListFH');
            myCountry = 'Country/CountryReturn';
            objCity = document.getElementById('Return_CityListFH');
	    }

	    flightClearDDL(objCountry, 'Loading...');
	    flightClearDDL(objCity, 'Select City');

	    httpflight.open("GET", strflighturl + strLan + '/' + myCountry + ".xml", true);
	    httpflight.onreadystatechange = flightHandleCountryHttpResponse;
	    httpflight.send(null);
	    
    }
    catch(e)
    {
        alert('error on flightLoadCountry : ' + e);
    }
};

function flightHandleCountryHttpResponse()
{ 
    try
    {
	    if (httpflight.readyState == 4)
	    {

		    var xmlDocument		 = httpflight.responseXML;		        
		    var myDataLength	 = xmlDocument.getElementsByTagName('Country').length - 1;
            
		    for (i = 0; i <= myDataLength; i++)
		    {
			    var CountryID	= xmlDocument.getElementsByTagName('CountryID').item(i).firstChild.data;   
			    var CountryName	= xmlDocument.getElementsByTagName('CountryName').item(i).firstChild.data;     	
			    var CountryDefault = xmlDocument.getElementsByTagName('CountryID').item(i).getAttribute("Default");   

			    var NewOption	= new Option( CountryName,CountryID, false, false );
    						
			    objCountry.options[i] = NewOption;	

			    //if (CountryDefault == '1')					
			    //{
				//    objCountry.selectedIndex = i;
			    //}
		    }
  	    }
    }
    catch(e)
    {
        alert('error on flightHandleCountryHttpResponse : ' + e)
    }
};

function flightLoadCity(objkey, objtarget, strLan)
{	
    try
    {
        if (objkey == '0')
        {
            flightClearDDL(objCity, 'Select City');
        }
        else
        {
	        if( typeof(strLan) == 'undefined' )
	        {
		        strLan = 'en-US';
	        }    

	        var myCity = null;
	        if (objtarget =='divCityListDepart')
	        {
                objCity = document.getElementById('Depart_CityList');
                myCity = 'City/CityDepart_' + objkey;
	        }
	        else if (objtarget =='divCityListReturn')
	        {
                objCity = document.getElementById('Return_CityList');
                myCity = 'City/CityReturn_' + objkey;
	        }
	        else if (objtarget =='divCityListDepartFH')
	        {
                objCity = document.getElementById('Depart_CityListFH');
                myCity = 'City/CityDepart_' + objkey;
	        }
	        else if (objtarget =='divCityListReturnFH')
	        {
                objCity = document.getElementById('Return_CityListFH');
                myCity = 'City/CityReturn_' + objkey;
	        }
        
 	        flightClearDDL(objCity, 'Loading...');

	        httpflight.open("GET", strflighturl + strLan + '/' + myCity + ".xml", true);
	        httpflight.onreadystatechange = flightHandleCityHttpResponse;
	        httpflight.send(null);
        }
    }
    catch(e)
    {
        alert('error on flightLoadCity : ' + e);
    }
};

function flightHandleCityHttpResponse()
{ 
    try
    {
	    if (httpflight.readyState == 4)
	    {

		    var xmlDocument		 = httpflight.responseXML;		        
		    var myDataLength	 = xmlDocument.getElementsByTagName('City').length - 1;
            
		    for (i = 0; i <= myDataLength; i++)
		    {
			    var CityID	= xmlDocument.getElementsByTagName('CityID').item(i).firstChild.data;   
			    var CityName	= xmlDocument.getElementsByTagName('CityName').item(i).firstChild.data;     	
			    var CityDefault = xmlDocument.getElementsByTagName('CityID').item(i).getAttribute("Default");   

			    var NewOption	= new Option( CityName,CityID, false, false );
    						
			    objCity.options[i] = NewOption;	

			    if (CityDefault == '1')					
			    {
				    objCity.selectedIndex = i;
			    }
		    }
  	    }
    }
    catch(e)
    {
        alert('error on flightHandleCityHttpResponse : ' + e)
    }
};


function flightGetHTTPObject()
{
	var xmlhttp; 
	if (!xmlhttp && typeof XMLHttpRequest != 'undefined')
	{
		try
		{ 
			xmlhttp = new XMLHttpRequest();
		}
		catch (e)
		{ 
			xmlhttp = false;
		}
	}
	return xmlhttp;
};

var httpflight = flightGetHTTPObject(); 

function SelectCity(objtarget, objsource, objdivtarget)
{
    try
    {
        mytarget = document.getElementById(objtarget);
        mysource = document.getElementById(objsource);
        if (mysource.value == '')
        {
            alert("Please select a city.")
        } 
        else
        {
            mytarget.value = mysource.value;
            toggleList(objdivtarget, 'en-US');
        }
    }
    catch(e)
    {
        alert('error on SelectCity : ' + e)
    }
 
};


