/*INAH Only*/
function open_slide(name)
{
     if (name == '')
	{

	    //document.getElementById('DIY_IMG').src = '/images/icons/BE/plus.gif';
		//document.getElementById('PACKAGE_IMG').src = '/images/icons/BE/minus.gif';
		//document.getElementById('HOTEL_IMG').src = '/images/icons/BE/plus.gif';
		
		document.getElementById('DIY_IMG').src = '/images/icons/BE/minus.gif';
		document.getElementById('PACKAGE_IMG').src = '/images/icons/BE/plus.gif';
		document.getElementById('HOTEL_IMG').src = '/images/icons/BE/plus.gif';
	}
	else
	{
	    
	    document.getElementById('DIY_IMG').src = '/images/icons/BE/plus.gif';
	    document.getElementById('PACKAGE_IMG').src = '/images/icons/BE/plus.gif';
	    document.getElementById('HOTEL_IMG').src = '/images/icons/BE/plus.gif';
	    
	    document.getElementById(name.toUpperCase() + '_IMG').src = '/images/icons/BE/minus.gif';
	  
	}
	
    if (document.getElementById('divMenu_HOTEL')) displaySection(false, 'divMenu_HOTEL');
    if (document.getElementById('divMenu_PACKAGE')) displaySection(false, 'divMenu_PACKAGE');
    if (document.getElementById('divMenu_DIY')) displaySection(false, 'divMenu_DIY');
    if (document.getElementById('divMenu_HOTDEAL')) displaySection(false, 'divMenu_HOTDEAL');  
    if (document.getElementById('divMenu_CROSSREF')) displaySection(false, 'divMenu_CROSSREF'); 
    
    if (name == '')
        //displaySection(true, "divMenu_PACKAGE");
        displaySection(true, "divMenu_DIY");
    else
        displaySection(true, "divMenu_" + name.toUpperCase());
        
        
    if (name.toUpperCase() == 'DIY')  
        timedCount();
    else  
        displaySection(false, 'divProcessLoading');
}

function getSpecialType(GlobalID)
{
	if (GlobalID == "")		
		return;		
	
	document.getElementById('celSpecialType').innerHTML = document.getElementById('celLoading').innerHTML;					
	document.frmGetSpecialType.CreativeGlobalID.value = GlobalID;	
	document.frmGetSpecialType.submit();				
}

function getHotelAreas(RegionID, Code)
{
	if (RegionID == "" || RegionID == 0)		
		return;			
	
	document.getElementById('celHotelArea').innerHTML = document.getElementById('celLoading').innerHTML;					
	document.frmGetHotelArea.RegionID.value = RegionID;	
	document.frmGetHotelArea.Code.value = Code;			
	document.frmGetHotelArea.submit();				
}
function submitform_hotel()
{  
	if (document.frmHotelSearch.RegionID.value == "" || document.frmHotelSearch.Code.value == "" || document.frmHotelSearch.Code.value == "0")
	{
		alert("Please select a destination.")
		return false;	
	}
   
    var control = document.frmHotelSearch.Code;
    document.frmHotelCreative.Destination.value = control.options[control.selectedIndex].text;	
				
    document.frmHotelCreative.RegionID.value = document.frmHotelSearch.RegionID.value;
    document.frmHotelCreative.Code.value = document.frmHotelSearch.Code.value;
    document.frmHotelCreative.Rating.value = document.frmHotelSearch.Rating.value;		
    document.frmHotelCreative.submit();	    
    return false;		
    
}	
function getPackageAreas(RegionID, Code)
{
	if (RegionID == "" || RegionID == 0)		
		return;	
	
	document.getElementById('celPackageArea').innerHTML = document.getElementById('celLoading').innerHTML;
	document.frmGetPackageArea.RegionID.value = RegionID;	
	document.frmGetPackageArea.Code.value = Code;	
	document.frmGetPackageArea.submit();
}


	
function submitform_package()
{
	if (document.frmPackageSearch.RegionID.value == "" || document.frmPackageSearch.Code.value == "")
	{	
		alert("Please select a destination");
		return false;
	}		
	
    var control = document.frmPackageSearch.Code;
    document.frmPackageCreative.Destination.value = control.options[control.selectedIndex].text;	
	
    document.frmPackageCreative.RegionID.value = document.frmPackageSearch.RegionID.value; 
    document.frmPackageCreative.Code.value = document.frmPackageSearch.Code.value;
	 
    document.frmPackageCreative.StartDate.value = document.frmPackageSearch.StartDate.value;  
    document.frmPackageCreative.Category.value = document.frmPackageSearch.Category.value; 
	
    document.frmPackageCreative.submit(); 
	
    return false;	
						
}			


/*DIY*/
function getToCities(FromCode, ToCode)
{	
	if (FromCode == -1 || FromCode == '0' ||  FromCode == '')
	{	
		alert("Please select a departing city");
		return;
	}	
	displaySection(false, 'divMaxtrix')	;
	
	document.getElementById('celArea').innerHTML = document.getElementById('celLoading').innerHTML;	
	document.frmToCity.FromCity.value = FromCode;	
	document.frmToCity.ToCity.value = ToCode;	
	document.frmToCity.submit();	
	
	document.frmDIYSearch.date1.value = 'dd/mm/yy';
	document.frmDIYSearch.date2.value = 'dd/mm/yy';	
	document.frmDIYSearch.NotFinalStop.value = 0; 
}


function getHotelCities(str)
{
    document.frmDIYSearch.date1.value = 'dd/mm/yy';
	document.frmDIYSearch.date2.value = 'dd/mm/yy';	
	
	document.frmDIYSearch.chkActivity.disabled = false;
	document.frmDIYSearch.chkTransfer.disabled = false;	
	
	document.frmDIYSearch.chkActivity.checked = false;	
	document.frmDIYSearch.chkTransfer.checked = false;
	
	    
	document.getElementById('lblActivity').title = 'Sightseeing Tours, Passes and Experiences';
    document.frmDIYSearch.chkActivity.title = 'Sightseeing Tours, Passes and Experiences';
    
    document.getElementById('lblTransfer').title = 'Airport Transfer';
    document.frmDIYSearch.chkTransfer.title = 'Airport Transfer';    
    
	document.frmDIYSearch.NotFinalStop.value = 0; 	
	
	var arr = str.split(',')
	if (arr.length != 9)
		return;
		
	if (arr[5].toUpperCase() == 'TRUE')		
	{	
		document.frmDIYSearch.NotFinalStop.value = 1 ;
		
		displaySection(true, 'divHotelCity');
		displaySection(false, 'divMaxtrix');
		
		document.frmHotelCity.ToCity.value = arr[0];
		document.frmHotelCity.target = 'ifGetDIY';
		document.frmHotelCity.submit();
		document.getElementById('celHotel').innerHTML = document.getElementById('celLoading').innerHTML;	
	}
	else
	{	
		document.frmDIYSearch.NotFinalStop.value = 0 ;
		displaySection(false, 'divHotelCity');
		displaySection(true, 'divMaxtrix');
	}
	
	document.frmCDP.CDP_fltToCity.value = arr[0];
	document.frmCDP.CDP_htlCity.value = arr[0];
	document.frmCDP.CDP_carrierCodes.value = arr[6].replace(/-/gi,',');
		
	/*if (arr[6].search(/-/gi) > -1)
	    displaySection(true, 'divSearchType');
	else
	    displaySection(false, 'divSearchType');*/
	
		
	if ( !setBoolean(arr[4]))
	{
	    document.frmDIYSearch.chkTransfer.disabled = true;
	    document.frmDIYSearch.chkTransfer.checked = false;		
	}
	
	
	if (arr[7] != '' )
	{
		document.frmCDP.CDP_fltFromDays.value = arr[7].replace(/-/gi,',');
		eval("calDepart.setDisabledWeekDays(" + convertBlockedWeekDayStr(arr[7]) + ")");
	}
	else
	{
		document.frmCDP.CDP_fltFromDays.value = arr[7].replace(/-/gi,',');
		calDepart.setDisabledWeekDays();
	}
	
	if (arr[8] != '' )
	{
		document.frmCDP.CDP_fltToDays.value = arr[8].replace(/-/gi,',');		
		eval("calReturn.setDisabledWeekDays(" + convertBlockedWeekDayStr(arr[8]) + ")");		
	}
	else
	{
		document.frmCDP.CDP_fltToDays.value = arr[8].replace(/-/gi,',');	
		calReturn.setDisabledWeekDays();			
	}	
	
	if (arr[0].toUpperCase() == 'VLI' || arr[0].toUpperCase() == 'HNL')
	{
	    document.frmDIYSearch.chkTransfer.disabled = true;	
	    document.frmDIYSearch.chkTransfer.checked = false;	
	}	
}

function setFITForHotel(str)
{	
    document.frmDIYSearch.date1.value = 'dd/mm/yy';
	document.frmDIYSearch.date2.value = 'dd/mm/yy';	
	
	document.frmDIYSearch.chkActivity.disabled = false;
	document.frmDIYSearch.chkTransfer.disabled = false;	
	
	document.frmDIYSearch.chkActivity.checked = false;	
	document.frmDIYSearch.chkTransfer.checked = false;
	    
	document.getElementById('lblActivity').title = 'Sightseeing Tours, Passes and Experiences';
    document.frmDIYSearch.chkActivity.title = 'Sightseeing Tours, Passes and Experiences';
    
    document.getElementById('lblTransfer').title = 'Airport Transfer';
    document.frmDIYSearch.chkTransfer.title = 'Airport Transfer';    
    
	document.frmDIYSearch.NotFinalStop.value = 0; 	    
	var arr = str.split(',')
	if (arr.length != 7)
		return;	
		
	displaySection(true, 'divMaxtrix')	
	document.frmCDP.CDP_htlCity.value = arr[0];	
	
	//transfer
	if ( !setBoolean(arr[4]))
	{
	    document.frmDIYSearch.chkTransfer.disabled = true;
	    document.frmDIYSearch.chkTransfer.checked = false;		
	}
	
	if ( setBoolean(arr[6]))
	{
	    document.frmDIYSearch.chkTransfer.disabled = true;
	    document.frmDIYSearch.chkTransfer.checked = true;	
	    
	    document.getElementById('lblTransfer').title = 'Airport transfers are compulsory for this destination';
	    document.frmDIYSearch.chkTransfer.title = 'Airport transfers are compulsory for this destination';
	}	
}

function getCreativeDateFormat(theDate)
{
	var dateArr = theDate.split('/');
	return parseInt(dateArr[0],10) + MONTH_NAMES[parseInt(dateArr[1],10) - 1].substring(0,3) + dateArr[2];
}

function setBoolean(value)
{
	if (value.toUpperCase()=='TRUE' || value.toUpperCase()==1 ) 
		return true;
	else
		return false;
}

function getBookingType()
{	
	var type='';	
	type = "F"	;
	/*if (document.getElementById('SearchType_FFH') || document.getElementById('SearchType_FH'))
	    if (document.frmDIYSearch.SearchType_FFH.checked)  type = type + ",F";*/
	if (document.frmDIYSearch.chkTransfer.checked)	type = type + ",T";
	type = type + ",H";
	if (document.frmDIYSearch.chkActivity.checked)	type = type + ",M";
	       
	if (type.lastIndexOf(',') == type.length) type = type.substr(0, len(type)-1)

	return type;	
}

function getRoomMixes()
{
	var numOfAdults = document.frmDIYSearch.adults.value;
	var numOfChildren = document.frmDIYSearch.dynamic_children.value;
	
	var childrenAges;
	if (numOfChildren>0)
		childrenAges = '-' + document.frmDIYSearch.child_age1.value;
	if (numOfChildren>1)
		childrenAges = childrenAges + '-' + document.frmDIYSearch.child_age2.value;
	if (numOfChildren>2)
		childrenAges = childrenAges + '-' + document.frmDIYSearch.child_age3.value;
	if (numOfChildren>3)
		childrenAges = childrenAges + '-' + document.frmDIYSearch.child_age4.value;
	
	if (numOfChildren == 0) 
		return numOfAdults + 'A';
	else
		return numOfAdults + 'A' + numOfChildren + 'C' + childrenAges;
}
function setChildren()
{
	if (document.frmDIYSearch.adults.value > 2 )	
		document.frmDIYSearch.dynamic_children.disabled = true;
	else
		document.frmDIYSearch.dynamic_children.disabled = false;

}
function submitform_DIY()
{	
    
	if (document.frmDIYSearch.FromCity.value == '0' || document.frmDIYSearch.FromCity.value == '') 
	{
		alert('Please select a departure airport.')
		return false;
	}	
		
	if (document.frmDIYSearch.ToCity.value == '0' || document.frmDIYSearch.ToCity.value == '') 
	{	
		alert('Please select a destination airport, rather than a region or a country.')
		return false;	
	}	
		
	if (document.frmDIYSearch.HotelCity )
	{
	    if (document.frmDIYSearch.HotelCity.value == '0' && document.frmDIYSearch.NotFinalStop.value == '1') 
	    {	
		    alert('Please select a hotel destination.')
		    return false;	
	    }	
	}
		
	if (document.frmDIYSearch.NotFinalStop.value == '1' && document.frmDIYSearch.HotelCity.value == '0')
	{
		alert('Please select a hotel location.')
		return false;	
	}		
    
	if(validateDate(document.frmDIYSearch.date1.value)==false)
	{
	  alert("Please enter a valid departure date.");
	  return false;
	}
	
	if(validateDate(document.frmDIYSearch.date2.value)==false)
	{
	  alert("Please enter a valid return date.");
	  return false;
	}
	
	if (dateDiff('frmDIYSearch') > 99 )
	{
	    alert("Maximum stay is 99 days. Please select your departure and/or return dates again.");
	    return false;	
	}
	 
	if(document.frmDIYSearch.adults.value==0)
	{
	  alert("Please specify number of adults.");
	  return false;
	}
	
	if(document.frmDIYSearch.dynamic_children.value!=0)
	{
	    var hasChildAge = true;
	    for (var i=1; i <= document.frmDIYSearch.dynamic_children.value; i ++)
	    {
	        if ( eval('document.frmDIYSearch.child_age' + i).value == 0)
	        {
	            /*if (i == 1)
	                alert("Please specify the age of first child.");
	            else if (i == 2)
	                alert("Please specify the age of second child.");
	            else if (i == 3)
	                alert("Please specify the age of third child.");
	            else if (i == 4)*/
                hasChildAge = false
	          
	        }    
	    }
	    
	    if (!hasChildAge)
	    {
	           alert("Please specify the age of child.");   
	           return false;	       	    
	    }
	}
	
	var HotelCityName, control;	
	if (document.frmDIYSearch.NotFinalStop.value == '1')
	{
		control = document.frmDIYSearch.HotelCity
		HotelCityName = control.options[control.selectedIndex].text;	
	}
	else
	{
		control = document.frmDIYSearch.ToCity
		HotelCityName = control.options[control.selectedIndex].text;	
	}

	
	document.frmCDP.CDP_heading.value = 'Flight + Hotel for ' + HotelCityName;	
	
	document.frmCDP.CDP_bookingType.value = getBookingType();
	document.frmCDP.CDP_package.value = ("Generic_" + getBookingType().replace(/,/gi,'')).toLowerCase();
	
	document.frmCDP.CDP_roomMixes.value = getRoomMixes();
	document.frmCDP.CDP_startDate.value = getCreativeDateFormat(document.frmDIYSearch.date1.value);	
	document.frmCDP.CDP_duration.value = dateDiff('frmDIYSearch');

	document.frmCDP.CDP_fltFromCity.value = document.frmDIYSearch.FromCity.value;	
	//alert(document.frmCDP.CDP_fltToCity.value)
	//alert(document.frmCDP.CDP_fltFromCity.value)
	//alert(document.frmCDP.CDP_htlCity.value)
	document.frmCDP.submit();
	return false;
}	


function convertBlockedWeekDayStr(str)
{
	var arr = str.split('-');
	for (var index=0; index < arr.length; index++)
	   if (arr[index] == '7')		
		arr[index] = 0; 
		
	
	return arr.join(',').toString();
}


function activeEngine(name)
{
    displaySection(false, 'divHotelSearchEngine')	; 
    displaySection(false, 'divPackageSearchEngine')	; 
    displaySection(false, 'divDIYSearchEngine')	; 
    displaySection(false, 'divHotDealSearchEngine')	; 


    displaySection(true, name)	; 
}


function popupBox(control, e, display, ypos)
{
	if (control.childNodes[1].innerHTML.length > 0)
	{
		var posx = 0;
		var posy = 0;
		//var e = window.event;
		//if (e == "undefined") e = window.status ;
		//alert(e);
		if (e.pageX || e.pageY) 	{
			posx = e.pageX 						
			posy = e.pageY;
		}
		else if (e.clientX || e.clientY) 	{						
			posx = e.clientX + document.body.scrollLeft
				+ document.documentElement.scrollLeft;	
			posy = e.clientY + document.body.scrollTop
				+ document.documentElement.scrollTop;
		}	
		
		posy = posy - ypos;	
		
		
					
		
		if (control.childNodes[1].innerHTML.length > 75)
			posx = posx + 30;
		else 
			posx = posx + 30;
				
		if (display) {
				control.childNodes[1].style.visibility = "visible"
				control.childNodes[1].style.display    = "block"
				control.childNodes[1].style.position = "absolute"
				control.childNodes[1].style.top = posy
				control.childNodes[1].style.left = posx
				
		} else {
				control.childNodes[1].style.visibility = "hidden"
				control.childNodes[1].style.display    = ""
				control.childNodes[1].style.position = "absolute"
				control.childNodes[1].style.top = posy
				control.childNodes[1].style.left = posx
		}	
	}	
}



function timedCount()
{               
    if (document.getElementById('IfContent'))
    {
        displaySection(false,'divProcessLoading');
        clearTimeout(t);
    }
    else                
        t = setTimeout("timedCount()",1000);
}  