
var url = "http://www.dohaairport.com/QADetails.aspx";

var req2 = null;

/* this method will fill the yesterday, today, tomorrow dates in the adv search */
function ajaxDateFillerForAdvSearch()
{	
    req2 = getXmlHttpObject2(); 
    if ( req2 != null )
    {
        req2.onreadystatechange = stateChangedDateFiller;
        req2.open("GET", url, true)
        req2.send(null)
    }
}

/* this will create new xmlhttp object for ajax */
function getXmlHttpObject2()
{
    try
    {
        req2 = new XMLHttpRequest();
    }
    catch (e)
    {
        try
        {
            req2 = new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e)
        {
            req2 = new ActiveXObject("Microsoft.XMLHTTP");
        }
    }
    return req2;
}

/* this is ajax callback method */
function stateChangedDateFiller()
{
    if ( req2.readyState == 4 && req2.status==200 )
    {
        var homePassSelect = getDropdownObject('ddl_pass_date');
        var homeCargoSelect = getDropdownObject('ddl_cargo_date');
        var LHNpassSelect = getDropdownObject('LHN_ddl_pass_date');
        var LHNcargoSelect = getDropdownObject('LHN_ddl_cargo_date');

		/* this following two for adv search in popup */
        var popupPassSelect = getDropdownObject('popup_ddl_pass_date');
        var popupCargoSelect = getDropdownObject('popup_ddl_cargo_date');
        
        if (homePassSelect)
        {
            removeOptions(homePassSelect);
            removeOptions(homeCargoSelect);
        }
        if (popupPassSelect)
        {
            removeOptions(popupPassSelect);
            removeOptions(popupCargoSelect);
        }
        if (LHNpassSelect)
        {
            removeOptions(LHNpassSelect);
            removeOptions(LHNcargoSelect);
        }
        
        var xml = req2.responseXML;
		if( xml == null)
		{
			var text = req2.responseText;      
            if (window.DOMParser)
			{
				parser=new DOMParser();
				xml=parser.parseFromString(text,"text/xml");
			}
		}

        var dates = xml.documentElement.getElementsByTagName("Dates");
        for( i=0; i<dates.length; i++ )
        {
            var date = getNodeText2( dates[i].getElementsByTagName("Date")[0] );
            if (homePassSelect)
            {
                addOptionInDropdown(homePassSelect, date);
                addOptionInDropdown(homeCargoSelect, date);
            }
            if (popupPassSelect)
            {
                addOptionInDropdown(popupPassSelect, date);
                addOptionInDropdown(popupCargoSelect, date);
            }
            if (LHNpassSelect)
            {
                addOptionInDropdown(LHNpassSelect, date);
                addOptionInDropdown(LHNcargoSelect, date);
            }
        }
        
        if (homePassSelect)
        {
            homePassSelect.selectedIndex = 1;
            homeCargoSelect.selectedIndex = 1;
        }
        if (popupPassSelect)
        {
            popupPassSelect.selectedIndex = 1;
            popupCargoSelect.selectedIndex = 1;
        }
        if (LHNpassSelect)
        {
            LHNpassSelect.selectedIndex = 1;
            LHNcargoSelect.selectedIndex = 1;
        }
    }	
}

/* this is utility method */
function getNodeText2(node)
{
    try
    {
        return node.firstChild.nodeValue;
    }
    catch(e)
    {
        return "&nbsp;";
    }
}

/* this is utility method */
function removeOptions(dropdownObject)
{
    for(i=dropdownObject.length; i>=0; i-- )
    {
        dropdownObject.remove(i);
    }
}

/* this is utility method */
function addOptionInDropdown(dropdownObject, value)
{
    var option = document.createElement("option")  ;
    option.text = value;
    option.value = value ;
    try
    {
        dropdownObject.add(option, null ) ;
    }
    catch ( e )
    {
        dropdownObject.add(option) ;
    }
}

/* this is utility method */
function getDropdownObject(dropdownId)
{
    try
    {
        return document.getElementById(dropdownId);
    }
    catch(  e )
    {
        return false;
    }
}
