var multiBox=new Class({Implements:[Options],options:{initialSize:{w:250,h:250},useOverlay:false,contentColor:"#fff",showNumbers:false,showControls:false,descClassName:false,movieSize:{w:400,h:300},offset:{x:0,y:0},fixedTop:false,path:"./Files/",openFromLink:true,useKeyboard:true,onOpen:new Class(),onClose:new Class()},reinitialize:function(){this.getLinks();this.reset();this.setEvents()},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()}},getLinks:function(){this.multiBox=[];this.content=[];this.families=[];$$(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)},setEvents:function(){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)},start:function(){this.getLinks();this.container=new Element("div").addClass("MultiBoxContainer").inject(this.options.container,"inside");this.container.setProperties({id:this.options.mbClass});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,id2:this.options.mbClass,onClick:this.close.bind(this)})}if(this.options.addOverlayIcon==true){this.addOverlayIcon(this.multiBox)}if(this.options.addRollover==true){this.addRollover(this.multiBox)}if(this.options.addChain==true){this.addChain(this.multiBox)}if(this.options.descClassName){this.descriptions=$$("."+this.options.descClassName)}if(this.options.addDownload==true){this.addDownload(this.multiBox)}if(this.options.addTips==true){this.addTips(this.multiBox)}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.setEvents();this.containerEffects=new Fx.Morph(this.container,{duration:400});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]}})}if(d.type!=undefined){e=d.type}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}switch(e){case"jpg":case"gif":case"png":this.type="image";break;case"swf":this.type="flash";break;case"flv":this.type="flashVideo";this.contentObj.xH=70;break;case"mov":this.type="quicktime";break;case"wmv":this.type="windowsMedia";break;case"rv":case"rm":case"rmvb":this.type="real";break;case"mp3":this.type="flashMp3";this.contentObj.width=320;this.contentObj.height=70;break;case"element":this.type="htmlelement";this.elementContent=c.content;this.elementContent.setStyles({display:"block",opacity:0,width:"auto"});if(this.elementContent.getStyle("width")!="auto"){this.contentObj.width=this.elementContent.getWidth()}this.contentObj.height=this.elementContent.getHeight();this.elementContent.setStyles({display:"none",opacity:1});break;default:this.type="iframe";if(d.req){this.type="req"}break}},reset:function(){if(this.container){this.container.setStyles({opacity:0,display:"none"})}if(this.controlsContainer){this.controlsContainer.setStyle("height",0)}this.removeContent();if(this.previousButton){this.previousButton.removeClass("MultiBoxButtonDisabled")}if(this.nextButton){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);this.options.onClose()},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);if(this.type=="image"){var a=this.contentObj.xH;this.contentObj=new Asset.image(b.href,{onload:this.resize.bind(this)});this.contentObj.xH=a}else{this.resize()}},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");if(this.type=="image"){this.contentObj.inject(this.contentContainer,"inside")}else{if(this.type=="iframe"){new Element("iframe",{id:"iFrame"+new Date().getTime(),width:this.contentObj.width,height:this.contentObj.height,src:this.contentObj.url,frameborder:0,scrolling:"auto"}).inject(this.contentContainer,"inside")}else{if(this.type=="htmlelement"){this.elementContent.clone().setStyle("display","block").inject(this.contentContainer,"inside")}else{if(this.type=="req"){var d=new Request.HTML({url:this.contentObj.url,method:"get",evalScripts:true,onSuccess:function(i,g,j,h){$("MultiBoxContentContainer").adopt(g)}}).get()}else{this.obj=new Element("div").setProperties({id:"MultiBoxMediaObject"}).inject(this.contentContainer,"inside");this.createEmbedObject();if(this.str){this.obj.set("html",this.str);this.str=null}}}}}this.contentEffects=new Fx.Morph(this.contentContainer,{duration:500});this.contentEffects.start({opacity:1});this.title.set("html",this.contentToLoad.title);if(this.options.showNumbers){this.number.set("html",this.contentToLoad.number+" of "+this.currentGallery.length)}if(this.options.descClassName){if(this.currentGallery[this.index].retrieve("origRel")){var e=false;var a=this.currentGallery[this.index].retrieve("origRel");var b=a.split(",");b.each(function(g){if(g.test("noDesc")==true){e=true}})}if(e!=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 f=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 '+f+'">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)}},createEmbedObject:function(){if(this.type=="flash"){var c=this.contentObj.url;var a=new Element("div").setProperties({id:"swfHolder"}).inject(this.obj,"inside");var b=new Swiff(c,{id:c,container:a,width:this.contentObj.width,height:this.contentObj.height})}else{if(this.type=="flashVideo"){var c=this.contentObj.url;var a=new Element("div").setProperties({id:"swfHolder"}).inject(this.obj,"inside");var b=new Swiff(this.options.path+"flvplayer.swf",{id:c,container:a,width:this.contentObj.width,height:(Number(this.contentObj.height)+this.contentObj.xH),vars:{path:c}})}else{if(this.type=="flashMp3"){var c=this.contentObj.url;var a=new Element("div").setProperties({id:"swfHolder"}).inject(this.obj,"inside");var b=new Swiff(this.options.path+"mp3player.swf",{id:c,container:a,width:this.contentObj.width,height:(Number(this.contentObj.height)+this.contentObj.xH),vars:{path:c}})}else{if(this.type=="quicktime"){var c=this.contentObj.url;this.str='<object  type="video/quicktime" classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B" codebase="http://www.apple.com/qtactivex/qtplugin.cab"';this.str+=' width="'+this.contentObj.width+'" height="'+this.contentObj.height+'">';this.str+='<param name="src" value="'+c+'" />';this.str+='<param name="autoplay" value="true" />';this.str+='<param name="controller" value="true" />';this.str+='<param name="enablejavascript" value="true" />';this.str+='<embed src="'+c+'" autoplay="true" pluginspage="http://www.apple.com/quicktime/download/" width="'+this.contentObj.width+'" height="'+this.contentObj.height+'"></embed>';this.str+="</object>"}else{if(this.type=="windowsMedia"){var c=this.contentObj.url;this.str='<object  type="application/x-oleobject" classid="CLSID:22D6f312-B0F6-11D0-94AB-0080C74C7E95" codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,7,1112"';this.str+=' width="'+this.contentObj.width+'" height="'+this.contentObj.height+'">';this.str+='<param name="filename" value="'+c+'" />';this.str+='<param name="Showcontrols" value="true" />';this.str+='<param name="autoStart" value="true" />';this.str+='<embed type="application/x-mplayer2" src="'+c+'" Showcontrols="true" autoStart="true" width="'+this.contentObj.width+'" height="'+this.contentObj.height+'"></embed>';this.str+="</object>"}else{if(this.type=="real"){var c=this.contentObj.url;this.str='<object classid="clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA"';this.str+=' width="'+this.contentObj.width+'" height="'+this.contentObj.height+'">';this.str+='<param name="src" value="'+c+'" />';this.str+='<param name="controls" value="ImageWindow" />';this.str+='<param name="autostart" value="true" />';this.str+='<embed src="'+c+'" controls="ImageWindow" autostart="true" width="'+this.contentObj.width+'" height="'+this.contentObj.height+'"></embed>';this.str+="</object>"}}}}}}},addOverlayIcon:function(a){a.each(function(d,c){if(d.getElement("img")){d.setStyle("position","relative");var b=new Element("div").inject(d,"inside");b.addClass("OverlayIcon");if(!Browser.Engine.trident4){b.setStyle("opacity",0);b.set("tween",{duration:3000,transition:Fx.Transitions.Expo.easeIn}).tween("opacity",1)}}})},addRollover:function(a){a.each(function(c,b){if(c.getElement("img")){c.addEvents({mouseenter:function(){c.getElement("img").set("tween",{duration:200,transition:Fx.Transitions.linear}).tween("opacity",0.5)},mouseleave:function(){c.getElement("img").set("tween",{duration:400,transition:Fx.Transitions.linear}).tween("opacity",1)}})}})},addChain:function(b){var a=[];b.each(function(d,c){if(d.getElement("img")){a.push(d)}});a.each(function(e,c){if(e.getElement("img")){var f=new Chain();var d=function(){e.getElement("img").set("tween",{duration:200,transition:Fx.Transitions.linear}).tween("opacity",0.5)};var g=function(){e.getElement("img").set("tween",{duration:400,transition:Fx.Transitions.linear}).tween("opacity",1)};f.chain(d);f.chain(g);f.callChain.delay(2000+(c+1)*1000,f);f.callChain.delay((c+2)*1000,f)}})},addDownload:function(a){this.download=new Element("div").addClass("MultiBoxDownload").inject(this.controls,"inside").setStyle("margin-left",0)},addTips:function(a){a.each(function(d,c){if(d.get("title")){var b=new Tips(d,{onShow:function(e){e.fade(0.9)},onHide:function(e){e.fade(0)},offsets:{x:16,y:5},className:"mbTips"})}if(d.getElement("img")){if(d.getElement("img").get("title")){d.getElement("img").erase("title")}if(d.getElement("img").get("alt")){d.getElement("img").erase("alt")}}})}});
