function goValidateInput(buttonToDisable) {
	var destYear=document.postForm.retYear1.options[document.postForm.retYear1.selectedIndex].value;
	var destMonth=document.postForm.retMonth1.options[document.postForm.retMonth1.selectedIndex].value;
	var destDay=document.postForm.retDay1.options[document.postForm.retDay1.selectedIndex].value;
	var depYear=document.postForm.depYear1.options[document.postForm.depYear1.selectedIndex].value;
	var depMonth=document.postForm.depMonth1.options[document.postForm.depMonth1.selectedIndex].value;
	var depDay=document.postForm.depDay1.options[document.postForm.depDay1.selectedIndex].value;
	var userDep=document.postForm.depCity1.options[document.postForm.depCity1.selectedIndex].value;
	var userDest=document.postForm.destCity1.options[document.postForm.destCity1.selectedIndex].value;
	var totAdult=parseInt(document.postForm.adult.value);
	var totChild=parseInt(document.postForm.child.value);
	var totInfant=parseInt(document.postForm.infant.value);
	var TotPax=totAdult + totChild + totInfant;
	var depDate=depYear + '/' + depMonth + '/' + depDay;
	var destDate=destYear + '/' + destMonth + '/' + destDay;
	
	var TodayDate = populateDate(TodayYear + '/' + TodayMonth + '/' + TodayDay,1);
	var UseYear=TodayYear;

	if (parseInt(TodayDate[0][0])== 0) UseYear=TodayYear;
	else UseYear=TodayYear + 1;

	var flexDepDateDiff=dateElapsed(UseYear,TodayDate[0][1],TodayDate[0][2],depYear,depMonth-1,depDay);
	var flexDestDateDiff=dateElapsed(UseYear,TodayDate[0][1],TodayDate[0][2],destYear,destMonth-1,destDay);
	
	if (((flexDepDateDiff < 0)||(flexDestDateDiff < 0))	&& (document.postForm.availabilityType[1].checked)) {
		alert ('L\'option fonctionne uniquement si le voyage est réservé au moins 4 jours à l\'avance');
		return false;
	}
	
	//---Check for Valid Dates
	var depDateValid=isDate(depYear,depMonth,depDay);
	var destDateValid=isDate(destYear,destMonth,destDay);

	//---Dates in Future	
	var futureDepDateDiff=dateElapsed(TodayYear,TodayMonth,TodayDay,depYear,depMonth-1,depDay);
	var futureDestDateDiff=dateElapsed(TodayYear,TodayMonth,TodayDay,destYear,destMonth-1,destDay);
	var depDateDiff=dateElapsed(depYear,depMonth-1,depDay,destYear,destMonth-1,destDay);

	if ((!(depDateValid))||(!(destDateValid))) {
		alert ('Veuillez vérifier que vos dates de voyages sont à une date future');
		return false;
	}
		
	if ((futureDepDateDiff > 355)||(futureDestDateDiff > 355)) {
		alert ('Désolé, vous ne pouvez pas effectuer de réservation pour des vols au-delà de 355 jours.');
		return false;
	}
	
	if (document.postForm.trip[0].checked) {
		if ((futureDepDateDiff<0)||((futureDestDateDiff<0))) {
			alert ('Veuillez vous assurer que les dates de départ/destination sont correctes');
			return false;
		}
	} else {
		if (futureDepDateDiff<0) {
			alert ('Veuillez vous assurer que les dates de départ/destination sont correctes');
			return false;
		}
	}

	if (document.postForm.trip[0].checked) {
		if (depDateDiff<0) {
			alert ('Veuillez vérifier que la date retour est ultérieure à la date aller');
			return false;
		}
	}

	if (TotPax > 9) {
		alert ('Le nombre total de passagers ne peut excéder 9.');
		return false;
	}
	
	if (totInfant > totAdult) {
		alert ('Pour des raisons de sécurité à bord, chaque enfant de moins de 2 ans devra être accompagné par un adulte.');
		return false;
	}
	
	if (userDep==userDest) {
		alert ('L\’origine et la destination sont identiques');
		return false;
	}

	document.postForm.scheduleOnly.value='true';
	if (webFTS[userDest]) {
		for (i=0;i<webFTS[userDest].length;i++) {
			if (webFTS[userDest][i]==userDep) {
				document.postForm.scheduleOnly.value='false';
   				break;
			} 
		}
	}

	//---get tempLocaleCookie
	var tempUserSetting=getCookie('templocaleSetting');
	var userSetting=expandCookieValues (tempUserSetting,'_');
	var StoreFront=getStoreFront (userDep);
	document.postForm.storefront.value=StoreFront[0];
	
	switch (userSetting[0]) {
		case "de":	
			setCookie('LOCALE', 'de_DE', now, '/');
			break;
		case "fr":
			setCookie('LOCALE','fr_FR', now, '/');
			break;
		case "es":
			setCookie('LOCALE','es_ES', now, '/');
			break;
		case "en": 
			setCookie('LOCALE','en_' + StoreFront[1], now, '/');
			break;
		default:
			setCookie('LOCALE','en_' + StoreFront[1], now, '/');
			break;
	}

	setCookie('BookingDetails',document.postForm.retYear1.selectedIndex +'_'+document.postForm.retMonth1.selectedIndex+'_'+document.postForm.retDay1.selectedIndex+'_'+document.postForm.depYear1.selectedIndex+'_'+document.postForm.depMonth1.selectedIndex+'_'+document.postForm.depDay1.selectedIndex+'_'+document.postForm.depCity1.selectedIndex+'_'+document.postForm.destCity1.selectedIndex+'_'+document.postForm.adult.selectedIndex+'_'+ document.postForm.child.selectedIndex+'_'+document.postForm.cabin.selectedIndex+'_'+document.postForm.infant.selectedIndex,now,'/');
			
	//document.postForm.target="_parent";
	document.postForm.action="/fares/faresPrcSearch.jsp?NewSession=true&storefront=" + StoreFront[0];
	submitUtils(buttonToDisable);	
	document.postForm.submit();
	return;
}

function disablereturn() {
	document.postForm.retDay1.disabled = true;
	document.postForm.retMonth1.disabled = true;
	document.postForm.retYear1.disabled = true;
}


function enablereturn() {
	document.postForm.retDay1.disabled = false;
	document.postForm.retMonth1.disabled = false;
	document.postForm.retYear1.disabled = false;
}