//Spry.Data.Region.debug = true; var endpoint = ''; var airlineEndpoint = ''; endpoint = '/model/bookingEngine/suggestAirport.cfm'; airlineEndpoint = '/model/bookingEngine/suggestAirline.cfm'; var dsAirports = new Spry.Data.JSONDataSet(endpoint); var dsAirlines = new Spry.Data.JSONDataSet(airlineEndpoint); var valid = true; function toggleError(inp,toggle){ var id = ""; if (inp.indexOf("Error")>0) id = inp; else id = inp + 'Error'; var errEle = document.getElementById(id); if (toggle == 'on'){ errEle.style.display = 'block'; valid = false; return; } else{ errEle.style.display = 'none'; return; } } function checkForm(myForm){ var formType = myForm.itineraryType.value; var elem = document.getElementsByTagName('div'); var temp = null; valid = true; for (i=0;i 0){ toggleError(elem[i].id,'off'); } } if(formType == "RT"){ if(!requireValue(document.getElementById('depCity'))) toggleError('depCity','on'); if(!requireValue(document.getElementById('retCity'))) toggleError('retCity','on'); if(!requireValue(document.getElementById('depDate')) || !checkDate(document.getElementById('depDate'))) toggleError('depDate','on'); if(!requireValue(document.getElementById('retDate')) || !checkDate(document.getElementById('retDate'))) toggleError('retDate','on'); if(!checkDateSequence('depDate','retDate')) toggleError('depDate','on'); checkNumPax(''); } else if (formType == "OW"){ if(!requireValue(document.getElementById('depCityOW'))) toggleError('depCityOW','on'); if(!requireValue(document.getElementById('arrCityOW'))) toggleError('arrCityOW','on'); if(!requireValue(document.getElementById('depDateOW')) || !checkDate(document.getElementById('depDateOW'))) toggleError('depDateOW','on'); checkNumPax('OW'); } else { if(!requireValue(document.getElementById('depCity1MC'))) toggleError('depCity1MC','on'); if(!requireValue(document.getElementById('arrCity1MC'))) toggleError('arrCity1MC','on'); if(!requireValue(document.getElementById('depDate1MC')) || !checkDate(document.getElementById('depDate1MC'))) toggleError('depDate1MC','on'); if(requireValue(document.getElementById('depCity2'))){ if(!requireValue(document.getElementById('arrCity2'))) toggleError('arrCity2','on'); if(!requireValue(document.getElementById('depDate2MC')) || !checkDate(document.getElementById('depDate2MC'))) toggleError('depDate2MC','on'); if(!checkDateSequence('depDate1MC','depDate2MC')) toggleError('depDate2MC','on'); } if(requireValue(document.getElementById('depCity3'))){ if(!requireValue(document.getElementById('arrCity3'))) toggleError('arrCity3','on'); if(!requireValue(document.getElementById('depDate3')) || !checkDate(document.getElementById('depDate3'))) toggleError('depDate3','on'); if(!checkDateSequence('depDate2MC','depDate3')) toggleError('depDate3','on'); } temp = document.getElementById('depCity4'); if (temp){ if(requireValue(document.getElementById('depCity4'))){ if(!requireValue(document.getElementById('arrCity4'))) toggleError('arrCity4','on'); if(!requireValue(document.getElementById('depDate4')) || !checkDate(document.getElementById('depDate4'))) toggleError('depDate4','on'); if(!checkDateSequence('depDate3','depDate4')) toggleError('depDate4','on'); } } temp = document.getElementById('depCity5'); if (temp){ if(requireValue(document.getElementById('depCity5'))){ if(!requireValue(document.getElementById('arrCity5'))) toggleError('arrCity5','on'); if(!requireValue(document.getElementById('depDate5')) || !checkDate(document.getElementById('depDate5'))) toggleError('depDate5','on'); if(!checkDateSequence('depDate4','depDate5')) toggleError('depDate5','on'); } } checkNumPax('3'); } return valid; } function checkNumPax(suff){ var adult = document.getElementById('numAdults'+suff); var child = document.getElementById('numChildren'+suff); var infant = document.getElementById('numInfants'+suff); if (parseInt(adult.value)+parseInt(child.value)+parseInt(infant.value)>0){ toggleError('passenger'+suff,'off'); return; } toggleError('passenger'+suff,'on'); valid = false; return; } function displayEnterMessage(str,display){ var tb = document.getElementById(str); var mes = document.getElementById(str+'Enter'); if (tb.value.length < 3 && display) mes.style.display = 'block'; else mes.style.display = 'none'; } function requireValue(fld) { // disallow a blank field if(fld.disabled) return; var fldName = fld.name; if(!fld.value.length) return false; return true; } function checkDate(fld) { // tenacious date correction if(!fld.value.length||fld.disabled) return true; // blank fields are the domain of requireValue var val= fld.value; var fldName = fld.name; var dt= new Date(val.replace(/\D/g,'/')); var curr = new Date(); if(!dt.valueOf()) { // the date was unparseable return false; } if(Date.parse(fld.value)<=Date.parse(curr)){ return false; } fld.value= (dt.getMonth()+1)+'/'+dt.getDate()+'/'+dt.getFullYear(); return true; } function checkDateSequence(start,end){ var s = document.getElementById(start); var e = document.getElementById(end); if (Date.parse(e.value)>Date.parse(s.value)) return true; else return false; } function setEndDate(startDate,endDate) { var theEndDate = new Date(endDate.value); var theStartDate = new Date(startDate.value); var dd; var mm; var day; var month; if((endDate.value == "") || (theEndDate < theStartDate)){ theEndDate = new Date(startDate.value); theEndDate.setDate(theStartDate.getDate() + 7); day = parseInt(theEndDate.getDate()); month = parseInt(theEndDate.getMonth()); dd = day < 10 ? '0' + day + '': day + ''; mm = month < 9 ? '0'+ (1 + month) + '' : (1 + month)+ ''; endDate.value = mm + "/" + dd + "/" + theEndDate.getFullYear(); } } function toggleAdvancedOptions(a){ var o = document.getElementById('advancedOptions'+a); var oBox = document.getElementById('advancedOptionsBox'+a); if (o.checked){ oBox.style.display = 'block'; } else{ oBox.style.display = 'none'; } return; }