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)),check=0,fn;if(center.offsetHeight!=centerHeight){check=fxResize.start({height:centerHeight,top:top});}
if(center.offsetWidth!=centerWidth){check=fxResize.start({width:centerWidth,marginLeft:-centerWidth/2});}
fn=function(){bottomContainer.setStyles({width:centerWidth,top:top+centerHeight,marginLeft:-centerWidth/2,visibility:"hidden",display:""});fxImage.start(1);};if(check){fxResize.chain(fn);}
else{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){return[el.href,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;center.setStyles({top:Math.max(0,middle-(centerHeight/2)),width:centerWidth,height:centerHeight,marginLeft:-centerWidth/2,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(){$$("a").filter(function(el){return el.rel&&el.rel.test(/^lightbox/i);}).slimbox({},null,function(el){return(this==el)||((this.rel.length>8)&&(this.rel==el.rel));});};if(!/android|iphone|ipod|series60|symbian|windows ce|blackberry/i.test(navigator.userAgent)){window.addEvent("domready",Slimbox.scanPage);}
/* Fri, 30 Jul 2010 03:02:36 GMT js/slimbox.js */