var Slimbox=(function(){var win=window,ie6=Browser.Engine.trident4,options,images,activeImage=-1,activeURL,prevImage,nextImage,compatibleOverlay,middle,centerWidth,centerHeight,preload={},preloadPrev=new Image(),preloadNext=new Image(),overlay,center,image,sizer,prevLink,nextLink,bottomContainer,bottom,caption,number,fxOverlay,fxResize,fxImage,fxBottom;win.addEvent("domready",function(){$(document.body).adopt($$(overlay=new Element("div",{id:"lbOverlay",events:{click:close}}),center=new Element("div",{id:"lbCenter"}),bottomContainer=new Element("div",{id:"lbBottomContainer"})).setStyle("display","none"));image=new Element("div",{id:"lbImage"}).injectInside(center).adopt(sizer=new Element("div",{styles:{position:"relative"}}).adopt(prevLink=new Element("a",{id:"lbPrevLink",href:"#",events:{click:previous}}),nextLink=new Element("a",{id:"lbNextLink",href:"#",events:{click:next}})));bottom=new Element("div",{id:"lbBottom"}).injectInside(bottomContainer).adopt(new Element("a",{id:"lbCloseLink",href:"#",events:{click:close}}),caption=new Element("div",{id:"lbCaption"}),number=new Element("div",{id:"lbNumber"}),new Element("div",{styles:{clear:"both"}}));});function position(){var scroll=win.getScroll(),size=win.getSize();$$(center,bottomContainer).setStyle("left",scroll.x+(size.x/2));if(compatibleOverlay)overlay.setStyles({left:scroll.x,top:scroll.y,width:size.x,height:size.y});}
function setup(open){["object",ie6?"select":"embed"].forEach(function(tag){Array.forEach(document.getElementsByTagName(tag),function(el){if(open)el._slimbox=el.style.visibility;el.style.visibility=open?"hidden":el._slimbox;});});overlay.style.display=open?"":"none";var fn=open?"addEvent":"removeEvent";win[fn]("scroll",position)[fn]("resize",position);document[fn]("keydown",keyDown);}
function keyDown(event){var code=event.code;return options.closeKeys.contains(code)?close():options.nextKeys.contains(code)?next():options.previousKeys.contains(code)?previous():false;}
function previous(){return changeImage(prevImage);}
function next(){return changeImage(nextImage);}
function changeImage(imageIndex){if(imageIndex>=0){activeImage=imageIndex;activeURL=images[imageIndex][0];prevImage=(activeImage||(options.loop?images.length:0))-1;nextImage=((activeImage+1)%images.length)||(options.loop?0:-1);stop();center.className="lbLoading";preload=new Image();preload.onload=animateBox;preload.src=activeURL;}
return false;}
function animateBox(){center.className="";fxImage.set(0);image.setStyles({backgroundImage:"url("+activeURL+")",display:""});sizer.setStyle("width",preload.width);$$(sizer,prevLink,nextLink).setStyle("height",preload.height);caption.set("html",images[activeImage][1]||"");number.set("html",(((images.length>1)&&options.counterText)||"").replace(/{x}/,activeImage+1).replace(/{y}/,images.length));if(prevImage>=0)preloadPrev.src=images[prevImage][0];if(nextImage>=0)preloadNext.src=images[nextImage][0];centerWidth=image.offsetWidth;centerHeight=image.offsetHeight;var top=Math.max(0,middle-(centerHeight/2)),fn;if(center.offsetHeight!=centerHeight){fxResize.start({height:centerHeight,top:top});}
var gOffset=0;if(navigator.userAgent.indexOf("Firefox")!=-1)
{if(document.getElementById('content_center'))
{var tsize=win.getSize();var guiWidth=976;try{guiWidth=document.getElementById('main').offsetWidth;}catch(tExc){guiWidth=976;};gOffset=(tsize.x-guiWidth);}}
var mLeft=-(centerWidth+gOffset)/2;if(center.offsetWidth!=centerWidth){if((navigator.userAgent.indexOf("Firefox")!=-1)&&(navigator.userAgent.indexOf("3.5")!=-1))
{fxResize.start({width:centerWidth,marginLeft:-centerWidth/2});}
else
{fxResize.start({width:centerWidth,marginLeft:mLeft});}}
fn=function(){if((navigator.userAgent.indexOf("Firefox")!=-1)&&(navigator.userAgent.indexOf("3.5")!=-1))
{bottomContainer.setStyles({width:centerWidth,top:top+centerHeight,marginLeft:-centerWidth/2,visibility:"hidden",display:""});}
else
{bottomContainer.setStyles({width:centerWidth,top:top+centerHeight,marginLeft:mLeft,visibility:"hidden",display:""});}
fxImage.start(1);};if(fxResize.check(fn))fn();}
function animateCaption(){if(prevImage>=0)prevLink.style.display="";if(nextImage>=0)nextLink.style.display="";fxBottom.set(-bottom.offsetHeight).start(0);bottomContainer.style.visibility="";}
function stop(){preload.onload=$empty;preload.src=preloadPrev.src=preloadNext.src=activeURL;fxResize.cancel();fxImage.cancel();fxBottom.cancel();$$(prevLink,nextLink,image,bottomContainer).setStyle("display","none");}
function close(){if(activeImage>=0){stop();activeImage=prevImage=nextImage=-1;center.style.display="none";fxOverlay.cancel().chain(setup).start(0);}
return false;}
Element.implement({slimbox:function(_options,linkMapper){$$(this).slimbox(_options,linkMapper);return this;}});Elements.implement({slimbox:function(_options,linkMapper,linksFilter){linkMapper=linkMapper||function(el){var tHREF=el.href;tHREF=tHREF.replace(/javascript:void\('/gi,'');tHREF=tHREF.replace(/'\);/gi,'');return[tHREF,el.title];};linksFilter=linksFilter||function(){return true;};var links=this;links.removeEvents("click").addEvent("click",function(){var filteredLinks=links.filter(linksFilter,this);return Slimbox.open(filteredLinks.map(linkMapper),filteredLinks.indexOf(this),_options);});return links;}});return{open:function(_images,startImage,_options){options=$extend({loop:false,overlayOpacity:0.8,overlayFadeDuration:400,resizeDuration:400,resizeTransition:false,initialWidth:250,initialHeight:250,imageFadeDuration:400,captionAnimationDuration:400,counterText:"Image {x} of {y}",closeKeys:[27,88,67],previousKeys:[37,80],nextKeys:[39,78]},_options||{});fxOverlay=new Fx.Tween(overlay,{property:"opacity",duration:options.overlayFadeDuration});fxResize=new Fx.Morph(center,$extend({duration:options.resizeDuration,link:"chain"},options.resizeTransition?{transition:options.resizeTransition}:{}));fxImage=new Fx.Tween(image,{property:"opacity",duration:options.imageFadeDuration,onComplete:animateCaption});fxBottom=new Fx.Tween(bottom,{property:"margin-top",duration:options.captionAnimationDuration});if(typeof _images=="string"){_images=[[_images,startImage]];startImage=0;}
middle=win.getScrollTop()+(win.getHeight()/2);centerWidth=options.initialWidth;centerHeight=options.initialHeight;var gOffset=0;if(navigator.userAgent.indexOf("Firefox")!=-1)
{if(document.getElementById('content_center'))
{var tsize=win.getSize();var guiWidth=976;try{guiWidth=document.getElementById('main').offsetWidth;}catch(tExc){guiWidth=976;};gOffset=(tsize.x-guiWidth);}}
var mLeft=-(centerWidth+gOffset)/2;if((navigator.userAgent.indexOf("Firefox")!=-1)&&(navigator.userAgent.indexOf("3.5")!=-1))
{center.setStyles({top:Math.max(0,middle-(centerHeight/2)),width:centerWidth,height:centerHeight,marginLeft:-centerWidth/2,display:""});}
else
{center.setStyles({top:Math.max(0,middle-(centerHeight/2)),width:centerWidth,height:centerHeight,marginLeft:mLeft,display:""});}
compatibleOverlay=ie6||(overlay.currentStyle&&(overlay.currentStyle.position!="fixed"));if(compatibleOverlay)overlay.style.position="absolute";fxOverlay.set(0).start(options.overlayOpacity);position();setup(1);images=_images;options.loop=options.loop&&(images.length>1);return changeImage(startImage);}};})();Slimbox.scanPage=function(){$$(document.links).filter(function(el){return el.rel&&el.rel.test(/^lightbox/i);}).slimbox({overlayOpacity:0.65,overlayFadeDuration:150,counterText:"{x} / {y}",imageFadeDuration:100,captionAnimationDuration:100,resizeDuration:150},null,function(el){return(this==el)||((this.rel.length>8)&&(this.rel==el.rel));});};window.addEvent("domready",Slimbox.scanPage);