var num_RoomsRequired;var obj_Occupancy;var obj_ChildAges;var minStringLen=2;var lastSearch="";var currentSearch=0;var hideElements=Array("nightsDrop","roomsRequiredSelect","daysLaterSelectFrame","departureSelectEle","agesOuterFrame");function js_DOMCreateDiv(c,a,b){el_NewDiv=document.createElement("DIV");if(c.len>0){if(navigator.userAgent.indexOf("MSIE")==-1){el_NewDiv.setAttribute("class",c)}else{el_NewDiv.setAttribute("className",c)}}if(a!=""){el_NewText=document.createTextNode(a);el_NewDiv.appendChild(el_NewText)}if(b){el_NewDiv.appendChild(b)}return el_NewDiv}function js_DOMCreateP(c,a,b){el_NewDiv=document.createElement("P");if(c.len>0){if(navigator.userAgent.indexOf("MSIE")==-1){el_NewDiv.setAttribute("class",c)}else{el_NewDiv.setAttribute("className",c)}}if(a!=""){el_NewText=document.createTextNode(a);el_NewDiv.appendChild(el_NewText)}if(b){el_NewDiv.appendChild(b)}return el_NewDiv}function js_checkChildAgesFilled(a){while(a.tagName!=="FORM"){a=a.parentNode}rExp=/frm_Child[0-9]/gi;allSet=true;if(a.elements.length>0){for(i=0;i<a.elements.length;i++){if(a.elements[i].id.search(rExp)>-1&&a.elements[i].options[a.elements[i].selectedIndex].value==-1){allSet=false}}}return allSet}function js_DOMCreateSelect(b,c,a){el_NewSelect=document.createElement("SELECT");el_NewSelect.setAttribute("name",b);el_NewSelect.setAttribute("id",b);rExp=/frm_Child[0-9]/gi;if(b.search(rExp)>-1){js_addOption(el_NewSelect,"-1","-");if(document.getElementById("holSearchSubmit")){el_NewSelect.onchange=function(){js_checkChildAgesFilled(this)}}}for(j=c;j<=a;j++){js_addOption(el_NewSelect,j,j)}return el_NewSelect}function js_SelectRoomOccupants(a){for(rl=0;rl<a;rl++){num_RoomNum=rl+1;var b=obj_Occupancy[rl]["num_child"]+obj_Occupancy[rl]["num_infant"];js_selectValue("room_"+num_RoomNum+"_adult",obj_Occupancy[rl]["num_adult"],false);js_selectValue("room_"+num_RoomNum+"_child",b,false)}}function js_SelectChildAges(){var a=0;for(i=1;i<=num_RoomsRequired;i++){a=a+parseInt($("room_"+i+"_child").value)}for(ch=1;ch<=a;ch++){js_selectValue("childage_"+ch,arr_ChildAges[ch-1],false)}}function js_addOption(a,c,b){var d=document.createElement("OPTION");d.value=c;d.text=b;if(navigator.userAgent.indexOf("MSIE")==-1){a.add(d,null)}else{a.add(d)}}function js_selectValue(d,e,a){var c=$(d);var b=c.childNodes.length;if(b!=0){for(i=0;i<b;i++){if(c.childNodes[i].value==e){c.childNodes[i].selected=true;if(a){c.onchange()}return true}}}}function js_removeFirstChild(a){a.removeChild(a.firstChild)}function js_removeAllChildren(a){if(a!==null&&a.firstChild){while(a.firstChild){a.removeChild(a.firstChild)}}}function checkHolidayForm(a){if($("num_destID")){if($("num_destID").value==0){alert("Please select a destination from the list. Thank you.");return false}}if($("num_deptID")){if($("num_deptID").value==0){alert("Please select a specific station/airport to travel from. Thank you.");return false}}if($("cal1input")){if(checkYCalDate(1)==false){alert("Please enter date in the format DD/MM/YYYY");return false}}if($("cal2input")){if(checkYCalDate(2)==false){alert("Please enter date in the format DD/MM/YYYY");return false}}if(!js_checkChildAgesFilled(a)){alert("Please enter the ages of all under 18s before continuing");return false}return true}function initHolidaySearchForm(){js_OutputRoomOccupants(num_RoomsRequired);js_selectValue("room_1_adult",2,false);if(obj_Occupancy){js_SelectRoomOccupants(num_RoomsRequired)}js_OutputChildAges();js_SelectChildAges()}function js_OutputRoomOccupants(a){obj_Occupants=$("hs_Occupants");num_RoomsRequired=a;js_removeAllChildren(obj_Occupants);for(i=1;i<=a;i++){obj_AdultsSelect=js_DOMCreateSelect("room_"+i+"_adult",1,9);obj_ChildrenSelect=js_DOMCreateSelect("room_"+i+"_child",0,9);obj_RoomNumber=js_DOMCreateP("hs_OccupantsRoomNumber","Room "+i);obj_Adults=js_DOMCreateDiv("hs_OccupantsAdults","",obj_AdultsSelect);obj_Children=js_DOMCreateDiv("hs_OccupantsChildren","",obj_ChildrenSelect);if(navigator.userAgent.indexOf("MSIE")==-1){obj_Children.onchange=js_OutputChildAges}obj_frame=js_DOMCreateDiv("","");obj_frame.appendChild(obj_RoomNumber);obj_frame.appendChild(obj_Adults);obj_frame.appendChild(obj_Children);obj_Occupants.appendChild(obj_frame);if(navigator.userAgent.indexOf("MSIE")!=-1){eventAttached=document.getElementById("room_"+i+"_child").attachEvent("onchange",js_OutputChildAges)}}js_OutputChildAges()}function js_OutputChildAges(){obj_ChildAges=$("hs_ChildAges");if(obj_ChildAges!==null){js_removeAllChildren(obj_ChildAges);var a=0;for(i=1;i<=num_RoomsRequired;i++){a=a+parseInt($("room_"+i+"_child").value)}if(a!=0){obj_IntroText=js_DOMCreateDiv("hs_ChildIntroText","Please specify the ages of under 18s at time of travel.");obj_IntroText.style.padding="5px";obj_ChildAges.appendChild(obj_IntroText);for(i=1;i<=a;i++){obj_ChildAgeSelect=js_DOMCreateSelect("childage_"+i,0,17);obj_frame=js_DOMCreateDiv("","");obj_ChildNumber=js_DOMCreateP("hs_ChildrenNumber","#"+i+" under 18");obj_ChildNumber.style.padding="0px";obj_ChildNumber.style.margin="0px";obj_ChildAge=js_DOMCreateDiv("hs_Children","",obj_ChildAgeSelect);obj_frame.appendChild(obj_ChildNumber);obj_frame.appendChild(obj_ChildAge);obj_ChildAges.appendChild(obj_frame)}obj_ChildAges.style.display="block"}else{obj_ChildAges.style.display="none"}}}function toggle_advSearch(){if($("hs_adv_hide")){var b=$("hs_adv_hide").style.display}if($("hs_adv_show")){var a=$("hs_adv_show").style.display}if(a&&b){$("hs_adv_show").style.display=b;$("hs_adv_hide").style.display=a;if($("hs_adv_1")){$("hs_adv_1").style.display=a}if($("hs_adv_2")){$("hs_adv_2").style.display=a}if($("hs_adv_3")){$("hs_adv_3").style.display=a}if($("hs_adv_4")){$("hs_adv_4").style.display=a}}}function js_suggestHotel(b){if(b!=lastSearch){if(b.length>=minStringLen){currentSearch++;lastSearch=b;var a="/hotel_search_ajax.cfm";var c="method=suggestHotel&currentSearch="+currentSearch+"&searchString="+b;var e=new Ajax.Request(a,{method:"get",parameters:c,onComplete:js_updateSuggestionField})}else{js_hideAllPopups();var d=$("hotel_suggestions");while(d.firstChild){d.removeChild(d.firstChild)}lastSearch=""}}}function js_hideAndSelect(){selIndex=js_findSelectedIndex();if(!isNaN(selIndex)){$("hotel_suggestions").style.display="none";if($("li_hotel_"+selIndex+"_text")){$("hotel_name").value=$("li_hotel_"+selIndex+"_text").value;$("hotel_value").value=$("li_hotel_"+selIndex+"_id").value;if($("sl_hotel_value")){$("sl_hotel_value").innerHTML=$("li_hotel_"+selIndex+"_id").value}lastSearch=$("hotel_name").value}}js_hideAllPopups()}function js_findSelectedIndex(){if(document.getElementById("hotel_ul")){list=document.getElementById("hotel_ul");nChildren=list.childNodes.length;if(nChildren>0){for(i=0;i<nChildren;i++){if(list.childNodes[i]&&list.childNodes[i].className&&list.childNodes[i].className=="frm_suggest_list_hover"){return i}}}}return false}function js_highlightSelection(a){curIndex=js_findSelectedIndex();if(document.getElementById("hotel_ul")&&curIndex!==a){list=document.getElementById("hotel_ul");if(a=="n"||a=="p"){if(a=="n"&&curIndex<list.childNodes.length-1){a=curIndex+1}else{if(a=="p"&&curIndex>0){a=curIndex-1}}}if(!isNaN(a)){list.childNodes[a].className="frm_suggest_list_hover";if(curIndex!==false){list.childNodes[curIndex].className=""}}}}function js_moveSelection(a){if(!a){a=window.event}if(a.keyCode==38){js_highlightSelection("p")}else{if(a.keyCode==40){js_highlightSelection("n")}else{if(a.keyCode==9||a.keyCode==13){js_hideAndSelect()}else{if((a.keyCode==8||a.keyCode==46)&&document.getElementById("hotel_value").value!=""){document.getElementById("hotel_value").value="";while(document.getElementById("hotel_suggestions").firstChild){document.getElementById("hotel_suggestions").removeChild(document.getElementById("hotel_suggestions").firstChild)}}}}}}function js_updateSuggestionField(c){var g=c.responseXML;var f=g.getElementsByTagName("r")[0].getAttribute("sid");var b=$("hotel_name").value;if(f==currentSearch&&b.length>=minStringLen){var e=$("hotel_suggestions");var d=g.getElementsByTagName("p").length;while(e.firstChild){e.removeChild(e.firstChild)}e.style.display="none";if(d>0){rExp=new RegExp("("+b.replace(/ /g,"|")+")","gi");newUL=document.createElement("ul");newUL.id="hotel_ul";for(var a=0;a<d;a++){hotelDEBUG=g.getElementsByTagName("p")[a];hotelName=g.getElementsByTagName("p")[a].firstChild.data;hotelID=g.getElementsByTagName("p")[a].getAttribute("id");divText=hotelName.replace(rExp,'<span class="selHighlight">$1</span>');newUL.innerHTML+='<li onmouseover="js_highlightSelection('+a+')" onclick="js_hideAndSelect()"><input type="hidden" id="li_hotel_'+a+'_text" value="'+hotelName+'" /><input type="hidden" id="li_hotel_'+a+'_id" value="'+hotelID+'">'+divText+"</li>"}e.appendChild(newUL);if(navigator.userAgent.match("MSIE 6")){for(a=0;a<hideElements.length;a++){if(document.getElementById(hideElements[a])){document.getElementById(hideElements[a]).style.visibility="hidden"}}}document.getElementById("submitButton").disabled=true;e.style.display="block";js_highlightSelection(0)}else{e.innerHTML+='<div class="noFFResults"><i>no results found</i></div>';e.style.display="block"}if(document.getElementById("hideDiv")&&!navigator.userAgent.match(/MSIE [5-7]\.\d+/)){document.getElementById("hideDiv").style.display="block"}}}function js_hideAllPopups(){document.getElementById("hotel_suggestions").style.display="none";if(document.getElementById("hideDiv")){document.getElementById("hideDiv").style.display="none"}if(navigator.userAgent.match("MSIE 6")){for(i=0;i<hideElements.length;i++){if(document.getElementById(hideElements[i])){document.getElementById(hideElements[i]).style.visibility="visible"}}}document.getElementById("submitButton").disabled=false};
