	var today = new Date();
	var dept_day = new Date();
	var retn_day = new Date();

    disableReturnDate = function(){
        if(el('return_flight_n').checked)
        {
           new Effect.BlindUp('retn_date_entry', {});     
           new Effect.Fade('retn_date_entry', {});    
            
        }
        else
        {
           new Effect.BlindDown('retn_date_entry', {});     
           new Effect.Apper('retn_date_entry', {});  
        }
    }

	getDayName = function(y,m,d)
    {
    	var weekday=new Array(7);
        weekday[0]='Sun';
        weekday[1]='Mon';
        weekday[2]='Tue';
        weekday[3]='Wed';
        weekday[4]='Thu';
        weekday[5]='Fri';
        weekday[6]='Sat';

    	return weekday[new Date(y, m, d).getDay()];
    };
    
    getMonthName = function(m)
    {
    	var month_name=new Array(12);
        month_name[0]='Jan';
        month_name[1]='Feb';
        month_name[2]='Mar';
        month_name[3]='Apr';
        month_name[4]='May';
        month_name[5]='Jun';
        month_name[6]='Jul';
        month_name[7]='Aug';
        month_name[8]='Sep';
        month_name[9]='Oct';
        month_name[10]='Nov';
        month_name[11]='Dec';

    	return month_name[m];
    };

	function setDeptDate(calendar)
	{
		if (calendar.dateClicked)
		{
			var y = calendar.date.getFullYear();
			var m = calendar.date.getMonth();     // integer, 0..11
			var d = calendar.date.getDate();      // integer, 1..31

			$('dept_date').innerHTML = getMonthName(m)+" "+d+", "+y;
			$('dept_day_name').innerHTML = getDayName(y,m,d);
			
			$('dept_date_input').value = y+"-"+(m+1)+"-"+d;
			 calendar.hide();
			 
			dept_day = new Date(y, m, d);
    	}

      return true;
	}
	
	function setDeptDate2(calendar)
	{
		if (calendar.dateClicked)
		{
			var y = calendar.date.getFullYear();
			var m = calendar.date.getMonth();     // integer, 0..11
			var d = calendar.date.getDate();      // integer, 1..31

			$('dept_date_al').innerHTML = getMonthName(m)+" "+d+", "+y;
			$('dept_day_name_al').innerHTML = getDayName(y,m,d);
			
			$('dept_date_input_al').value = y+"-"+(m+1)+"-"+d;
			 calendar.hide();
			 
			dept_day = new Date(y, m, d);
    	}

      return true;
	}
	
	function setRetnDate(calendar)
	{
		if (calendar.dateClicked)
		{
			var y = calendar.date.getFullYear();
			var m = calendar.date.getMonth();     // integer, 0..11
			var d = calendar.date.getDate();      // integer, 1..31

			$('retn_date').innerHTML = getMonthName(m)+" "+d+", "+y;
			$('retn_day_name').innerHTML = getDayName(y,m,d);
			
			$('retn_date_input').value = y+"-"+(m+1)+"-"+d;
			 calendar.hide();
			 
			retn_day = new Date(y, m, d);
    	}

      return true;
	}
	
	function setRetnDate2(calendar)
	{
		if (calendar.dateClicked)
		{
			var y = calendar.date.getFullYear();
			var m = calendar.date.getMonth();     // integer, 0..11
			var d = calendar.date.getDate();      // integer, 1..31

			$('retn_date_al').innerHTML = getMonthName(m)+" "+d+", "+y;
			$('retn_day_name_al').innerHTML = getDayName(y,m,d);
			
			$('retn_date_input_al').value = y+"-"+(m+1)+"-"+d;
			 calendar.hide();
			 
			retn_day = new Date(y, m, d);
    	}

      return true;
	}

	function setPickUpDate(calendar)
	{
		if (calendar.dateClicked)
		{
			var y = calendar.date.getFullYear();
			var m = calendar.date.getMonth();     // integer, 0..11
			var d = calendar.date.getDate();      // integer, 1..31

			$('pickup_date').innerHTML = getMonthName(m)+" "+d+", "+y;
			$('pickup_day_name').innerHTML = getDayName(y,m,d);
			
			$('pickup_date_input').value = y+"-"+(m+1)+"-"+d;
			 calendar.hide();
			 
			dept_day = new Date(y, m, d);
    	}

      return true;
	}
	
	function setDropOffDate(calendar)
	{
		if (calendar.dateClicked)
		{
			var y = calendar.date.getFullYear();
			var m = calendar.date.getMonth();     // integer, 0..11
			var d = calendar.date.getDate();      // integer, 1..31

			$('dropoff_date').innerHTML = getMonthName(m)+" "+d+", "+y;
			$('dropoff_day_name').innerHTML = getDayName(y,m,d);
			
			$('dropoff_date_input').value = y+"-"+(m+1)+"-"+d;
			 calendar.hide();
			 
			retn_day = new Date(y, m, d);
    	}

      return true;
	}

	
	function checkValidDays()
	{
		dept_diff = dept_day - today;
		retn_diff = retn_day - dept_day;
		
		if(!(dept_diff/(1000*60*60*24) >= 5))
		{
			alert("Sorry!\n Please select a depart date at least 5 day in the future. \n If you need to travel within this time, please contact our friendly staff on 1300 66 28 29.");
			return false;
		}
		
		if(el('return_flight_y').checked)
		{
			if(retn_diff < 0)
			{
				alert("Sorry!\n Your Return Date must be after your Depart Time");
				return false;
			}
		}
		
		return true;
	}
	
	function checkLocation()
	{
		dept_location = $('orig_city_id')[$('orig_city_id').selectedIndex].value;
		dest_location = $('dest_city_id')[$('dest_city_id').selectedIndex].value;
		
		if(dept_location.length < 1 || dept_location < 0)
		{
			alert("Sorry!\n Please select a depart location");
			return false;
		}
		

		if(dest_location.length < 1 || dest_location < 0)
		{
			alert("Sorry!\n Please select a destication location");
			return false;
		}
		
		return true;
	}
	
	function flight_search_submit()
	{
		if(checkValidDays() && checkLocation())
		{
			document.flightSearch.submit();
			//msgBox_wait('Performing Search');
		}
	}