var Overlay=new Class({Implements:Options,options:{colour:"#000",opacity:0.7,zIndex:100,onClick:new Class()},initialize:function(a){this.setOptions(a);this.container=new Element("div",{id:"OverlayContainer",styles:{position:"absolute",left:0,top:0,width:"100%",visibility:"hidden",overflow:"hidden",zIndex:this.options.zIndex,opacity:0}}).inject(this.options.container,"inside");this.iframe=new Element("iframe",{id:"OverlayIframe",name:"OverlayIframe",src:"javascript:void(0);",frameborder:0,scrolling:"no",styles:{position:"absolute",top:0,left:0,width:"100%",height:"100%",filter:"progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)",opacity:0,zIndex:101}}).inject(this.container,"inside");this.overlay=new Element("div",{id:"Overlay",styles:{position:"absolute",left:0,top:0,width:"100%",height:"100%",zIndex:102,backgroundColor:this.options.colour}}).inject(this.container,"inside");this.container.addEvent("click",function(){this.options.onClick()}.bind(this));this.fade=new Fx.Morph(this.container);this.position();window.addEvent("resize",this.position.bind(this))},position:function(){if(this.options.container==document.body){if(this.options.container.getHeight()>=this.options.container.getScrollHeight()){this.container.setStyles({width:window.getWidth(),height:window.getHeight()})}else{this.container.setStyles({width:window.getWidth(),height:window.getScrollHeight()})}}else{var a=this.options.container.getCoordinates();this.container.setStyles({top:a.top,height:a.height,left:a.left,width:a.width})}},show:function(){this.fade.start({visibility:"visible",opacity:this.options.opacity}).chain(function(){visibility:"hidden"})},hide:function(){this.fade.start({opacity:0}).chain(function(){visibility:"hidden"})}});var multiBox=new Class({Implements:Options,options:{initialSize:{w:250,h:250},useOverlay:false,contentColor:"#fff",showNumbers:true,showControls:true,descClassName:false,movieSize:{w:400,h:300},offset:{x:0,y:0},fixedTop:false,path:"./Files/",openFromLink:true,useKeyboard:true},initialize:function(a){this.setOptions(a);this.openClosePos={};this.contentToLoad={};this.contentObj={};this.containerDefaults={};this.multiBox=[];this.families=[];this.content=[];this.timer=0;this.index=0;this.opened=false;this.currentGallery=null;if($$(this.options.mbClass).length>0){this.start()}},start:function(){$$(this.options.mbClass).each(function(b){if($chk(b.get("rel"))){b.store("origRel",b.get("rel"))}if($chk(b.get("title"))){b.store("origTitle",b.get("title"))}if(b.rel.test(/\[*?]/i)){if(b.get("rel").contains(",")){var a=b.get("rel").split(",");a.each(function(c,d){if(c.contains("[")){b.set("rel",c)}},this)}this.families.include(b.get("rel"))}this.multiBox.push(b)},this);this.multiBox.each(function(a){if(a.rel.test(/\[*?]/i)){this.families.each(function(c,b){if(a.get("rel")==c){if(!this.content[b]){this.content[b]=[]}this.content[b].push(a)}},this)}},this);this.multiBox.each(function(a){if(a.rel.test(/\[*?]/i)==false){this.content.push([a])}},this);this.container=new Element("div").addClass("MultiBoxContainer").inject(this.options.container,"inside");this.iframe=new Element("iframe",{id:"multiBoxIframe",name:"mulitBoxIframe",src:"javascript:void(0);",frameborder:0,scrolling:"no",styles:{position:"absolute",top:0,left:0,width:"100%",height:"100%",filter:"progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)",opacity:0}}).inject(this.container,"inside");this.box=new Element("div").addClass("MultiBoxContent").inject(this.container,"inside");this.closeButton=new Element("div").addClass("MultiBoxClose").inject(this.container,"inside").addEvent("click",this.close.bind(this));this.controlsContainer=new Element("div").addClass("MultiBoxControlsContainer").inject(this.container,"inside");this.controls=new Element("div").addClass("MultiBoxControls").inject(this.controlsContainer,"inside");this.previousButton=new Element("div").addClass("MultiBoxPrevious").inject(this.controls,"inside").addEvent("click",this.previous.bind(this));this.nextButton=new Element("div").addClass("MultiBoxNext").inject(this.controls,"inside").addEvent("click",this.next.bind(this));this.title=new Element("div").addClass("MultiBoxTitle").inject(this.controls,"inside");this.number=new Element("div").addClass("MultiBoxNumber").inject(this.controls,"inside");this.description=new Element("div").addClass("MultiBoxDescription").inject(this.controls,"inside");if(this.options.useKeyboard){$(window.document).addEvent("keydown",function(a){if(a.key=="right"||a.key=="space"){this.next()}else{if(a.key=="left"){this.previous()}else{if(a.key=="esc"){this.close()}}}}.bind(this))}if(this.options.useOverlay){this.overlay=new Overlay({container:this.options.container,onClick:this.close.bind(this)})}if(this.options.descClassName){this.descriptions=$$("."+this.options.descClassName)}if(this.multiBox.length==1){this.title.setStyle("margin-left",0);this.description.setStyle("margin-left",0);this.previousButton.setStyle("display","none");this.nextButton.setStyle("display","none");this.number.setStyle("display","none")}new Element("div").setStyle("clear","both").inject(this.controls,"inside");this.content.each(function(b,a){b.each(function(d,c){d.addEvent("click",function(f){var g=($(f.target).match("a"))?$(f.target):$(f.target).getParent("a");f.preventDefault();this.open(b.indexOf(g),b)}.bind(this));if(d.href.indexOf("#")>-1){d.content=$(d.href.substr(d.href.indexOf("#")+1));if(d.content){d.content.setStyle("display","none")}}},this)},this);this.containerEffects=new Fx.Morph(this.container,{duration:1000});this.controlEffects=new Fx.Morph(this.controlsContainer,{duration:300});this.reset()},setContentType:function(c){var e=c.href.substr(c.href.lastIndexOf(".")+1).toLowerCase();var a=c.retrieve("origRel");var d={};if($chk(a)){var b=a.split(",");b.each(function(g){if(g.test(/\[*?]/i)!=true){var f=g.split(":");d[f[0]]=f[1]}})}this.contentObj={};this.contentObj.url=c.href;this.contentObj.xH=0;if(d.width){this.contentObj.width=d.width}else{this.contentObj.width=this.options.movieSize.w}if(d.height){this.contentObj.height=d.height}else{this.contentObj.height=this.options.movieSize.h}if(d.panel){this.panelPosition=d.panel}else{this.panelPosition=this.options.panel}},reset:function(){this.container.setStyles({opacity:0,display:"none"});this.controlsContainer.setStyle("height",0);this.removeContent();this.previousButton.removeClass("MultiBoxButtonDisabled");this.nextButton.removeClass("MultiBoxButtonDisabled");this.opened=false},getOpenClosePos:function(b){if(this.options.openFromLink){if(b.getFirst()){var a=b.getFirst().getCoordinates().width-(this.container.getStyle("border").toInt()*2);if(a<0){a=0}var c=b.getFirst().getCoordinates().height-(this.container.getStyle("border").toInt()*2);if(c<0){c=0}this.openClosePos={width:a,height:c,top:b.getFirst().getCoordinates().top,left:b.getFirst().getCoordinates().left}}else{var a=b.getCoordinates().width-(this.container.getStyle("border").toInt()*2);if(a<0){a=0}var c=b.getCoordinates().height-(this.container.getStyle("border").toInt()*2);if(c<0){c=0}this.openClosePos={width:a,height:c,top:b.getCoordinates().top,left:b.getCoordinates().left}}}else{if(this.options.fixedTop){var d=this.options.fixedTop}else{var d=((window.getHeight()/2)-(this.options.initialSize.h/2)-this.container.getStyle("border").toInt())+this.options.offset.y}this.openClosePos={width:this.options.initialSize.w,height:this.options.initialSize.h,top:d,left:((window.getWidth()/2)-(this.options.initialSize.w/2)-this.container.getStyle("border").toInt())+this.options.offset.x}}return this.openClosePos},open:function(b,a){this.currentGallery=a;this.index=b;this.openId=this.currentGallery[this.index].getProperty("id");if(!this.opened){this.opened=true;if(this.options.useOverlay){this.overlay.show()}this.container.setStyles(this.getOpenClosePos(this.currentGallery[this.index]));this.container.setStyles({opacity:0,display:"block"});if(this.options.fixedTop){var c=this.options.fixedTop}else{var c=((window.getHeight()/2)-(this.options.initialSize.h/2)-this.container.getStyle("border").toInt())+this.options.offset.y}this.containerEffects.start({width:this.options.initialSize.w,height:this.options.initialSize.h,top:c,left:((window.getWidth()/2)-(this.options.initialSize.w/2)-this.container.getStyle("border").toInt())+this.options.offset.x,opacity:[0,1]});this.load(this.currentGallery[this.index])}else{if(this.options.showControls){this.hideControls()}this.getOpenClosePos(this.currentGallery[this.index]);this.timer=this.hideContent.bind(this).delay(500);this.timer=this.load.pass(this.currentGallery[this.index],this).delay(1100)}},getContent:function(a){this.setContentType(a);var b={};if(this.options.descClassName){this.descriptions.each(function(d,c){if(d.hasClass(this.openId)){b=d.clone()}},this)}this.contentToLoad={title:a.retrieve("origTitle")||"&nbsp;",desc:b,number:this.index+1}},close:function(){if(this.options.useOverlay){this.overlay.hide()}if(this.options.showControls){this.hideControls()}this.hideContent();this.containerEffects.cancel();this.zoomOut.bind(this).delay(500)},zoomOut:function(){this.containerEffects.start({width:this.openClosePos.width,height:this.openClosePos.height,top:this.openClosePos.top,left:this.openClosePos.left,opacity:0});this.reset.bind(this).delay(500)},load:function(b){this.box.addClass("MultiBoxLoading");this.getContent(b);var a=this.contentObj.xH;this.contentObj=new Asset.image(b.href,{onload:this.resize.bind(this)});this.contentObj.xH=a},resize:function(){if(this.options.maxSize!=null){var i=this.options.maxSize.w.toInt();var c=this.options.maxSize.h.toInt();var b=0;var e=0;var d=e=this.contentObj.height;var a=b=this.contentObj.width;if((d>=c)&&(a>=i)){if(d>a){e=c;b=((a*e)/d).toInt()}else{b=i;e=((d*b)/a).toInt()}}else{if((d>c)&&(a<i)){e=c;b=((a*e)/d).toInt()}else{if((d<c)&&(a>i)){b=i;e=((d*b)/a).toInt()}}}this.contentObj.height=e;this.contentObj.width=b}if(this.options.fixedTop){var g=this.options.fixedTop}else{var g=((window.getHeight()/2)-((Number(this.contentObj.height)+this.contentObj.xH)/2)-this.container.getStyle("border").toInt()+window.getScrollTop())+this.options.offset.y}var f=((window.getWidth()/2)-(this.contentObj.width/2)-this.container.getStyle("border").toInt())+this.options.offset.x;if(g<0){g=0}if(f<0){f=0}this.containerEffects.cancel();this.containerEffects.start({width:this.contentObj.width,height:Number(this.contentObj.height)+this.contentObj.xH,top:g,left:f,opacity:1});this.timer=this.showContent.bind(this).delay(500)},showContent:function(){this.box.removeClass("MultiBoxLoading");this.removeContent();this.contentContainer=new Element("div",{id:"MultiBoxContentContainer",styles:{opacity:0,width:this.contentObj.width,height:(Number(this.contentObj.height)+this.contentObj.xH)}}).inject(this.box,"inside");this.contentObj.inject(this.contentContainer,"inside");this.contentEffects=new Fx.Morph(this.contentContainer,{duration:500});this.contentEffects.start({opacity:1});this.title.set("html",this.contentToLoad.title);this.number.set("html",this.contentToLoad.number+" de "+this.currentGallery.length);if(this.options.descClassName){if(this.currentGallery[this.index].retrieve("origRel")){var d=false;var a=this.currentGallery[this.index].retrieve("origRel");var b=a.split(",");b.each(function(f){if(f.test("noDesc")==true){d=true}})}if(d!=true){if(this.description.getFirst()){this.description.getFirst().destroy()}this.contentToLoad.desc.inject(this.description,"inside").setStyle("display","block")}}if(this.options.showControls){this.timer=this.showControls.bind(this).delay(800)}if(this.options.addDownload){var c=this.currentGallery[this.index].href;var e=this.currentGallery[this.index].href.substring(this.currentGallery[this.index].href.lastIndexOf("/")+1);this.download.set("html",'<a href="'+this.options.pathToDownloadScript+"?FilePath="+c+'" title="Download File '+e+'">Download File</a>')}},hideContent:function(){this.box.addClass("MultiBoxLoading");this.contentEffects.start({opacity:0});this.removeContent.bind(this).delay(500)},removeContent:function(){if($("MultiBoxMediaObject")){$("MultiBoxMediaObject").empty();$("MultiBoxMediaObject").dispose()}if($("MultiBoxContentContainer")){$("MultiBoxContentContainer").dispose()}if(this.description){this.description.empty()}},showControls:function(){if(this.container.getStyle("height")!="auto"){this.containerDefaults.height=this.container.getStyle("height");this.containerDefaults.backgroundColor=this.options.contentColor;if(this.options.recalcTop==true){if(this.container.getStyle("top").toInt()>this.controls.getStyle("height").toInt()/2){this.finalResize=new Fx.Morph(this.container,{duration:400});this.finalResize.start({top:this.container.getStyle("top").toInt()-(this.controls.getStyle("height").toInt()/2)})}}}this.container.setStyle("height","auto");if(this.contentToLoad.number==1){this.previousButton.addClass("MultiBoxPreviousDisabled")}else{this.previousButton.removeClass("MultiBoxPreviousDisabled")}if(this.contentToLoad.number==this.currentGallery.length){this.nextButton.addClass("MultiBoxNextDisabled")}else{this.nextButton.removeClass("MultiBoxNextDisabled")}this.controlEffects.start({height:this.controls.getStyle("height")})},hideControls:function(a){this.controlEffects.start({height:0}).chain(function(){this.container.setStyles(this.containerDefaults)}.bind(this))},next:function(){if(this.index<this.currentGallery.length-1){this.index++;this.openId=this.currentGallery[this.index].getProperty("id");if(this.options.showControls){this.hideControls()}this.getOpenClosePos(this.currentGallery[this.index]);this.timer=this.hideContent.bind(this).delay(500);this.timer=this.load.pass(this.currentGallery[this.index],this).delay(1100)}},previous:function(){if(this.index>0){this.index--;this.openId=this.currentGallery[this.index].getProperty("id");if(this.options.showControls){this.hideControls()}this.getOpenClosePos(this.currentGallery[this.index]);this.timer=this.hideContent.bind(this).delay(500);this.timer=this.load.pass(this.currentGallery[this.index],this).delay(1000)}}});