YAHOO.namespace("aerlingus.options.priorityAirports");YAHOO.namespace("aerlingus.options.ie6Fix");YAHOO.namespace("aerlingus.options");YAHOO.namespace("aerlingus.searchType");YAHOO.namespace("aerlingus.fareCategory");YAHOO.namespace("aerlingus.options.autoComplete");YAHOO.namespace("aerlingus.options.sort");YAHOO.namespace("aerlingus.promotionalFlights");var ALL_COUNTRIES_VALUE="All",DESTINATION_OPTIONS=[],ALL_OPTIONS=[],OUTER_ORIGIN_PANEL="pnlOrigin",OUTER_DESTINATION_PANEL="pnlDestination",ORIGIN_COUNTRY_SELECT_ELEMENT="sltOriginCountries",DESTINATION_COUNTRY_SELECT_ELEMENT="sltDestinationCountries",OUTER_ORIGIN_RESULTS_PANEL="pnlOriginResults",OUTER_DESTINATION_RESULTS_PANEL="pnlDestinationResults",ORIGIN_AIRPORT_RESULTS_PANEL="pnlOriginAirports",DESTINATION_AIRPORT_RESULTS_PANEL="pnlDestinationAirports",ORIGIN_SEARCH_ELEMENT="txtOriginSearch",DESTINATION_SEARCH_ELEMENT="txtDestinationSearch",ORIGIN_DROP_BUTTON="btnOriginDrop",DESTINATION_DROP_BUTTON="btnDestinationDrop",ORIGIN_LOADING_PANEL="pnlLoadingOrigin",DESTINATION_LOADING_PANEL="pnlLoadingDestination",ORIGIN_NO_DATA=false,DESTINATION_NO_DATA=false,ORIGIN="Origin",DESTINATION="Destination",AUTO_COMPLETE_ORIGIN_DATA=[],AUTO_COMPLETE_DESTINATION_DATA=[],AUTOCOMPORIGININSTANCE,AUTOCOMPDESTINATIONINSTANCE,HIDDEN_ORIGIN_AIRPORT="selectedSourceAirport_1",HIDDEN_DESTINATION_AIRPORT="selectedDestinationAirport_1",AIRPORT_OPTIONS_FILE=CURRENT_LOCALE+"_airportOptions.jsp",CONTROLS_WRAPPER="pnlControlsWrapper",INVALID_ORIGIN_SEARCH_PANEL="pnlInvalidOriginSearch";INVALID_DESTINATION_SEARCH_PANEL="pnlInvalidDestinationSearch";TAB_KEYCODE="9",SHIFT_KEYCODE="16",COUNTRY_SELECT_ELEMENT="selectedWebdealsMarket",SEARCH_TYPE_BUTTON_PANEL="pnlSearchTypeButtons",PROMOTIONAL_FLIGHTS_BUTTON_PANEL="pnlPromotionalFlights",FARE_CATEGORY_SELECT_ELEMENT="selectedFareCategory",PRIORITY_PREFIX="PTY_",SCROLL_FOR_MORE_ID="SCR",CORPORATE_RATE_RADIO_ONE="",CORPORATE_RATE_RADIO_TWO="",SEARCH_TYPE_RADIO_ONE="",SEARCH_TYPE_RADIO_TWO="",RESET_DESTINATION_ELEMENT="resetDestinationAirports",RESET_ORIGIN_ELEMENT="resetOriginAirports";YAHOO.aerlingus.options.closeResults_Click=function(a){var b=YAHOO.util.Event.getTarget(a);while(b.id!=CONTROLS_WRAPPER){if(b.nodeName.toUpperCase()=="DIV"){b.innerHTML=""}if(b.nodeName.toUpperCase()=="SPAN"){b.style.visibility="hidden";break}else{b=b.parentNode}}};YAHOO.aerlingus.options.closeAllResults=function(){var f,b,d,g,e,a,c;f=YAHOO.util.Dom.get(CONTROLS_WRAPPER);b=YAHOO.util.Dom.getChildrenBy(f,getSpanElements);for(d=0;d<b.length;d++){g=b[d];e=YAHOO.util.Dom.getChildrenBy(g,getDivElements);for(c=0;c<e.length;c++){a=e[c];a.innerHTML=""}g.style.visibility="hidden"}};YAHOO.aerlingus.options.openResults_Click=function(d){var j,f,i,g,b,c,a,h;j=ALL_OPTIONS;f=YAHOO.util.Event.getTarget(d);i=YAHOO.util.Dom.getNextSibling(f);if(j.length<=0){if(f.id==ORIGIN_DROP_BUTTON){ORIGIN_NO_DATA=true;i.style.display="block"}else{if(f.id==DESTINATION_DROP_BUTTON){DESTINATION_NO_DATA=true;i.style.display="block"}}}else{g=YAHOO.util.Dom.getPreviousSibling(f);b=YAHOO.util.Dom.getAncestorByTagName(g,"DIV");c=YAHOO.util.Dom.getNextSibling(b);YAHOO.aerlingus.options.openResults(c,i)}YAHOO.util.Event.on(document,"click",function(k){a=YAHOO.util.Event.getTarget(k);if(c!=undefined){h=c;if(a!=h&&!YAHOO.util.Dom.isAncestor(h,a)&&a!=f&&!YAHOO.util.Dom.isAncestor(f,a)){h.style.visibility="hidden"}}})};YAHOO.aerlingus.options.resetOptions_Click=function(h){var b,a,g,f,d,c;b=YAHOO.util.Event.getTarget(h);a=YAHOO.util.Dom.getAncestorByTagName(b,"SPAN");g=YAHOO.util.Dom.getPreviousSibling(a);f=YAHOO.util.Dom.getChildrenBy(g,getInputElements);d=YAHOO.util.Dom.getChildrenBy(g,getDivElements);for(c=0;c<f.length;c++){f[c].value=""}YAHOO.aerlingus.options.openResults(a,d[1])};YAHOO.aerlingus.options.openResults=function(b,d){var c,e,a;YAHOO.aerlingus.options.closeAllResults();for(c=0,a=b.childNodes.length;c<a;++c){if(b.childNodes[c].nodeName.toUpperCase()=="SELECT"){e=b.childNodes[c];YAHOO.aerlingus.options.populateCountryOptions(e);YAHOO.aerlingus.options.populateAirportOptions(e);b.style.visibility="visible";d.style.display="none";break}}};YAHOO.aerlingus.options.populateCountryOptions=function(e){var j,f,d,a,m,l,c,o,n,g,k,h,b;f=YAHOO.util.Dom.getAncestorByTagName(e.id,"SPAN");d=YAHOO.util.Dom.getPreviousSibling(f);a=YAHOO.util.Dom.getChildrenBy(d,getInputElements);m=a[1].value;l=YAHOO.aerlingus.options.getCountryCodeOfSelectedAirport(m);c=YAHOO.aerlingus.options.getHiddenElement(OUTER_ORIGIN_PANEL).value;o=ALL_OPTIONS;e.innerHTML="";if(c!=""&&e.id!=ORIGIN_COUNTRY_SELECT_ELEMENT){o=DESTINATION_OPTIONS}n=document.createElement("option");n.innerHTML=ALL_COUNTRIES_TITLE;n.value=ALL_COUNTRIES_VALUE;n.title=ALL_COUNTRIES_TITLE;e.appendChild(n);for(g=0,j=o.length;g<j;++g){k=o[g];h=k.country.code;b=k.country.meaning;n=document.createElement("option");n.innerHTML=b;n.value=h;n.title=b;e.appendChild(n);if(n.value==l){n.selected="true"}}};YAHOO.aerlingus.options.getHiddenElement=function(c){var a,b;a=YAHOO.util.Dom.get(c);b=YAHOO.util.Dom.getChildrenBy(a,getInputElements);return b[1]};YAHOO.aerlingus.options.replaceStringWithNothing=function(a){YAHOO.aerlingus.options.populateField("","",a)};YAHOO.aerlingus.options.searchOriginElement_Blur=function(b){var a,c;a=YAHOO.util.Event.getTarget(b);YAHOO.aerlingus.options.replaceEnteredValue(a,ALL_OPTIONS);YAHOO.aerlingus.options.generateDestinationOptions_Blur(b);c=YAHOO.aerlingus.options.getErrorElement(a);YAHOO.util.Dom.setStyle(c,"visibility","hidden")};YAHOO.aerlingus.options.replaceEnteredValue=function(b,a){if(!YAHOO.aerlingus.options.replaceCodeWithAirport(b,a)){if(!YAHOO.aerlingus.options.replaceStringWithAirport(b)){YAHOO.aerlingus.options.replaceStringWithNothing(b)}}};YAHOO.aerlingus.options.getErrorElement=function(b){var d,a,c,e;d=YAHOO.util.Dom.getAncestorByTagName(b.id,"DIV");a=YAHOO.util.Dom.getNextSibling(d);c=YAHOO.util.Dom.getNextSibling(a);e=YAHOO.util.Dom.getNextSibling(c);return e};YAHOO.aerlingus.options.searchElement_Focus=function(b){var a=YAHOO.util.Event.getTarget(b);YAHOO.aerlingus.options.closeAllResults();a.select()};YAHOO.aerlingus.options.searchDestinationElement_Blur=function(c){var b,a,d;b=YAHOO.util.Event.getTarget(c);a=DESTINATION_OPTIONS;if(a.length==0){a=ALL_OPTIONS}YAHOO.aerlingus.options.replaceEnteredValue(b,a);d=YAHOO.aerlingus.options.getErrorElement(b);YAHOO.util.Dom.setStyle(d,"visibility","hidden");if(YAHOO.aerlingus.fareCategory.isBusinessRoute()){YAHOO.aerlingus.fareCategory.disableFareCategory(false)}};YAHOO.aerlingus.options.generateDestinationOptions_Blur=function(d){var b,a,c;b=YAHOO.util.Event.getTarget(d);a=YAHOO.util.Dom.getAncestorByTagName(b.id,"DIV");c=YAHOO.util.Dom.getChildrenBy(a,getInputElements);YAHOO.aerlingus.options.generateDestinationOptions(c)};YAHOO.aerlingus.options.generateDestinationOptions=function(c){var k,b,d,f,l,e,a,g,h;k=c[0];b=c[1];d=ALL_OPTIONS;if(trim(b.value," ")==""){DESTINATION_OPTIONS=[];YAHOO.aerlingus.options.autoComplete.initAutoComplete(DESTINATION_SEARCH_ELEMENT,"pnlDestinationAutoComplete",DESTINATION,ALL_OPTIONS)}else{outer_loop:for(f=0,h=d.length;f<h;++f){l=d[f];for(e=0,sublen=l.country.airports.length;e<sublen;++e){a=l.country.airports[e].airport;if(trim(a.code," ")==trim(b.value," ")){DESTINATION_OPTIONS=a.destinations;YAHOO.aerlingus.options.autoComplete.initAutoComplete(DESTINATION_SEARCH_ELEMENT,"pnlDestinationAutoComplete",DESTINATION,DESTINATION_OPTIONS);break outer_loop}}}}g=YAHOO.aerlingus.options.clearDestinationField(b);if(g){YAHOO.aerlingus.options.populateField("","",YAHOO.util.Dom.get(DESTINATION_SEARCH_ELEMENT))}};YAHOO.aerlingus.options.populateAirportOptions=function(f){var g,e,a,j,i,d,h,c,b;g=YAHOO.util.Dom.getAncestorByTagName(f.id,"SPAN");e=YAHOO.util.Dom.getPreviousSibling(g);a=YAHOO.util.Dom.getChildrenBy(e,getInputElements);j=a[1].value;i=f.options[f.selectedIndex].value;d=YAHOO.aerlingus.options.getHiddenElement(OUTER_ORIGIN_PANEL).value;h=YAHOO.util.Dom.getNextSibling(f);h.innerHTML="";c=ALL_OPTIONS;if(d!=""&&f.id!=ORIGIN_COUNTRY_SELECT_ELEMENT){j=YAHOO.aerlingus.options.getHiddenElement(OUTER_DESTINATION_PANEL).value;c=DESTINATION_OPTIONS}b=YAHOO.aerlingus.options.getAirportULOption(c,i,j);YAHOO.aerlingus.options.ie6Fix.makeWindowed(h);h.appendChild(b)};YAHOO.aerlingus.options.getAirportULOption=function(c,h,g){var f,b,e,d,a;f=YAHOO.aerlingus.options.sort.getSortedAirportsByMeaning(c);b=document.createElement("ul");e=YAHOO.aerlingus.options.priorityAirports.createPriorityAirportCountryCombos(c,h);b=YAHOO.aerlingus.options.priorityAirports.addPriorityLIOptions(b,e,g);for(d=0,a=f.length;d<a;++d){if(f[d].obj1.country.code==h||h==ALL_COUNTRIES_VALUE){b=YAHOO.aerlingus.options.appendLIOption(b,f[d],g,"",h)}}return b};YAHOO.aerlingus.options.priorityAirports.createPriorityAirportCountryCombos=function(b,a){var c=YAHOO.aerlingus.options.sort.getSortedPriorityAirportsByMeaning(b,a);return c};YAHOO.aerlingus.options.priorityAirports.addPriorityLIOptions=function(b,d,f){var c,e,a;for(c=0,a=d.length;c<a;++c){b=YAHOO.aerlingus.options.appendLIOption(b,d[c],f,PRIORITY_PREFIX,"")}if(d.length>0){e=document.createElement("li");e.id=SCROLL_FOR_MORE_ID;e.title="";e.innerHTML=SCROLL_FOR_MORE_VALUE;b.appendChild(e)}return b};YAHOO.aerlingus.options.appendLIOption=function(a,o,m,b,l){var h,j,n,p,g,d,k,e,f,c;h=o;j=h.obj2.airport.code;n=h.obj2.airport.meaning;p=h.obj2.airport.state.state.code;g=h.obj1.country.code;d=h.obj1.country.meaning;k=true;if(l==ALL_COUNTRIES_VALUE){e=new YAHOO.util.LocalDataSource(YAHOO.aerlingus.options.extraCountryAirports[g]);for(f=0;f<e.liveData.length;f++){if(e.liveData[f]==j){k=false;break}}}if(k){c=document.createElement("li");c.id=b+j;c.title=n+" ("+j+"), "+d;c.innerHTML="<span>"+p+" "+g+"</span>"+n+" ("+j+")";a.appendChild(c);if(m==c.id||PRIORITY_PREFIX+m==c.id){c.className="selected"}}return a};YAHOO.aerlingus.options.selectCountry_Change=function(b){var a=YAHOO.util.Event.getTarget(b);YAHOO.aerlingus.options.populateAirportOptions(a)};YAHOO.aerlingus.options.selectAirport_Click=function(d){var f,a,c,b;f=YAHOO.util.Event.getTarget(d);if(f.id!=SCROLL_FOR_MORE_ID){if(f.nodeName.toUpperCase()=="LI"){YAHOO.aerlingus.options.clearSelectedAirport(f);f.className="selected"}a=YAHOO.util.Dom.getAncestorByTagName(f.id,"SPAN");c=YAHOO.util.Dom.getPreviousSibling(a);b=YAHOO.util.Dom.getChildrenBy(c,getInputElements);YAHOO.aerlingus.options.populateField(f.title,f.id,b[0]);YAHOO.aerlingus.options.closeResults_Click(d);if(YAHOO.aerlingus.fareCategory.isBusinessRoute()){YAHOO.aerlingus.fareCategory.disableFareCategory(false)}if(a.id=="pnlOriginResults"){YAHOO.aerlingus.options.generateDestinationOptions(b)}}};YAHOO.aerlingus.options.selectAirport_Mouse=function(b){var a=YAHOO.util.Event.getTarget(b);if(a.id!=SCROLL_FOR_MORE_ID){if(a.nodeName.toUpperCase()=="LI"){YAHOO.aerlingus.options.clearSelectedAirport(a);a.className="selected"}}};YAHOO.aerlingus.options.clearSelectedAirport=function(a){var b,e,d,c;b=YAHOO.util.Dom.getAncestorByTagName(a.id,"UL");e=b.getElementsByTagName("li");for(c=0;c<e.length;c++){d=YAHOO.util.Dom.get(e[c].id);if(d.className=="selected"){d.className=""}}};YAHOO.aerlingus.options.populateFields_Load=function(){var a=YAHOO.util.Dom.get(ORIGIN_SEARCH_ELEMENT);YAHOO.aerlingus.options.populateFields(a);a=YAHOO.util.Dom.get(DESTINATION_SEARCH_ELEMENT);YAHOO.aerlingus.options.populateFields(a)};YAHOO.aerlingus.options.populateFields=function(e){var d,c,b,f,a;d=YAHOO.util.Dom.getAncestorByTagName(e,"DIV");c=YAHOO.util.Dom.getChildrenBy(d,getInputElements);b=c[1].value;f=YAHOO.aerlingus.options.getAirportMeaningFromCode(b);a=YAHOO.aerlingus.options.getCountryMeaningOfSelectedAirport(b);if(b!=""){e.value=YAHOO.aerlingus.options.htmlEntityDecode(f+" ("+b+"), "+a);if(e.id==ORIGIN_SEARCH_ELEMENT){YAHOO.aerlingus.options.generateDestinationOptions(c)}}YAHOO.aerlingus.searchType.setDefaultSearchType();YAHOO.aerlingus.fareCategory.disableFareCatForFlexible};YAHOO.aerlingus.options.populateField=function(c,a,b){b.value=YAHOO.aerlingus.options.htmlEntityDecode(c);var d=YAHOO.util.Dom.getNextSiblingBy(b,getInputElements);d.value=YAHOO.aerlingus.options.removePriorityPrefix(a);YAHOO.aerlingus.searchType.setDefaultSearchType();YAHOO.aerlingus.fareCategory.disableFareCatForFlexible};YAHOO.aerlingus.options.loadInit=function(){var d,f,c,e,a,b;d=YAHOO.util.Dom.get(SEARCH_TYPE_BUTTON_PANEL);f=YAHOO.util.Dom.getChildrenBy(d,getInputElements);SEARCH_TYPE_RADIO_ONE=f[0];SEARCH_TYPE_RADIO_TWO=f[1];YAHOO.util.Event.addListener(SEARCH_TYPE_RADIO_ONE,"click",YAHOO.aerlingus.fareCategory.flexibleDate_Click);c=new YAHOO.util.KeyListener(ORIGIN_SEARCH_ELEMENT,{keys:[40,38]},{fn:YAHOO.aerlingus.options.handleSearchKeyPress});c.enable();e=new YAHOO.util.KeyListener(DESTINATION_SEARCH_ELEMENT,{keys:[40,38]},{fn:YAHOO.aerlingus.options.handleSearchKeyPress});e.enable();if(IS_CORPORATE){a=YAHOO.util.Dom.get(PROMOTIONAL_FLIGHTS_BUTTON_PANEL);b=YAHOO.util.Dom.getChildrenBy(a,getInputElements);if(a){CORPORATE_RATE_RADIO_ONE=b[0];CORPORATE_RATE_RADIO_TWO=b[1];YAHOO.util.Event.addListener(CORPORATE_RATE_RADIO_ONE,"click",YAHOO.aerlingus.promotionalFlights.corporateRate_Click);YAHOO.util.Event.addListener(CORPORATE_RATE_RADIO_TWO,"click",YAHOO.aerlingus.promotionalFlights.corporateRate_Click)}YAHOO.aerlingus.promotionalFlights.corporate_Load()}};YAHOO.aerlingus.options.getJSONData=function(){var b,a;b={success:function(d){a=[];try{a=YAHOO.lang.JSON.parse(d.responseText);ALL_OPTIONS=a;YAHOO.aerlingus.options.autoComplete.initAutoComplete("txtOriginSearch","pnlOriginAutoComplete",ORIGIN,ALL_OPTIONS);YAHOO.aerlingus.options.autoComplete.initAutoComplete("txtDestinationSearch","pnlDestinationAutoComplete",DESTINATION,ALL_OPTIONS);if(ORIGIN_NO_DATA){ORIGIN_NO_DATA=false;YAHOO.aerlingus.options.reOpenResults(OUTER_ORIGIN_RESULTS_PANEL,ORIGIN_LOADING_PANEL)}else{if(DESTINATION_NO_DATA){DESTINATION_NO_DATA=false;YAHOO.aerlingus.options.reOpenResults(OUTER_DESTINATION_RESULTS_PANEL,DESTINATION_LOADING_PANEL)}}YAHOO.aerlingus.options.populateFields_Load()}catch(c){setTimeout("YAHOO.aerlingus.options.getJSONData()",10000);return}},failure:function(c){if(!YAHOO.util.Connect.isCallInProgress(c)){setTimeout("YAHOO.aerlingus.options.getJSONData()",10000)}},timeout:10000};YAHOO.util.Connect.asyncRequest("GET",JSON_OPTIONS_LOCATON+"/"+AIRPORT_OPTIONS_FILE,b)};YAHOO.aerlingus.options.reOpenResults=function(b,a){YAHOO.aerlingus.options.openResults(YAHOO.util.Dom.get(b),YAHOO.util.Dom.get(a))};YAHOO.aerlingus.options.selectLanguage_Change=function(a){var c,b;c=AUTOCOMPORIGININSTANCE;c.destroy();c=AUTOCOMPDESTINATIONINSTANCE;c.destroy();AUTOCOMPORIGININSTANCE=undefined;AUTOCOMPDESTINATIONINSTANCE=undefined;b=CURRENT_LOCALE;AIRPORT_OPTIONS_FILE=b+"_airportOptions.jsp";YAHOO.aerlingus.options.getJSONData();YAHOO.aerlingus.options.closeAllResults()};YAHOO.aerlingus.options.selectLanguage_Load=function(){var b,a;b=CURRENT_LOCALE;a=b.substring(0,2);AIRPORT_OPTIONS_FILE=a+"_airportOptions.jsp";YAHOO.aerlingus.options.getJSONData();YAHOO.aerlingus.options.closeAllResults()};YAHOO.aerlingus.options.showModal=function(){YAHOO.aerlingus.options.infoModal=new YAHOO.widget.Dialog("infoModal",{width:"30em",fixedcenter:true,visible:false,constraintoviewport:true});var b,a;b=YAHOO.util.Dom.get(ORIGIN_SEARCH_ELEMENT).value;a=YAHOO.util.Dom.get(DESTINATION_SEARCH_ELEMENT).value;YAHOO.aerlingus.options.infoModal.setHeader("Airport Options Selection");YAHOO.aerlingus.options.infoModal.setBody("You have selected the following:<br/>Origin: ["+b+"]<br/>Destination: ["+a+"]");YAHOO.aerlingus.options.infoModal.render();YAHOO.aerlingus.options.infoModal.show()};YAHOO.util.Event.on(window,"load",YAHOO.aerlingus.options.loadInit);YAHOO.util.Event.addListener("showModal","click",YAHOO.aerlingus.options.showModal);YAHOO.util.Event.onDOMReady(YAHOO.aerlingus.options.getJSONData);YAHOO.util.Event.addListener(ORIGIN_DROP_BUTTON,"click",YAHOO.aerlingus.options.openResults_Click);YAHOO.util.Event.addListener(DESTINATION_DROP_BUTTON,"click",YAHOO.aerlingus.options.openResults_Click);YAHOO.util.Event.addListener("closeOriginResults","click",YAHOO.aerlingus.options.closeResults_Click);YAHOO.util.Event.addListener("closeDestinationResults","click",YAHOO.aerlingus.options.closeResults_Click);YAHOO.util.Event.addListener(ORIGIN_COUNTRY_SELECT_ELEMENT,"change",YAHOO.aerlingus.options.selectCountry_Change);YAHOO.util.Event.addListener(DESTINATION_COUNTRY_SELECT_ELEMENT,"change",YAHOO.aerlingus.options.selectCountry_Change);YAHOO.util.Event.addListener(ORIGIN_AIRPORT_RESULTS_PANEL,"click",YAHOO.aerlingus.options.selectAirport_Click);YAHOO.util.Event.addListener(DESTINATION_AIRPORT_RESULTS_PANEL,"click",YAHOO.aerlingus.options.selectAirport_Click);YAHOO.util.Event.on(ORIGIN_AIRPORT_RESULTS_PANEL,"mouseover",YAHOO.aerlingus.options.selectAirport_Mouse);YAHOO.util.Event.on(DESTINATION_AIRPORT_RESULTS_PANEL,"mouseover",YAHOO.aerlingus.options.selectAirport_Mouse);YAHOO.util.Event.addListener(ORIGIN_SEARCH_ELEMENT,"blur",YAHOO.aerlingus.options.searchOriginElement_Blur);YAHOO.util.Event.addListener(DESTINATION_SEARCH_ELEMENT,"blur",YAHOO.aerlingus.options.searchDestinationElement_Blur);YAHOO.util.Event.addListener(ORIGIN_SEARCH_ELEMENT,"focus",YAHOO.aerlingus.options.searchElement_Focus);YAHOO.util.Event.addListener(DESTINATION_SEARCH_ELEMENT,"focus",YAHOO.aerlingus.options.searchElement_Focus);YAHOO.util.Event.addListener(RESET_DESTINATION_ELEMENT,"click",YAHOO.aerlingus.options.resetOptions_Click);YAHOO.util.Event.addListener(RESET_ORIGIN_ELEMENT,"click",YAHOO.aerlingus.options.resetOptions_Click);YAHOO.aerlingus.options.getAutoCompleteInstance=function(a){var b;if(a.id==ORIGIN_SEARCH_ELEMENT){b=AUTOCOMPORIGININSTANCE}else{if(a.id==DESTINATION_SEARCH_ELEMENT){b=AUTOCOMPDESTINATIONINSTANCE}}return b};YAHOO.aerlingus.options.replaceCodeWithAirport=function(d,b){var e,c,f,g,a;for(e=0,a=b.length;e<a;++e){f=b[e];for(c=0,sublen=f.country.airports.length;c<sublen;++c){g=f.country.airports[c].airport;if(trim(g.code," ")==trim(d.value.toUpperCase()," ")){YAHOO.aerlingus.options.populateField(g.meaning+" ("+g.code+"), "+f.country.meaning,g.code,d);return true;break}}}return false};YAHOO.aerlingus.options.replaceStringWithAirport=function(b){if(trim(b.value," ")!=""&&b.value.length>2){var f,c,a,e,d;f=YAHOO.aerlingus.options.getAutoCompleteInstance(b);if(f!=undefined){f.sendQuery(b.value);if(f.isContainerOpen()){f.collapseContainer()}c=f.getListEl();a=YAHOO.util.Dom.getChildrenBy(c,getLIElements);e=a[0].innerHTML;d=YAHOO.aerlingus.options.getCodeFromAirportOptionText(e);YAHOO.aerlingus.options.populateField(e,d,b);return true}}return false};YAHOO.aerlingus.options.getCodeFromAirportOptionText=function(a){return a.substring(a.indexOf("(")+parseInt(1),a.indexOf(")"))};YAHOO.aerlingus.options.clearDestinationField=function(m){var p,f,e,d,c,a,n,b,h,g,o;p=YAHOO.aerlingus.options.getHiddenElement(OUTER_DESTINATION_PANEL).value;if(p!=""){b=ALL_OPTIONS;for(f=0,alen=b.length;f<alen;++f){n=b[f];for(e=0,blen=n.country.airports.length;e<blen;++e){a=n.country.airports[e].airport;if(trim(a.code," ")==m.value){o=a.destinations;for(d=0,cLen=o.length;d<cLen;++d){h=o[d];for(c=0,dLen=h.country.airports.length;c<dLen;++c){g=h.country.airports[c].airport;if(g.code==p){return false}}}}}}}return true};YAHOO.aerlingus.options.getCountryCodeOfSelectedAirport=function(c){var b,a;b="";if(c!=""){a=YAHOO.aerlingus.options.getCountryOfSelectedAirport(c);if(a!=undefined){b=a.code}}return b};YAHOO.aerlingus.options.getCountryMeaningOfSelectedAirport=function(c){var a,b;a="";if(c!=""){b=YAHOO.aerlingus.options.getCountryOfSelectedAirport(c);a=b.meaning}return a};YAHOO.aerlingus.options.getCountryOfSelectedAirport=function(b){var c,e,d,g,f,a;c=ALL_OPTIONS;outer_loop:for(e=0,a=c.length;e<a;++e){f=c[e];for(d=0,sublen=f.country.airports.length;d<sublen;++d){g=f.country.airports[d];if(trim(g.airport.code," ")==b){return f.country}}}return undefined};YAHOO.aerlingus.options.getAirportMeaningFromCode=function(b){var c,e,f,d,g,a;c=ALL_OPTIONS;outer_loop:for(e=0,a=c.length;e<a;++e){f=c[e];for(d=0,sublen=f.country.airports.length;d<sublen;++d){g=f.country.airports[d];if(trim(g.airport.code," ")==b){return g.airport.meaning}}}return""};getInputElements=function(a){return(a.tagName=="INPUT")};getLIElements=function(a){return(a.tagName=="LI")};getSpanElements=function(a){return(a.tagName=="SPAN")};getDivElements=function(a){return(a.tagName=="DIV")};YAHOO.aerlingus.options.sort.getSortedAirportsByMeaning=function(b){var f,g,e,c,a,d;f=[];for(d=0,a=b.length;d<a;++d){g=b[d];e=b[d].country.airports;for(c=0,sublen=e.length;c<sublen;++c){f[f.length++]=new YAHOO.aerlingus.options.makePair(g,e[c])}}return f.sort(YAHOO.aerlingus.options.sort.sortByMeaning)};YAHOO.aerlingus.options.sort.getSortedPriorityAirportsByMeaning=function(a,f){var b,g,e,h,d,c,l;b=[];g=new YAHOO.util.LocalDataSource(YAHOO.aerlingus.options.priorityAirportCodes[f]);for(e=0;e<a.length;e++){h=a[e];if(h.country.code==f){for(d=0,sublen=h.country.airports.length;d<sublen;++d){l=h.country.airports[d];for(c=0;c<g.liveData.length;c++){if(g.liveData[c]==l.airport.code){b[b.length++]=new YAHOO.aerlingus.options.makePair(h,l)}}}break}}return b.sort(YAHOO.aerlingus.options.sort.sortByMeaning)};YAHOO.aerlingus.options.sort.sortByMeaning=function(e,d){var c,f;c=e.obj2.airport.meaning.toLowerCase();f=d.obj2.airport.meaning.toLowerCase();return((c<f)?-1:((c>f)?1:0))};function trim(b,a){return ltrim(rtrim(b,a),a)}function ltrim(b,a){a=a||"\\s";return b.replace(new RegExp("^["+a+"]+","g"),"")}function rtrim(b,a){a=a||"\\s";return b.replace(new RegExp("["+a+"]+$","g"),"")}YAHOO.aerlingus.options.htmlEntityDecode=function(b){var a=document.createElement("textarea");a.innerHTML=b.replace(/</g,"&lt;").replace(/>/g,"&gt;");return a.value};YAHOO.aerlingus.options.handleSearchKeyPress=function(c,b,d){switch(b[0]){case 40:var a,e;a=YAHOO.util.Event.getTarget(b[1]);e=YAHOO.aerlingus.options.getAutoCompleteInstance(a);if(e!=undefined){if(!e.isContainerOpen()){e.sendQuery(a.value)}}break}};YAHOO.aerlingus.options.removePriorityPrefix=function(b){var c,a;c=PRIORITY_PREFIX;a=b.search(c);if(a!=-1){b=b.substring(4,b.length)}return b};YAHOO.aerlingus.options.makePair=function(b,a){this.obj1=b;this.obj2=a};YAHOO.aerlingus.options.autoComplete.generateAutoCompleteData=function(g,e){var j,f,h,k,b,c,a,d;j=[];f=0;for(d=0,leni=g.length;d<leni;++d){h=g[d].obj1;k=g[d].obj2;b=k.airport;c=YAHOO.aerlingus.options.htmlEntityDecode(b.code);a=YAHOO.aerlingus.options.htmlEntityDecode(b.meaning+" ("+b.code+"), "+h.country.meaning);j[f]=new YAHOO.aerlingus.options.makePair(c,a);f++}return j};YAHOO.aerlingus.options.switchRow=function(b,e,a,c){var d=c[a];c[a]=b;c[e]=d;return c};YAHOO.aerlingus.options.autoComplete.initAutoComplete=function(u,f,q,e){var m,v,r,g,w,s,c,p,j,t,d,o,k,l,h,n,b,y,a;m=[];try{s=YAHOO.aerlingus.options.sort.getSortedAirportsByMeaning(e);m=new YAHOO.aerlingus.options.autoComplete.generateAutoCompleteData(s,q)}catch(i){return}v=new YAHOO.widget.DS_JSArray(m);v.responseSchema={fields:["obj2","obj1"]};r;if(q==DESTINATION){if(undefined!=AUTOCOMPDESTINATIONINSTANCE){r=AUTOCOMPDESTINATIONINSTANCE;r.destroy()}}r=new YAHOO.widget.AutoComplete(u,f,v);r.autoHighlight=false;r.typeAhead=true;r.useIFrame=true;r.animVert=false;r.animHoriz=false;r.maxResultsDisplayed=20;r.resultTypeList=false;r.minQueryLength=3;r.useShadow=false;r.applyLocalFilter=true;r.queryMatchContains=true;g=YAHOO.aerlingus.options.getHiddenElement(OUTER_ORIGIN_PANEL);if(q==DESTINATION){g=YAHOO.aerlingus.options.getHiddenElement(OUTER_DESTINATION_PANEL)}t=function(z,x){w=x[0];c=x[1];p=x[2];g.value=YAHOO.aerlingus.options.removePriorityPrefix(p.obj1)};d=function(z,x){u=x[0]._elTextbox;j=x[1]._sResultMatch;u.value=j};o=function(z,A,x){k=A[2];u=A[0]._elTextbox;l=YAHOO.util.Dom.getAncestorByTagName(u.id,"DIV");h=YAHOO.util.Dom.getNextSibling(l);n=YAHOO.util.Dom.getNextSibling(h);b=YAHOO.util.Dom.getNextSibling(n);if(k.length==0){YAHOO.aerlingus.options.ie6Fix.makeWindowed(b);YAHOO.util.Dom.setStyle(b,"visibility","visible")}else{YAHOO.util.Dom.setStyle(b,"visibility","hidden")}};r.itemSelectEvent.subscribe(t);r.dataReturnEvent.subscribe(o);r.itemMouseOverEvent.subscribe(d);if(q==ORIGIN&&AUTOCOMPORIGININSTANCE==undefined){AUTOCOMPORIGININSTANCE=r;YAHOO.util.Event.addListener(ORIGIN_SEARCH_ELEMENT,"blur",YAHOO.aerlingus.options.searchOriginElement_Blur);YAHOO.util.Event.addListener(ORIGIN_SEARCH_ELEMENT,"focus",YAHOO.aerlingus.options.searchElement_Focus);y=new YAHOO.util.KeyListener(ORIGIN_SEARCH_ELEMENT,{keys:[40,38]},{fn:YAHOO.aerlingus.options.handleSearchKeyPress});y.enable()}else{if(q==DESTINATION){AUTOCOMPDESTINATIONINSTANCE=r;YAHOO.util.Event.addListener(DESTINATION_SEARCH_ELEMENT,"blur",YAHOO.aerlingus.options.searchDestinationElement_Blur);YAHOO.util.Event.addListener(DESTINATION_SEARCH_ELEMENT,"focus",YAHOO.aerlingus.options.searchElement_Focus);a=new YAHOO.util.KeyListener(DESTINATION_SEARCH_ELEMENT,{keys:[40,38]},{fn:YAHOO.aerlingus.options.handleSearchKeyPress});a.enable()}}};YAHOO.aerlingus.searchType.setDefaultSearchType=function(){var b,a;b=YAHOO.util.Dom.get(SEARCH_TYPE_BUTTON_PANEL);a=YAHOO.util.Dom.getChildrenBy(b,getInputElements);if(!a[0].disabled){if(YAHOO.aerlingus.fareCategory.isBusinessRoute()){YAHOO.aerlingus.fareCategory.disableFareCategory(false)}else{YAHOO.aerlingus.fareCategory.disableFareCategory(true)}YAHOO.aerlingus.fareCategory.fareType_Load()}};YAHOO.aerlingus.searchType.setFlexibleSearchType=function(c){var b,a;b=YAHOO.util.Dom.get(SEARCH_TYPE_BUTTON_PANEL);a=YAHOO.util.Dom.getChildrenBy(b,getInputElements);if(c){a[0].checked=true}else{a[1].checked=true}};YAHOO.aerlingus.searchType.getSelectedRouteCode=function(){var a,b,c;a=YAHOO.aerlingus.options.getHiddenElement(OUTER_ORIGIN_PANEL).value;b=YAHOO.aerlingus.options.getHiddenElement(OUTER_DESTINATION_PANEL).value;c=a+b;return c};YAHOO.aerlingus.searchType.isFixedSearchRoute=function(){var c,a,b;c=YAHOO.aerlingus.searchType.getSelectedRouteCode();a=fixedSearchRoutes.length;for(b=0;b<a;b++){if(fixedSearchRoutes[b]==c){return true}}return false};YAHOO.aerlingus.promotionalFlights.corporateRate_Click=function(c){var a,b,d;a=YAHOO.util.Event.getTarget(c);b=YAHOO.util.Dom.get(SEARCH_TYPE_BUTTON_PANEL);d=YAHOO.util.Dom.getChildrenBy(b,getInputElements);if(a.value=="true"){d[0].disabled=true;d[1].checked=true;if(YAHOO.aerlingus.fareCategory.isBusinessRoute()){YAHOO.aerlingus.fareCategory.disableFareCategory(false)}}else{d[0].disabled=false}};YAHOO.aerlingus.promotionalFlights.corporate_Load=function(){var a,b,c,d;a=YAHOO.util.Dom.get(PROMOTIONAL_FLIGHTS_BUTTON_PANEL);b=YAHOO.util.Dom.getChildrenBy(a,getInputElements);b[0].checked=true;b[1].checked=false;YAHOO.aerlingus.searchType.setFlexibleSearchType(false)};YAHOO.aerlingus.fareCategory.flexibleDate_Click=function(a){YAHOO.aerlingus.fareCategory.selectFareCategory(0)};YAHOO.aerlingus.fareCategory.fareType_Load=function(){var a=YAHOO.util.Dom.get(FARE_CATEGORY_SELECT_ELEMENT);if(a.selectedIndex==1){YAHOO.aerlingus.searchType.setFlexibleSearchType(false)}else{YAHOO.aerlingus.searchType.setFlexibleSearchType(true)}};YAHOO.aerlingus.fareCategory.fareType_Change=function(b){var a=YAHOO.util.Event.getTarget(b);if(a.selectedIndex==1){YAHOO.aerlingus.searchType.setFlexibleSearchType(false)}else{YAHOO.aerlingus.searchType.setFlexibleSearchType(true)}};YAHOO.util.Event.addListener(FARE_CATEGORY_SELECT_ELEMENT,"change",YAHOO.aerlingus.fareCategory.fareType_Change);YAHOO.aerlingus.fareCategory.selectFareCategory=function(c){var b,a,d,e;b=YAHOO.util.Dom.get(FARE_CATEGORY_SELECT_ELEMENT);b.options[c].selected=true};YAHOO.aerlingus.fareCategory.disableFareCategory=function(c){var b,a,d,e;b=YAHOO.util.Dom.get(FARE_CATEGORY_SELECT_ELEMENT);if(c==false){b.disabled=false}else{a=b.length;for(d=0;d<a;d++){e=b.options[d].value;if(e==0){b.options[d].selected=true;break}}b.disabled=true}};YAHOO.aerlingus.fareCategory.disableBusiness=function(){var a=YAHOO.aerlingus.fareCategory.isBusinessRoute();YAHOO.aerlingus.fareCategory.disableFareCategory(!a)};YAHOO.aerlingus.fareCategory.isBusinessRoute=function(){var c,a,b;c=YAHOO.aerlingus.searchType.getSelectedRouteCode();a=businessRoutes.length;for(b=0;b<a;b++){if(businessRoutes[b]==c){return true}}return false};YAHOO.aerlingus.fareCategory.disableFareCatForFlexible=function(){var b,c,a;b=YAHOO.util.Dom.get(FARE_CATEGORY_SELECT_ELEMENT);c=YAHOO.util.Dom.get(SEARCH_TYPE_BUTTON_PANEL);a=YAHOO.util.Dom.getChildrenBy(c,getInputElements);if(!YAHOO.aerlingus.fareCategory.isBusinessRoute()){if(a[0].checked==true){b.disabled=true}}};YAHOO.aerlingus.options.ie6Fix.makeWindowed=function(a){var c,b;c=document.all&&(navigator.userAgent.toLowerCase().indexOf("msie 6.")!=-1);if(c){b=document.createElement("iframe");b.style.position="absolute";b.style.display="block";b.style.zIndex="-1";b.style.width="100%";b.style.height="180px";b.style.top="0";b.style.left="0";a.appendChild(b)}};