var MediaGallery=new JS.Class({include:Ojay.Observable,initialize:function(A,B){this.container=Ojay(A);var C=this.container.children().at(0).getRegion();this._options=B||{};this._paginated=this._options.paginated!==false;if(this._paginated){this.paginator=new Ojay.Paginator(A,{width:(B.across*C.getWidth())+"px",height:(B.down*C.getHeight())+"px",direction:B.direction})}this.mask=new Ojay.PageMask({color:"#edeae5",opacity:0.7});this.overlay=new Ojay.ContentOverlay({className:"journal-media"});this.mask.positionBehind(this.overlay);this.closeButton=this.getCloseButton();this.container.descendants("a").on("click",function(D,E){E.stopDefault();this.mask.show("fade");this.updateOverlay(D.node.href)._(this.overlay).fitToContent().center().show("fade")._(this.closeButton).setPosition().show("fade")},this);this.overlay.getContainer().on("click",Ojay.delegateEvent({"a.previous, a.next":function(D,E){E.stopDefault();this.updateOverlay(D.node.href)}}),this)},getCloseButton:function(){if(this.closeButton){return this.closeButton}this.closeButton=new Ojay.ContentOverlay({className:"overlay-close"});this.closeButton.positionInFront(this.overlay).setSize(34,35);var A=this.overlay;this.closeButton.extend({setPosition:function(){var B=A.getRegion(),C=this.getSize();if(!B||!C){return this}this.callSuper(B.right-C.width*0.7,B.top-C.height*0.3);return this}});this.closeButton.getContainer().on("click")._(this).hideOverlay();return this.closeButton},setup:function(){if(this._paginated){this.paginator.setup();if(this.paginator.getPages()<=1){return this}var B=this.paginator.addControls("after");var D=B.getPreviousButton(),C=B.getNextButton();var A=this.paginator.getContainer();if(this._options.direction=="vertical"){A.insert(D,"before").insert(C,"after")}}return this},updateOverlay:function(A){return Ojay.HTTP.GET(A,{overlay:true}).insertInto(this.overlay).evalScripts()._(this.closeButton).setPosition()},hideOverlay:function(){[this.mask,this.overlay,this.closeButton].forEach({hide:"fade"});this.overlay.setContent("");return this}})