﻿(function(){SS.models.YearModel=function(){this.selectionChanged=new YAHOO.util.CustomEvent("selectionChanged",this);this.currentQuery=null;this.currency=null;this.apiKey="";this.outboundSelectedId="";this.inboundSelectedId=""};SS.models.YearModel.prototype={init:function(A){this.currency=SS.entities.Currency.getCurrencyFromJsonObject(A);this.apiKey=A.apiKey;this.currentQuery=SS.entities.Query.getQueryFromJsonObject(SS.queryType.exactdates,A)},setSelection:function(A){var C=A.substring(0,1);var B=A.substring(1);if(C=="o"){this.outboundSelectedId=B;if(this.outboundSelectedId>this.inboundSelectedId||this.inboundSelectedId==""){this.setSelection("i"+B)}}else{this.inboundSelectedId=B;if(this.outboundSelectedId>this.inboundSelectedId||this.outboundSelectedId==""){this.setSelection("o"+B)}}this.selectionChanged.fire(C,B)}}}());
(function(){var A=SS.controllers.YearController=function(D){this.model=new SS.models.YearModel();var C=this.model,B=new SS.views.YearView(C);B.init();this.registerYearView(B);C.init(D)};A.prototype={registerYearView:function(B){B.monthSelected.subscribe(this.onMonthSelected,this,true);B.nextButtonClicked.subscribe(this.onNextButtonClicked,this,true)},onMonthSelected:function(D,C){var B=C[0];this.model.setSelection(B);SS.global.scView.selectDepartureDate(this.model.outboundSelectedId);SS.global.scView.selectReturnDate(this.model.inboundSelectedId);SS.global.scView.notifyDepartureDateChangeInView(this.model.outboundSelectedId,this.model.inboundSelectedId);SS.global.scView.notifyReturnDateChangeInView(this.model.inboundSelectedId,this.model.outboundSelectedId)},onNextButtonClicked:function(F,D){var E=false;var C="";if(this.model.currentQuery.isReturn){if(this.model.outboundSelectedId!=""){if(this.model.inboundSelectedId!=""){if(this.model.outboundSelectedId<=this.model.inboundSelectedId){E=true}else{C=SS.util.gettext("return_b4_depart")}}else{C=SS.util.gettext("select_both_months")}}else{C=SS.util.gettext("select_both_months")}}else{if(this.model.outboundSelectedId!=""){E=true}else{C=SS.util.gettext("select_dep_month")}}if(E){var B=new SS.entities.QueryState();B.init();B.setFlexibleDates(true);B.setDepartureDate(this.model.outboundSelectedId);if(this.model.currentQuery.isReturn){B.setReturnDate(this.model.inboundSelectedId)}document.location=B.url()}else{alert(C)}}}}());
(function(){SS.views.YearView=function(H){this.model=H;var K=SS.factories.ItineraryFactory.getItinerary();var C={o:null,i:null};var U={o:null,i:null};var J={o:null,i:null};var F;var I;var A;var E=new YAHOO.util.CustomEvent("monthSelected",this);var D=new YAHOO.util.CustomEvent("nextButtonClicked",this);var Q=function(){C.o=$D.getElementsByClassName("month o","td","year_panel");if(K.isReturn){C.i=$D.getElementsByClassName("month i","td","year_panel")}F=$D.get("sel_price");I=$D.get("sel_total");A=$D.get("sel_next");for(var V=0;V<C.o.length;V++){P(C.o[V])}if(C.i){for(var V=0;V<C.i.length;V++){P(C.i[V])}}if(A!=null){$E.addListener(A,"click",M,[A],this)}K.itineraryChanged.subscribe(R,this,true);H.selectionChanged.subscribe(S,this,true);displayTotalPrice();$E.onDOMReady(function(){T($D.getElementsByClassName("tooltip_source","span","selection"),$D.get("prices_tooltip"),10,20);T($D.getElementsByClassName("tooltip_source","span","title_desc"),$D.get("cheaperindirects_tooltip"),10,20)})};var P=function(V){$E.addListener(V,"mouseover",O,["over",V,false],this);$E.addListener(V,"mouseout",O,["out",V,false],this);$E.addListener(V,"click",G,[V],this);var W=V.getElementsByTagName("input")[0];$E.addListener(W,"click",B,[W],this)};var T=function(V,Y,Z,X){var W=document.createElement("div");document.body.appendChild(W);W.innerHTML=Y.innerHTML;W.style.width=Y.style.width;W.className=Y.className;W.id=Y.id;Y.parentNode.removeChild(Y);for(i=0;i<V.length;i++){source=V[i];tooltip=new SS.widgets.Tooltip(W,V[i],Z,X)}};var L=function(W){var X=$D.getElementsByClassName("price","td",U[W])[0];var V=$D.getFirstChild(X).value;J[W]=V;displayTotalPrice()};displayTotalPrice=function(){var W=K.isReturn;if(!U.o||(W&&!U.i)){$D.setStyle(F,"display","none");$D.addClass(A,"disabled");A.disabled=true;return }var V="&mdash;";if(J.o&&(!W||J.i)){var X;X=W?Number(J.o)+Number(J.i):X=Number(J.o);X*=(K.adults+K.children);V=H.currency.formatPrice(X,2,false)}$D.setStyle(F,"display","block");I.innerHTML=V;$D.removeClass(A,"disabled");A.disabled=false};var N=function(Y){var W=C[Y];for(var X=0;X<W.length;X++){var V=W[X];$D.removeClass(V,"selected");$D.get("price"+V.id).checked=false}};var S=function(Z,W){var Y=W[0];var V=W[1];if(!K.isReturn&&Y=="i"){return }var X=$D.get(Y+V);U[Y]=X;N(Y);$D.removeClass("o"+V,"over");$D.removeClass("i"+V,"over");$D.addClass(X,"selected");$D.get("price"+Y+V).checked=true;L(Y)};var M=function(W,V){D.fire()};var G=function(W,V){var X=V[0];E.fire(X.id)};var O=function(a,c){var Y=c[0];var W=c[1];var d=W.id.substring(0,1);var b=W.className;if(d==""){return false}if($D.hasClass(W,"selected")){return false}if(Y=="over"){$D.addClass(W,"over")}else{$D.removeClass(W,"over")}if(null!=H.currentQuery&&H.currentQuery.isReturn){var Z=(d=="o"?"i":"o")+W.id.substring(1);var X,V;if(d=="o"){X=H.inboundSelectedId!="";if(X){V=(W.id.substring(1)>H.inboundSelectedId)}}else{X=H.outboundSelectedId!="";if(X){V=(W.id.substring(1)<H.outboundSelectedId)}}if(V||!X){if(Y=="over"){$D.addClass(Z,"over")}else{$D.removeClass(Z,"over")}}}return true};var B=function(X,W){var V=W[0];E.fire(V.id.substring(5))};var R=function(W,V){displayTotalPrice()};return({init:Q,monthSelected:E,nextButtonClicked:D})}})();
