function parse_monthyear(monthyear){var strs=monthyear.split('-');var dateObj=new Object();dateObj.year=strs[0];dateObj.month=strs[1];return dateObj;}function parse_date(dt){var dateNow=new Date();var strs=dt.split('-');var dateObj=new Object();dateObj.year=(strs.length>0?parseInt(strs[0],10):dateNow.getFullYear());dateObj.month=(strs.length>1?parseInt(strs[1],10):(dateNow.getMonth()+1));dateObj.day=(strs.length>2?parseInt(strs[2],10):dateNow.getDate());return dateObj;}function searchDateChanged(){calendarChanged('ddDepartDay','ddDepartMonth','dtDepart','ddReturnDay','ddReturnMonth','dtReturn')}function byPriceDateChanged(){calendarChanged('ddMinDay','ddMinMonth','dtMinDate','ddMaxDay','ddMaxMonth','dtMaxDate')}function calendarChanged(depDayId,depMonthId,depDateId,retDayId,retMonthId,retDateId){var depDateObj=parse_date(GetItemById(depDateId).value);var retDateObj=parse_date(GetItemById(retDateId).value);var depDate=new Date(depDateObj.year,depDateObj.month-1,depDateObj.day);var retDate=new Date(retDateObj.year,retDateObj.month-1,retDateObj.day);var today=new Date();if(depDate<today){depDate=today;GetItemById(depDayId).value=depDate.getDate();GetItemById(depMonthId).value=depDate.getFullYear()+'-'+(depDate.getMonth()+1);GetItemById(depDateId).value=depDate.getFullYear()+'-'+(depDate.getMonth()+1)+'-'+depDate.getDate();}if(retDate<depDate){retDate=depDate;GetItemById(retDayId).value=retDate.getDate();GetItemById(retMonthId).value=retDate.getFullYear()+'-'+(retDate.getMonth()+1);GetItemById(retDateId).value=retDate.getFullYear()+'-'+(retDate.getMonth()+1)+'-'+retDate.getDate();}}function dateDropdownChanged(depDayId,depMonthId,depDateId,retDayId,retMonthId,retDateId){var depDay=GetItemById(depDayId).value;var depYM=GetItemById(depMonthId).valuevar depMonthYear=new parse_monthyear(depYM);var depDate=new Date(depMonthYear.year,depMonthYear.month-1,depDay);GetItemById(depDateId).value=depDate.getFullYear()+'-'+(depDate.getMonth()+1)+'-'+depDate.getDate();var retDay=GetItemById(retDayId).value;var retYM=GetItemById(retMonthId).valuevar retMonthYear=new parse_monthyear(retYM);var retDate=new Date(retMonthYear.year,retMonthYear.month-1,retDay);GetItemById(retDateId).value=retDate.getFullYear()+'-'+(retDate.getMonth()+1)+'-'+retDate.getDate();var today=new Date();if(depDate<today){depDate=today;}GetItemById(depDayId).value=depDate.getDate();GetItemById(depMonthId).value=depDate.getFullYear()+'-'+(depDate.getMonth()+1);GetItemById(depDateId).value=depDate.getFullYear()+'-'+(depDate.getMonth()+1)+'-'+depDate.getDate();if(retDate<depDate){retDate=depDate;}GetItemById(retDayId).value=retDate.getDate();GetItemById(retMonthId).value=retDate.getFullYear()+'-'+(retDate.getMonth()+1);GetItemById(retDateId).value=retDate.getFullYear()+'-'+(retDate.getMonth()+1)+'-'+retDate.getDate();}function validateForm(){if(abortSuggest){abortSuggest();}var errAptDep=GetItemById('errAptDep');var errAptDest=GetItemById('errAptDest');var errDateReturn=GetItemById('errDateReturn');var depField=GetItemById('tbAptDep');var destField=GetItemById('tbAptDest');var depIATAField=GetItemById('tbDepIata');var destIATAField=GetItemById('tbDestIata');var currency=GetItemById('ddCurrency');var chkFlightField=GetItemById('chkFlight');var chkTrainField=GetItemById('chkTrain');var chkBusField=GetItemById('chkBus');var chkFerryField=GetItemById('chkFerry');var chkBusinessClassField=GetItemById('cbBusinessClass');var isError=false;if(trim(depField.value)==''){errAptDep.innerHTML='<font color=red>X</font>';isError=true;FocusItem(depField);alert(TXT_NO_DEP_ERROR);}else{errAptDep.innerHTML='';}if(trim(destField.value)==''){errAptDest.innerHTML='<font color=red>X</font>';isError=true;FocusItem(destField);alert(TXT_NO_DEST_ERROR);}else{errAptDest.innerHTML='';}if((depIATAField.value!=''&& depIATAField.value==destIATAField.value)||trim(destField.value).toLowerCase()==trim(depField.value).toLowerCase()){errAptDest.innerHTML='<font color=red>X</font>';isError=true;FocusItem(destField);alert(TXT_SAME_DEP_DEST_ERROR);}else if(!isError){errAptDest.innerHTML='';}var depDateElems=GetItemById('dtDepart').value.split('-');var retDateElems=GetItemById('dtReturn').value.split('-');var blnOneWay=GetItemById('optOneWay').checked;try{var dtDepart=new Date(depDateElems[0],depDateElems[1],depDateElems[2]);var dtReturn=new Date(retDateElems[0],retDateElems[1],retDateElems[2]);if(!blnOneWay&& dtDepart>dtReturn){errDateReturn.innerHTML='<font color=red>X</font>';isError=true;}else{errDateReturn.innerHTML='';}}catch(e){errDateReturn.innerHTML='<font color=red>X</font>';isError=true;}if(chkFlightField&& chkTrainField&& chkBusField&& chkFerryField){var hasTransport=chkFlightField.checked||chkTrainField.checked||chkBusField.checked||chkFerryField.checked;if(!hasTransport){isError=true;alert(TXT_NO_TRANSPORT);}}var ddInfants=GetItemById('ddInfants');var ddAdults=GetItemById('ddAdults');if(ddInfants.value>ddAdults.value){isError=true;alert(TXT_INVALID_NO_INFANTS);ddInfants.focus();}if(isError){return false;}var depIATA=GetItemById('tbDepIata').value;var destIATA=GetItemById('tbDestIata').value;var URL=FLIGHTS_FOLDER+(depIATA.length==0||destIATA.length==0?'preflysearch.aspx':'flysearch.aspx');URL+='?depcity='+encodeURIComponent(GetItemById('tbAptDep').value);URL+='&depIATA='+depIATA;URL+='&destIATA='+destIATA;URL+='&destcity='+encodeURIComponent(GetItemById('tbAptDest').value);URL+='&depart='+GetItemById('dtDepart').value;URL+='&return='+(GetItemById('optOneWay').checked?'':GetItemById('dtReturn').value);URL+='&adults='+GetItemById('ddAdults').value;URL+='&infants='+GetItemById('ddInfants').value;URL+='&children='+GetItemById('ddChildren').value;URL+='&flway='+(GetItemById('optOneWay').checked?'True':'False');URL+='&flight='+(chkFlightField?chkFlightField.checked:'true');if(currency){URL+='&currency='+currency.value;}if(chkTrainField&& chkTrainField.checked){URL+='&train=true';}if(chkBusField&& chkBusField.checked){URL+='&bus=true';}if(chkFerryField&& chkFerryField.checked){URL+='&ferry=true';}if(chkBusinessClassField&& chkBusinessClassField.checked){URL+='&BusinessClass=true';}var lang='';try{lang=LANG_CODE;}catch(e){}URL+='&lang='+lang;MashupRedirects();var chkDepNearbyField=GetItemById('chkDepNearby');var chkDestNearbyField=GetItemById('chkDestNearby');var depNearby=false;var destNearby=false;if(depField.value.indexOf(TXT_ALL_AIRPORTS)!=-1){depNearby=true;}if(!depNearby&& chkDepNearbyField){depNearby=chkDepNearbyField.checked;}if(destField.value.indexOf(TXT_ALL_AIRPORTS)!=-1){destNearby=true;}if(!destNearby&& chkDestNearbyField){destNearby=chkDestNearbyField.checked;}if(depNearby){URL+='&DepAll=1';}if(destNearby){URL+='&DestAll=1';}if(currency&& currency.value.length>0){document.cookie='Currency='+currency.value+'; path=/;';}if(typeof top!='undefined'&& top.location){top.location.href=URL;}else{window.location.href=URL;}return false;}function MashupRedirects(){var checkboxes=window.document.forms[0].cblExtraDeepLinks;if(checkboxes==null){return;}var departure=GetItemById('tbDepIata').value;if(departure==""){departure=GetItemById('tbAptDep').value;}var destination=GetItemById('tbDestIata').value;if(destination==""){destination=GetItemById('tbAptDest').value;}var adults=GetItemById('ddAdults').value;var children=GetItemById('ddChildren').value;var infants=GetItemById('ddInfants').value;var depDate=GetItemById('dtDepart').value;var retDate=(GetItemById('optOneWay').checked?'':GetItemById('dtReturn').value);if(checkboxes.nodeName!=null){PopupRedirect(checkboxes.value,departure,destination,adults,children,infants,depDate,retDate);}else{for(var i=0;i<checkboxes.length;i++){if(checkboxes[i].checked){PopupRedirect(checkboxes[i].value,departure,destination,adults,children,infants,depDate,retDate);}}}}function PopupRedirect(opid,departure,destination,adults,children,infants,depDate,retDate){var path=ROOT_FOLDER+"redirect.aspx";if(typeof REDIRECT_PATH!='undefined'){path=REDIRECT_PATH;}var URL=path;URL+="?opid="+opid+"&url="+"&DepartAirport="+encodeURIComponent(departure)+"&DestinationAirport="+encodeURIComponent(destination)+"&Adults="+adults+"&Children="+children+"&Infants="+infants+"&DepartureDate="+depDate+"&ReturnDate="+retDate;var popupType="scrollbars,location,resizable,status,toolbar,menubar,width="+screen.width/ 2+",height="+screen.height/ 2;var winPopup=window.open(URL,"_blank"+opid,popupType);if(winPopup!=null){winPopup.blur();}}function validateDirForm(){var errAptDep=GetItemById('errAptDep2');var errAptDest=GetItemById('errAptDest2');var depField=GetItemById('tbAptDep2');var destField=GetItemById('tbAptDest2');var depIATAField=GetItemById('tbDepIata2');var destIATAField=GetItemById('tbDestIata2');var currency=GetItemById('ddCurrency2');var isError=false;if(trim(depField.value)==''){errAptDep.innerHTML='<font color=red>X</font>';isError=true;FocusItem(depField);alert(TXT_NO_DEP_ERROR);}else{errAptDep.innerHTML='';}if(trim(destField.value)==''){errAptDest.innerHTML='<font color=red>X</font>';isError=true;FocusItem(destField);alert(TXT_NO_DEST_ERROR);}else{errAptDest.innerHTML='';}if((depIATAField.value!=''&& depIATAField.value==destIATAField.value)||trim(destField.value).toLowerCase()==trim(depField.value).toLowerCase()){errAptDest.innerHTML='<font color=red>X</font>';isError=true;FocusItem(destField);alert(TXT_SAME_DEP_DEST_ERROR);}else if(!isError){errAptDest.innerHTML='';}var monthField=GetItemById('ddDirectoryMonth');var blnOneWay=GetItemById('optOneWay2').checked;if(isError){return false;}var URL;if(depIATAField.value.length==3&& destIATAField.value.length==3){var depCity=depField.value.replace(TXT_ALL_AIRPORTS,'');depCity=trim(depCity.replace(',',' ').replace('  ',' '));var destCity=destField.value.replace(TXT_ALL_AIRPORTS,'');destCity=trim(destCity.replace(',',' ').replace('  ',' '));var regex=/\s+/g;var fileName=TXT_RESULTS_NAME;fileName=fileName.replace('{0}',depCity);fileName=fileName.replace('{1}',destCity);fileName=fileName.replace(regex,'-');URL=FLIGHTS_FOLDER;if(blnOneWay){URL+=TXT_ONEWAY.replace(regex,'-')+"/";}URL+=trim(depIATAField.value)+"/";URL+=trim(destIATAField.value)+"/";if(monthField.value!='0'){URL+=encodeURIComponent(monthField.value)+'/';}URL+=fileName+'.htm';}else{URL=FLIGHTS_FOLDER+'directoryresults.aspx';URL+='?aptDep='+trim(depIATAField.value);URL+='&aptDest='+trim(destIATAField.value);URL+='&depcity='+encodeURIComponent(trim(depField.value));URL+='&destcity='+encodeURIComponent(trim(destField.value));if(monthField.value!='0')URL+='&month='+encodeURIComponent(monthField.value);URL+='&currency='+currency.value;URL+='&way='+(blnOneWay?'1':'2');}if(currency&& currency.value.length>0){document.cookie='Currency='+currency.value+'; path=/;';}window.location.href=URL;return false;}function validateByPriceForm(){var depField=GetItemById('tbAptDep3');var depIATAField=GetItemById('tbDepIata3');var errAptDep=GetItemById('errAptDep3');var continentField=GetItemById('ddContinents');var countryField=GetItemById('ddCountries');var blnOneWay=GetItemById('optOneWay3').checked;var chkDateRange=GetItemById('chkDateRange');var maxPrice=GetItemById('tbMaxPrice');var currency=GetItemById('ddCurrency3');var minStay=GetItemById('tbMinStay');var maxStay=GetItemById('tbMaxStay');if(trim(depField.value)==''){if(errAptDep){errAptDep.innerHTML='<font color=red>X</font>';}FocusItem(depField);alert(TXT_NO_DEP_ERROR);return false;}var URL=BYPRICE_FOLDER;var depCity=depField.value.replace(TXT_ALL_AIRPORTS,'');depCity=trim(depCity.replace(',',' ').replace('  ',' '));var regex=/\s+/g;var fileName=TXT_BYPRICE_NAME;fileName=fileName.replace('{0}',depCity);fileName=fileName.replace(regex,'-');if(depIATAField.value.length==3){URL+=depIATAField.value+"/";}else{URL+=encodeURIComponent(depCity)+"/";}URL+=continentField.value+(countryField.value!=''?'-'+countryField.value:'')+"/";if(blnOneWay){URL+=TXT_ONEWAY.replace(regex,'-')+"/";}var maxPriceVal=(maxPrice?trim(maxPrice.value):'');if(maxPriceVal.length>0){URL+=maxPriceVal+"/";}var minStayVal=(minStay?trim(minStay.value):'');if(minStayVal.length>0){URL+=TXT_MIN_STAY_URL+'_'+minStayVal+"/";}var maxStayVal=(maxStay?trim(maxStay.value):'');if(maxStayVal.length>0){URL+=TXT_MAX_STAY_URL+'_'+maxStayVal+"/";}if(chkDateRange&& chkDateRange.checked){URL+=GetItemById('dtMinDate').value+"/";URL+=GetItemById('dtMaxDate').value+"/";}URL+=fileName+'.htm';if(currency&& currency.value.length>0){document.cookie='Currency='+currency.value+'; path=/;';}abortFetchCountries();window.location.href=URL;return false;}function ExpandPanel(id,imgID,onImg,offImg){var panel=GetItemById(id);var image=GetItemById(imgID);if(panel.style.display=='none'){panel.style.display='';image.src=offImg;}else{panel.style.display='none';image.src=onImg;}}function SetItemDisabled(ids,disabled){try{for(var n=0;n<ids.length;n++){var elem=GetItemById(ids[n]);if(elem){elem.disabled=disabled;for(var i=0;i<elem.childNodes.length;i++){if(elem.childNodes[i].disabled!=null){elem.childNodes[i].disabled=disabled;}}}}}catch(e){}}function SetElemVisibility(id,visible){var elem=GetItemById(id);if(elem){elem.style.display=(visible?'':'none');}}function LoadSuggest(item,iata,lang,img,sendFunc,widthScale){if(!widthScale){widthScale=1.8;}UnInstall();InstallAC(document.CFLiveSearch,item,GetItemById(iata),LANG_ROOT_PATH+'AJAX/SuggestResult.aspx',lang,GetItemById(img),sendFunc,widthScale);}function ContinentListChanged(elem,targetId,val){if(val==''){elem.selectedIndex-=1;}if(elem){FetchCountries(targetId,elem.value);}}function FocusItem(elem){elem.focus();elem.select();}function ValidateNumeric(evt,ctl){if(!evt&& window.event){evt=window.event;}var keyCode=evt.keyCode;var MAX_LENGTH=999999999;switch(keyCode){case 8:case 9:case 35:case 36:case 37:case 39:case 46:case 144:return true;}if((keyCode>=45&& keyCode<=57)||(keyCode>=96&& keyCode<=105)){var selLength=(document.selection?document.selection.createRange().text:ctl.selectionEnd-ctl.selectionStart);if(selLength==0&& parseInt(ctl.value+""+String.fromCharCode(keyCode),10)>MAX_LENGTH){alert(TXT_AMOUNT_TOO_LARGE);evt.returnValue=false;return false;}return true;}evt.returnValue=false;return false;}function trim(str){return str.replace(/^\s+/,"").replace(/\s+$/,"");};function GetItemById(id){return(document.all?document.all[id]:document.getElementById(id));}