var overlayOpacity=0.8;var animate=true;var resizeSpeed=7;var borderSize=10;var imageArray=new Array;var activeImage;if(animate==true){overlayDuration=0.2;if(resizeSpeed>10){resizeSpeed=10;}if(resizeSpeed<1){resizeSpeed=1;}resizeDuration=(11-resizeSpeed)*0.15;}else{overlayDuration=0;resizeDuration=0;}Object.extend(Element,{getWidth:function(z){z=$(z);return z.offsetWidth;},setWidth:function(Z,z){Z=$(Z);Z.style.width=z+"px";},setHeight:function(z,Z){z=$(z);z.style.height=Z+"px";},setTop:function(Z,z){Z=$(Z);Z.style.top=z+"px";},setLeft:function(Z,z){Z=$(Z);Z.style.left=z+"px";},setSrc:function(z,Z){z=$(z);z.src=Z;},setHref:function(Z,z){Z=$(Z);Z.href=z;},setInnerHTML:function(z,Z){z=$(z);z.innerHTML=Z;}});Array.prototype.removeDuplicates=function(){for(i=0;i<this.length;i++){for(j=this.length-1;j>i;j--){if(this[i][0]==this[j][0]){this.splice(j,1);}}}};Array.prototype.empty=function(){for(i=0;i<=this.length;i++){this.shift();}};var Lightbox=Class.create();Lightbox.prototype={initialize:function(){this.updateImageList();var p=document.getElementsByTagName("body").item(0);var w=document.createElement("div");w.setAttribute("id","overlay");w.style.display="none";w.onclick=function(){myLightbox.end();};p.appendChild(w);var X=document.createElement("div");X.setAttribute("id","lightbox");X.style.display="none";X.onclick=function(C){if(!C){var C=window.event;}var o=Event.element(C).id;if(o=="lightbox"){myLightbox.end();}};p.appendChild(X);var N=document.createElement("div");N.setAttribute("id","outerImageContainer");X.appendChild(N);if(animate){Element.setWidth("outerImageContainer",250);Element.setHeight("outerImageContainer",250);}else{Element.setWidth("outerImageContainer",1);Element.setHeight("outerImageContainer",1);}var U=document.createElement("div");U.setAttribute("id","imageContainer");N.appendChild(U);var S=document.createElement("img");S.setAttribute("id","lightboxImage");U.appendChild(S);var k=document.createElement("div");k.setAttribute("id","hoverNav");U.appendChild(k);var q=document.createElement("a");q.setAttribute("id","prevLink");q.setAttribute("href","#");k.appendChild(q);var Y=document.createElement("a");Y.setAttribute("id","nextLink");Y.setAttribute("href","#");k.appendChild(Y);var W=document.createElement("div");W.setAttribute("id","loading");U.appendChild(W);var z=document.createElement("a");z.setAttribute("id","loadingLink");z.setAttribute("href","#");z.onclick=function(){myLightbox.end();return false;};W.appendChild(z);var A=document.createElement("img");A.setAttribute("src",fileLoadingImage);z.appendChild(A);var t=document.createElement("div");t.setAttribute("id","imageDataContainer");X.appendChild(t);var T=document.createElement("div");T.setAttribute("id","imageData");t.appendChild(T);var n=document.createElement("div");n.setAttribute("id","imageDetails");T.appendChild(n);var L=document.createElement("span");L.setAttribute("id","caption");n.appendChild(L);var Z=document.createElement("span");Z.setAttribute("id","numberDisplay");n.appendChild(Z);var g=document.createElement("div");g.setAttribute("id","bottomNav");T.appendChild(g);var F=document.createElement("a");F.setAttribute("id","bottomNavClose");F.setAttribute("href","#");F.onclick=function(){myLightbox.end();return false;};g.appendChild(F);var B=document.createElement("img");B.setAttribute("src",fileBottomNavCloseImage);F.appendChild(B);},updateImageList:function(){if(!document.getElementsByTagName){return ;}var t=document.getElementsByTagName("a");var z=document.getElementsByTagName("area");for(var Y=0;Y<t.length;Y++){var Z=t[Y];var w=String(Z.getAttribute("rel"));if(Z.getAttribute("href")&&(w.toLowerCase().match("lightbox"))){Z.onclick=function(){myLightbox.start(this);return false;};}}for(var Y=0;Y<z.length;Y++){var T=z[Y];var w=String(T.getAttribute("rel"));if(T.getAttribute("href")&&(w.toLowerCase().match("lightbox"))){T.onclick=function(){myLightbox.start(this);return false;};}}},start:function(S){hideSelectBoxes();hideFlash();var Y=getPageSize();Element.setWidth("overlay",Y[0]);Element.setHeight("overlay",Y[1]);new Effect.Appear("overlay",{duration:overlayDuration,from:0,to:overlayOpacity});imageArray=[];imageNum=0;if(!document.getElementsByTagName){return ;}var w=document.getElementsByTagName(S.tagName);if((S.getAttribute("rel")=="lightbox")){imageArray.push(new Array(S.getAttribute("href"),S.getAttribute("title")));}else{for(var T=0;T<w.length;T++){var Z=w[T];if(Z.getAttribute("href")&&(Z.getAttribute("rel")==S.getAttribute("rel"))){imageArray.push(new Array(Z.getAttribute("href"),Z.getAttribute("title")));}}imageArray.removeDuplicates();while(imageArray[imageNum][0]!=S.getAttribute("href")){imageNum++;}}var z=getPageScroll();var L=z[1]+(Y[3]/10);var t=z[0];Element.setTop("lightbox",L);Element.setLeft("lightbox",t);Element.show("lightbox");this.changeImage(imageNum);},changeImage:function(z){activeImage=z;if(animate){Element.show("loading");}Element.hide("lightboxImage");Element.hide("hoverNav");Element.hide("prevLink");Element.hide("nextLink");Element.hide("imageDataContainer");Element.hide("numberDisplay");imgPreloader=new Image();imgPreloader.onload=function(){Element.setSrc("lightboxImage",imageArray[activeImage][0]);myLightbox.resizeImageContainer(imgPreloader.width,imgPreloader.height);imgPreloader.onload=function(){};};imgPreloader.src=imageArray[activeImage][0];},resizeImageContainer:function(T,Z){this.widthCurrent=Element.getWidth("outerImageContainer");this.heightCurrent=Element.getHeight("outerImageContainer");var z=(T+(borderSize*2));var Y=(Z+(borderSize*2));this.xScale=(z/this.widthCurrent)*100;this.yScale=(Y/this.heightCurrent)*100;wDiff=this.widthCurrent-z;hDiff=this.heightCurrent-Y;if(!(hDiff==0)){new Effect.Scale("outerImageContainer",this.yScale,{scaleX:false,duration:resizeDuration,queue:"front"});}if(!(wDiff==0)){new Effect.Scale("outerImageContainer",this.xScale,{scaleY:false,delay:resizeDuration,duration:resizeDuration});}if((hDiff==0)&&(wDiff==0)){if(navigator.appVersion.indexOf("MSIE")!=-1){pause(250);}else{pause(100);}}Element.setHeight("prevLink",Z);Element.setHeight("nextLink",Z);Element.setWidth("imageDataContainer",z);this.showImage();},showImage:function(){Element.hide("loading");new Effect.Appear("lightboxImage",{duration:resizeDuration,queue:"end",afterFinish:function(){myLightbox.updateDetails();}});this.preloadNeighborImages();},updateDetails:function(){if(imageArray[activeImage][1]){Element.show("caption");Element.setInnerHTML("caption",imageArray[activeImage][1]);}if(imageArray.length>1){Element.show("numberDisplay");Element.setInnerHTML("numberDisplay","Image "+eval(activeImage+1)+" of "+imageArray.length);}new Effect.Parallel([new Effect.SlideDown("imageDataContainer",{sync:true,duration:resizeDuration,from:0,to:1}),new Effect.Appear("imageDataContainer",{sync:true,duration:resizeDuration})],{duration:resizeDuration,afterFinish:function(){var arrayPageSize=getPageSize();Element.setHeight("overlay",arrayPageSize[1]);myLightbox.updateNav();}});},updateNav:function(){Element.show("hoverNav");if(activeImage!=0){Element.show("prevLink");document.getElementById("prevLink").onclick=function(){myLightbox.changeImage(activeImage-1);return false;};}if(activeImage!=(imageArray.length-1)){Element.show("nextLink");document.getElementById("nextLink").onclick=function(){myLightbox.changeImage(activeImage+1);return false;};}this.enableKeyboardNav();},enableKeyboardNav:function(){document.onkeydown=this.keyboardAction;},disableKeyboardNav:function(){document.onkeydown="";},keyboardAction:function(z){if(z==null){keycode=event.keyCode;escapeKey=27;}else{keycode=z.keyCode;escapeKey=z.DOM_VK_ESCAPE;}key=String.fromCharCode(keycode).toLowerCase();if((key=="x")||(key=="o")||(key=="c")||(keycode==escapeKey)){myLightbox.end();}else{if((key=="p")||(keycode==37)){if(activeImage!=0){myLightbox.disableKeyboardNav();myLightbox.changeImage(activeImage-1);}}else{if((key=="n")||(keycode==39)){if(activeImage!=(imageArray.length-1)){myLightbox.disableKeyboardNav();myLightbox.changeImage(activeImage+1);}}}}},preloadNeighborImages:function(){if((imageArray.length-1)>activeImage){preloadNextImage=new Image();preloadNextImage.src=imageArray[activeImage+1][0];}if(activeImage>0){preloadPrevImage=new Image();preloadPrevImage.src=imageArray[activeImage-1][0];}},end:function(){this.disableKeyboardNav();Element.hide("lightbox");new Effect.Fade("overlay",{duration:overlayDuration});showSelectBoxes();showFlash();}};function getPageScroll(){var Z,z;if(self.pageYOffset){z=self.pageYOffset;Z=self.pageXOffset;}else{if(document.documentElement&&document.documentElement.scrollTop){z=document.documentElement.scrollTop;Z=document.documentElement.scrollLeft;}else{if(document.body){z=document.body.scrollTop;Z=document.body.scrollLeft;}}}arrayPageScroll=new Array(Z,z);return arrayPageScroll;}function getPageSize(){var Y,z;if(window.innerHeight&&window.scrollMaxY){Y=window.innerWidth+window.scrollMaxX;z=window.innerHeight+window.scrollMaxY;}else{if(document.body.scrollHeight>document.body.offsetHeight){Y=document.body.scrollWidth;z=document.body.scrollHeight;}else{Y=document.body.offsetWidth;z=document.body.offsetHeight;}}var Z,T;if(self.innerHeight){if(document.documentElement.clientWidth){Z=document.documentElement.clientWidth;}else{Z=self.innerWidth;}T=self.innerHeight;}else{if(document.documentElement&&document.documentElement.clientHeight){Z=document.documentElement.clientWidth;T=document.documentElement.clientHeight;}else{if(document.body){Z=document.body.clientWidth;T=document.body.clientHeight;}}}if(z<T){pageHeight=T;}else{pageHeight=z;}if(Y<Z){pageWidth=Y;}else{pageWidth=Z;}arrayPageSize=new Array(pageWidth,pageHeight,Z,T);return arrayPageSize;}function getKey(z){if(z==null){keycode=event.keyCode;}else{keycode=z.which;}key=String.fromCharCode(keycode).toLowerCase();if(key=="x"){}}function listenKey(){document.onkeypress=getKey;}function showSelectBoxes(){var z=document.getElementsByTagName("select");for(i=0;i!=z.length;i++){z[i].style.visibility="visible";}}function hideSelectBoxes(){var z=document.getElementsByTagName("select");for(i=0;i!=z.length;i++){z[i].style.visibility="hidden";}}function showFlash(){var Z=document.getElementsByTagName("object");for(i=0;i<Z.length;i++){Z[i].style.visibility="visible";}var z=document.getElementsByTagName("embed");for(i=0;i<z.length;i++){z[i].style.visibility="visible";}}function hideFlash(){var Z=document.getElementsByTagName("object");for(i=0;i<Z.length;i++){Z[i].style.visibility="hidden";}var z=document.getElementsByTagName("embed");for(i=0;i<z.length;i++){z[i].style.visibility="hidden";}}function pause(Y){var Z=new Date();z=null;do{var z=new Date();}while(z-Z<Y);}function initLightbox(){myLightbox=new Lightbox();}Event.observe(window,"load",initLightbox,false);