function formsubmit() {
  if (document.getElementById('txtNumAdults').value > 9) {
    alert('Maximum of 9 passengers (excluding infants) allowed per booking.');
    return false;
  }

  document.Flight.method = 'get';
  //document.Flight.action="https://ameliaweb3.intelisys.ca/VivaMacau-Train19/AmeliaRequest.aspx";
  SubmitFormVF();
}

function SubmitFormVF() {
   if (CSValidationVF()) {
         document.Flight.submit();
   }
}

function CSValidationVF() {
    var bRv = true;

var bRoundTrip; 
if (document.Flight.chkRoundTrip) 
bRoundTrip = document.Flight.chkRoundTrip0.checked;


var lstOrigAP = document.Flight.lstOrigAP.value

if (document.Flight.lstOrigAP.value =='-1') {
   alert('Please make a selection for Departure Airport');
   bRv = false;
}

var lstDestAP = document.Flight.lstDestAP.value

if (document.Flight.lstDestAP.value =='-1') {
   alert('Please make a selection for Arrival Airport');
   bRv = false;
}


if((parseInt(document.Flight.txtNumChildren.value) > 0) &&
	(parseInt(document.Flight.txtNumAdults.value)== 0)) {
	alert('At least one adult must be included in the booking.');
	bRv=false
}

if (document.Flight.txtNumAdults.value =='') {
    alert('Please enter Number of Adults');
    bRv = false;
}
if (document.Flight.txtNumAdults.value != '' && isNaN(document.Flight.txtNumAdults.value)) {
    alert('Please enter only numeric values for Number of Adults');
    bRv = false;
} else if (document.Flight.txtNumAdults.value < 0)  {
    alert('Please enter only positive numeric values for Number of Adults');
    bRv = false;
} else {

if (!document.Flight.txtNumAdults.value =='') {
   var re = new RegExp("[0-9]+");
   if (!document.Flight.txtNumAdults.value.match(re)) {
      alert('Please enter only numeric values for Number of Adults');
      bRv = false;
   }
}}

if (document.Flight.txtNumChildren.value != '' && isNaN(document.Flight.txtNumChildren.value)) {
    alert('Please enter only numeric values for Number of Children');
    bRv = false;
} else if (document.Flight.txtNumChildren.value < 0)  {
    alert('Please enter only positive numeric values for Number of Children');
    bRv = false;
} else {

if (!document.Flight.txtNumChildren.value =='') {
   var re = new RegExp("[0-9]+");
   if (!document.Flight.txtNumChildren.value.match(re)) {
      alert('Please enter only numeric values for Number of Children');
      bRv = false;
   }
}}

if (document.Flight.txtNumInfants.value != '' && isNaN(document.Flight.txtNumInfants.value)) {
    alert('Please enter only numeric values for Number of Infants');
    bRv = false;
} else if (document.Flight.txtNumInfants.value < 0)  {
    alert('Please enter only positive numeric values for Number of Infants');
    bRv = false;
} else {

if (!document.Flight.txtNumInfants.value =='') {
   var re = new RegExp("[0-9]+");
   if (!document.Flight.txtNumInfants.value.match(re)) {
      alert('Please enter only numeric values for Number of Infants');
      bRv = false;
   }
}}
if(parseInt(document.Flight.txtNumInfants.value)>parseInt(document.Flight.txtNumAdults.value)){alert('There must be at least one adult per infant');bRv=false};

   return bRv;
}

// datetime parsing and formatting routimes. modify them if you wish other datetime format
function str2dt4 (str_datetime) {
	var re_date = /^(\d+)\/(\d+)\/(\d+)$/;
	if (!re_date.exec(str_datetime))
		return alert("Invalid Datetime format: "+ str_datetime);
	return (new Date (RegExp.$1, RegExp.$2-1, RegExp.$3));
}
		
function Decode(inp) {while(inp.match(/&#(\d+);/ig)) {
 inp = inp.replace(new RegExp("&#" + RegExp.$1 + ";", "ig"), String.fromCharCode(RegExp.$1)); }
return inp; }
var aDests=new Array();function changeDests() {var ori=gE('lstOrigAP');var dst=gE('lstDestAP');var j=1;var i; dst.options.length=0;  apID=ori.options[ori.selectedIndex].value;dst.options[0]=new Option('',-1,false,false);for(i=0;i<aDests.length;i++) {if(aDests[i]['OrigAbbr']==apID) { dst.options[j++]=new Option(Decode(aDests[i]['Name']),aDests[i]['Abbr'],false,false);}}}