function doSubmit(src, srcaid) {
	b_submit = true;
	if (document.getElementById("airTripType").disabled == false){

		if ((document.getElementById("leavingFrom").value.length < 3) || 
			(document.getElementById("leavingFrom").value.length > 25)){
			b_submit = false;
			cDisplay("errormsg,inline","airportmsg,inline","minoragemsg,none");
			document.getElementById("leavingFrom").focus();
			return;
		}
		if ((document.getElementById("goingToAir").value.length < 3) || 
			(document.getElementById("goingToAir").value.length > 25)){
			b_submit = false;
			cDisplay("errormsg,inline","airportmsg,inline","minoragemsg,none");
			document.getElementById("goingToAir").focus();
			return;
		}

		document.getElementById("engine").value = "customtrip";
	} else {
		
		var flightType;
		if (document.AirSearchForm.flightType.value == undefined) {
			for(var j = 0 ; j < document.AirSearchForm.flightType.length ; ++j) {
				if(document.AirSearchForm.flightType[j].checked) {
					flightType = document.AirSearchForm.flightType[j].value;
					break;
				}
			}
		} else {
			flightType = document.AirSearchForm.flightType.value;
		}

		if (document.getElementById("cb_nba_input").checked == true) {
			document.getElementById("cb_nba_input").value = "on";
		}else{
			document.getElementById("cb_nba_input").value = "off";
		}

		if (flightType == "multicity"){
			if ((document.getElementById("leavingFrom1").value.length < 3) || 
				(document.getElementById("leavingFrom1").value.length > 25)){
				b_submit = false;
				cDisplay("errormsg,inline","airportmsg,inline","minoragemsg,none");
				document.getElementById("leavingFrom1").focus();
				return;
			}
			if ((document.getElementById("goingTo1").value.length < 3) || 
				(document.getElementById("goingTo1").value.length > 25)){
				b_submit = false;
				cDisplay("errormsg,inline","airportmsg,inline","minoragemsg,none");
				document.getElementById("goingTo1").focus();
				return;
			}
			if ((document.getElementById("leavingFrom2").value.length < 3) || 
				(document.getElementById("leavingFrom2").value.length > 25)){
				b_submit = false;
				cDisplay("errormsg,inline","airportmsg,inline","minoragemsg,none");
				document.getElementById("leavingFrom2").focus();
				return;
			}
			if ((document.getElementById("goingTo2").value.length < 3) || 
				(document.getElementById("goingTo2").value.length > 25)){
				b_submit = false;
				cDisplay("errormsg,inline","airportmsg,inline","minoragemsg,none");
				document.getElementById("goingTo2").focus();
				return;
			}
			
			document.getElementById("leavingDate1").value = getDate(document.getElementById("AIR_frommonth1").value, document.getElementById("AIR_fromdate1").value);
			document.getElementById("leavingDate2").value = getDate(document.getElementById("AIR_frommonth2").value, document.getElementById("AIR_fromdate2").value);

			if ((document.getElementById("leavingFrom3").value) && (document.getElementById("goingTo3").value)){
				document.getElementById("leavingDate3").value = getDate(document.getElementById("AIR_frommonth3").value, document.getElementById("AIR_fromdate3").value);
			} else {
				document.getElementById("leavingDate3").value = "";
			}
			if ((document.getElementById("leavingFrom4").value) && (document.getElementById("goingTo4").value)){
				document.getElementById("leavingDate4").value = getDate(document.getElementById("AIR_frommonth4").value, document.getElementById("AIR_fromdate4").value);
			} else {
				document.getElementById("leavingDate4").value = "";
			}
		} else {

			if ((document.getElementById("leavingFrom").value.length < 3) || 
				(document.getElementById("leavingFrom").value.length > 25)){
				b_submit = false;
				cDisplay("errormsg,inline","airportmsg,inline","minoragemsg,none");
				document.getElementById("leavingFrom").focus();
				return;
			}
			if ((document.getElementById("goingToAir").value.length < 3) || 
				(document.getElementById("goingToAir").value.length > 25)){
				b_submit = false;
				cDisplay("errormsg,inline","airportmsg,inline","minoragemsg,none");
				document.getElementById("goingToAir").focus();
				return;
			}
			document.getElementById("leavingDate").value = getDate(document.getElementById("AIR_frommonth").value, document.getElementById("AIR_fromdate").value);
			if (flightType == "roundtrip"){
				document.getElementById("returningDate").value = getDate(document.getElementById("AIR_tomonth").value, document.getElementById("AIR_todate").value);
			}
		}
	}
	
	for(var j = 1 ; j <= document.getElementById("FO_children").selectedIndex ; ++j) {
	
		if (document.getElementById("FO_child"+j).selectedIndex == 0) {
			b_submit = false;
			cDisplay("errormsg,inline","airportmsg,none","minoragemsg,inline");
			document.getElementById("FO_child"+j).focus();
			return;
		}

	}

	cDisplay("errormsg,none");
	document.AirSearchForm.submit();
}

function airOpenCalRel(v_input,s_from,s_to,s_cal,s_parent,s_mode,s_caldir,s_class,e){
	var flightType;
	for(var j = 0 ; j < document.AirSearchForm.flightType.length ; ++j) {
		if(document.AirSearchForm.flightType[j].checked) {
			flightType = document.AirSearchForm.flightType[j].value;
			break;
		}
	}

	if (flightType == "oneway"){
		openCalRel(v_input,s_from,s_from,s_cal,s_parent,s_mode,s_caldir,s_class,e);	
	} else {
		openCalRel(v_input,s_from,s_to,s_cal,s_parent,s_mode,s_caldir,s_class,e);
	}

}

function changeSearchType(o_radio,pageType)
{
	var form = document.AirSearchForm;
  
	switch(o_radio.value){

		case "roundtrip":
			cDisplay("datedf,none","daterf,none");
			cDisplay("roundtripdate,inline","roundtripdest,inline","returnTime,inline","plusminisDate,inline");
			if (pageType != 'dest') {
				cDisplay("multiCityForm,none");
				cDisplay("cb_air_nba,inline");
			}
		break;
		case "oneway":
			cDisplay("roundtripdate,inline","roundtripdest,inline","datelt,inline","datert,inline");
			cDisplay("returnTime,none","plusminisDate,none","datedf,none","daterf,none");
			form.dateTypeSelect[0].checked = true;
			if (pageType != 'dest') {
				document.getElementById("cb_nba_input").value="off";
				document.getElementById("cb_nba_input").checked=false;
				cDisplay("multiCityForm,none","cb_air_nba,none");
			}
		break;
		case "multicity":
			document.getElementById("cb_nba_input").value="off";
			document.getElementById("cb_nba_input").checked=false;
			cDisplay("multiCityForm,inline","datelt,inline","datert,inline");
			cDisplay("roundtripdate,none","roundtripdest,none");
			form.dateTypeSelect[0].checked = true;
		break;
		default:
	}
}

function dispAdvOpt(nbArgList) {

	var a_nb2=nbArgList.split("|");
	var o_img = document.getElementById(a_nb2[1]);
	o_otherImg = (o_img.id == "airNorgie") ? document.getElementById("typNorgie"):document.getElementById("airNorgie");

	if(o_img.src.indexOf("show") == "-1"){
		if (o_img.id == "airNorgie") {
			cDisplay("advAirOpt,none");
		} else {
			cDisplay("advTypOpt,none");
		}
		o_img.src = "http://hg.travelocity.com.edgesuite.net/graphics/icon_show.gif";
	} else if((o_img.src.indexOf("show") != "-1")){
		if (o_img.id == "airNorgie") {
			cDisplay("advAirOpt,inline");
		} else {
			cDisplay("advTypOpt,inline");
		}
		o_img.src = "http://hg.travelocity.com.edgesuite.net/graphics/icon_hide.gif";
	}
}

function updateButton() {
	var flightType;
	for(var j = 0 ; j < document.AirSearchForm.flightType.length ; ++j) {
		if(document.AirSearchForm.flightType[j].checked) {
			flightType = document.AirSearchForm.flightType[j].value;
			break;
		}
	}
	var dateType;
	for(var j = 0 ; j < document.AirSearchForm.dateTypeSelect.length ; ++j) {
		if(document.AirSearchForm.dateTypeSelect[j].checked) {
			dateType = document.AirSearchForm.dateTypeSelect[j].value;
			break;
		}
	}
	if((document.getElementById("typNorgie").src.indexOf("show") != "-1") && 
		(document.getElementById("airNorgie").src.indexOf("show") != "-1") && 
		(document.getElementById("cb_nba_input").checked == false) && 
		(dateType == "exactDates") && 
		(flightType == "roundtrip")){
		cDisplay("twobuttons,inline");
		cDisplay("onebutton,none");
	}
	else {
		cDisplay("twobuttons,none");
		cDisplay("onebutton,inline");
	}
}

function getDate(sMonth, sDate){

	var todays_date = new Date;  // Create new Date Object
	var currentYear = todays_date.getYear(); // Get the current Year  

	var currentMonth = todays_date.getMonth(); // Get the current Month  
	var currentDate = todays_date.getDate(); // Get the current Month  

	if(sMonth < (currentMonth+1)  ){
	  	currentYear = currentYear + 1;  	
  	}
  	if(sMonth == (currentMonth+1) && sDate < currentDate){
  		currentYear = currentYear + 1; 
  	}
  	
    currentYear = (currentYear % 1900) + 1900;  
    
	return (sMonth + "/" + sDate + "/" + currentYear);

}

function compareDates (value1, value2) {
   var date1, date2;
   var month1, month2;
   var year1, year2;

   month1 = value1.substring (0, value1.indexOf ("/"));
   date1 = value1.substring (value1.indexOf ("/")+1, value1.lastIndexOf ("/"));
   year1 = value1.substring (value1.lastIndexOf ("/")+1, value1.length);

   month2 = value2.substring (0, value2.indexOf ("/"));
   date2 = value2.substring (value2.indexOf ("/")+1, value2.lastIndexOf ("/"));
   year2 = value2.substring (value2.lastIndexOf ("/")+1, value2.length);

   if (year1 > year2) return 1;
   else if (year1 < year2) return -1;
   else if (month1 > month2) return 1;
   else if (month1 < month2) return -1;
   else if (date1 > date2) return 1;
   else if (date1 < date2) return -1;
   else return 0;
} 


function cb_airDateType(o_radio,pageType, hasClassflag){

	switch(o_radio.value){
		case "exactDates":			
			cDisplay("datedf,none","daterf,none");
			cDisplay("datelt,inline","datert,inline");
			if (pageType != 'dest') {
				cDisplay("cb_air_nba,inline");
			}
			if (hasClassflag == 1)
			{
				cDisplay("cb_adv_class,inline");
			}
		break;
		case "plusMinusDates":
			cDisplay("datedf,inline","daterf,inline");
			cDisplay("datelt,none","datert,none");
			if (pageType != 'dest') {
				document.getElementById("cb_nba_input").value="off";
				document.getElementById("cb_nba_input").checked=false;
				cDisplay("cb_air_nba,none");
			}
			if (hasClassflag == 1)
			{
				cDisplay("cb_adv_class,none");
			}
		break;
		default:
	}
}

function cDisplay(){
	a_args = cDisplay.arguments;	
	for(var i=0;i<a_args.length;i++){
		a_items=a_args[i].split(",");
		document.getElementById(a_items[0]).style.display = a_items[1];
	}
}

function childAges(o_select,s_div){
	o_div = document.getElementById(s_div)
	if(o_select.selectedIndex!=0){

		a_children = o_div.getElementsByTagName("div")
		o_div.style.display = "block";

		for(i=0;i<a_children.length;i++) a_children[i].style.visibility = (i<o_select.selectedIndex) ? "visible" : "hidden";


	}else{
		o_div.style.display = "none";
	}
}

var dateArray = new Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");

  function getTodaysMonth( )
  {
    return dateArray[(new Date()).getMonth()];
  }

  function checkForFlexibleDates( )
  {
    var href = document.location.href;
    if ( href.indexOf( 'flexibleDates' ) != -1 )
    {
      var depMonth = href.substr( href.indexOf( 'departure_dt' ), 16 );
      var arrMonth = href.substr( href.indexOf( 'arrival_dt' ), 14 );
      var depDtOptions = document.AirSearchForm.departure_dt;
      var arrDtOptions = document.AirSearchForm.arrival_dt;
	  var departDtValue = '';

      for ( var i = 0; i < dateArray.length; i++ )
      {
        if ( dateArray[ i ] == depMonth.substr( depMonth.indexOf( '=' ) + 1, 3 ) )
        {
          depDtOptions.options[ i + 1 ].selected = true;
          break;
        }
      }

      for ( var i = 0; i < dateArray.length; i++ )
      {
        if ( dateArray[ i ] == arrMonth.substr( arrMonth.indexOf( '=' ) + 1, 3 ) )
        {
          arrDtOptions.options[ i ].selected = true;
          break;
        }
      }

      if (departDtValue.length > 3)
		depDtOptions.options[0].selected = true;
    }
  }

  function fillDates( )
  {
    fillDepDt();
    fillArrDt();
    checkForFlexibleDates();
  }

  function fillDepDt( )
  {
    var depDt = document.AirSearchForm.departure_dt;
	var tmpVar = getTodaysMonth() + "|today";
    depDt.options[0] = new Option("Today",tmpVar);
    depDt.options[0].selected = true;
    for(var idx=0;idx < dateArray.length; idx++)
      depDt.options[depDt.options.length] = new Option( dateArray[depDt.options.length - 1], dateArray[depDt.options.length - 1] );
  }

  function fillArrDt( )
  {
    var arrDt = document.AirSearchForm.arrival_dt;
    for ( var idx = 0; idx < dateArray.length; idx++ )
      arrDt.options[arrDt.options.length] = new Option( dateArray[arrDt.options.length], dateArray[arrDt.options.length] );
    setArrDt();
  }

  function setArrDt( )
  {
    var depDtOptions = document.AirSearchForm.departure_dt;
    var selDepDtIdx = depDtOptions.selectedIndex;
    if ( selDepDtIdx == 0 )
    {
      selDepDtVal = depDtOptions.options[0].value;
	  if (selDepDtVal.length > 3)
	    selDepDtVal = getTodaysMonth();
      for ( var idx = 0; idx < dateArray.length; idx++ )
      {
        if ( dateArray[idx] == selDepDtVal )
        {
          selDepDtIdx = idx;
          break;
        }
      }
    }
    else
    {
      selDepDtIdx = selDepDtIdx - 1;
    }
    if ( selDepDtIdx > 7 )
    {
      selDepDtIdx = selDepDtIdx - 8;
    }
    else
    {
      selDepDtIdx = selDepDtIdx + 4;
    }

    var arrDepDtOptions = document.AirSearchForm.arrival_dt;
    arrDepDtOptions.options[selDepDtIdx].selected = true;
  }

var o_popurl = "#";
var o_popwindow = 0;
var b_popwindow = 1;
function checkpopUp(){
 b_popwindow = (o_popwindow) ? o_popwindow.closed : 1;
  if(b_popwindow) document.location = o_popurl;
  else o_popwindow.focus();
}

function popUp(s_url,s_name,s_attrib){
 o_popurl = s_url;
 o_popwindow = window.open(s_url,s_name,s_attrib);
 setTimeout("checkpopUp()",500);
}

function setFilterStops()
{
  if ( document.AirSearchForm.maxConnections.checked )
  {
    document.AirSearchForm.filterStops.value = "0";
  }
  else
  {
    document.AirSearchForm.filterStops.value = "";
  }
}