(function(){var i=Chai.Lang,g=Chai.Dom,j=Chai.DomSize,e=Sigalert.Widget.StaticMap;function a(){var n=this.get("host");n.slideMap(0,0.2*n.getHeight());n._onUserDidAction()}function d(){var n=this.get("host");n.slideMap(-0.2*n.getWidth(),0);n._onUserDidAction()}function m(){var n=this.get("host");n.slideMap(0,-0.2*n.getHeight());n._onUserDidAction()}function f(){var n=this.get("host");n.slideMap(0.2*n.getWidth(),0);n._onUserDidAction()}function c(){this.get("host").zoomIn();this.get("host")._onUserDidAction()}function h(){this.get("host").zoomOut();this.get("host")._onUserDidAction()}function b(){var n=this.get("zoomSliderStep"),p=Math.floor((this.moZoomSlider.getYValue()+(n/2))/n),o=p*n;if(o!==this.moZoomSlider.getYValue()){i.later(0,function(){this.moZoomSlider.setValue(o)},null,this)}else{if(this.get("host").setZoom(p)){this.get("host")._onUserDidAction()}}}function k(o){var n=o.zoom*this.get("zoomSliderStep");if(n!==this.moZoomSlider.getYValue()){this.moZoomSlider.setValue(n)}}function l(){var r=this.get("host");var o=g.create("div").setClass("MapZoomSliderHeight").css({visibility:"hidden",position:"absolute",top:"0px",left:"0px"}).get();document.body.appendChild(o);var n=j.getDimension(o,"height");document.body.removeChild(o);this.set("zoomSliderMax",n);this.set("zoomSliderStep",n/r.getMaxZoom());var p=r.makeCover(e.StrWidgetCoverName,{className:"widget-cover"}).getElement();g.fragment("#mapNavZoom").appendTo(p);this.mdivZoomControlsContainer=g.get(".MapZoomControls",p);g.use(".MapNavUp",this.mdivZoomControlsContainer).on("click",a,null,this);g.use(".MapNavRight",this.mdivZoomControlsContainer).on("click",d,null,this);g.use(".MapNavDown",this.mdivZoomControlsContainer).on("click",m,null,this);g.use(".MapNavLeft",this.mdivZoomControlsContainer).on("click",f,null,this);g.use(".MapZoomPlus",this.mdivZoomControlsContainer).on("click",c,null,this);g.use(".MapZoomMinus",this.mdivZoomControlsContainer).on("click",h,null,this);var s=g.use(".MapZoomSlider",this.mdivZoomControlsContainer).setAttribute("id",g.generateId("idZoomSliderContainer")).get(),q=g.use(".MapZoomSliderThumb",this.mdivZoomControlsContainer).setAttribute("id",g.generateId("idZoomSliderContainer")).get();this.moZoomSlider=YAHOO.widget.Slider.getVertSlider(s.id,q.id,0,this.get("zoomSliderMax"));this.moZoomSlider.subscribe("slideEnd",b,null,this);this.moZoomSlider.setValue(r.getZoom()*this.get("zoomSliderStep"))}Chai.Widget.MapNavZoomPlugin=Chai.Widget.WidgetPlugin.extend({init:function(o,n){this.mdivZoomControlsContainer=null;this.moZoomSlider=null;this._super(o,n);this.addAttributes({zoomSliderMax:{value:0,validator:i.isNumber},zoomSliderStep:{value:0,validator:i.isNumber}});o.on("ready",l,this);o.onMapZoomChanged.subscribe(k,this,this)},destruct:function(){if(this.moZoomSlider!==null){this.moZoomSlider.unsubscribeAll()}if(this.mdivZoomControlsContainer!==null){this.get("host").getCover(e.StrWidgetCoverName).remove(this.mdivZoomControlsContainer)}this.get("host").onMapZoomChanged.remove(k,this);this.mdivZoomControlsContainer=null;this.moZoomSlider=null;this._super()}});Chai.Widget.MapNavZoomPlugin.PluginNamespace="Chai.Widget.MapNavZoomPlugin"}());
