var fileLoadingImage="images/loading.gif";var fileBottomNavCloseImage="images/closelabel.gif";var resizeSpeed=7;var borderSize=10;var imageArray=new Array;var activeImage;if(resizeSpeed>10){resizeSpeed=10}if(resizeSpeed<1){resizeSpeed=1}resizeDuration=(11-resizeSpeed)*0.15;Object.extend(Element,{getWidth:function(A){A=$(A);return A.offsetWidth},setWidth:function(B,A){B=$(B);B.style.width=A+"px"},setHeight:function(A,B){A=$(A);A.style.height=B+"px"},setTop:function(A,B){A=$(A);A.style.top=B+"px"},setSrc:function(A,B){A=$(A);A.src=B},setHref:function(B,A){B=$(B);B.href=A},setInnerHTML:function(A,B){A=$(A);A.innerHTML=B}});Array.prototype.removeDuplicates=function(){for(i=1;i<this.length;i++){if(this[i][0]==this[i-1][0]){this.splice(i,1)}}};Array.prototype.empty=function(){for(i=0;i<=this.length;i++){this.shift()}};var Lightbox=Class.create();Lightbox.prototype={initialize:function(){if(!document.getElementsByTagName){return }var X=document.getElementsByTagName("a");for(var R=0;R<X.length;R++){var F=X[R];var Q=String(F.getAttribute("rel"));if(F.getAttribute("href")&&(Q.toLowerCase().match("lightbox"))){F.onclick=function(){myLightbox.start(this);return false}}}var O=document.getElementsByTagName("body").item(0);var E=document.createElement("div");E.setAttribute("id","overlay");E.style.display="none";E.onclick=function(){myLightbox.end();return false};O.appendChild(E);var A=document.createElement("div");A.setAttribute("id","lightbox");A.style.display="none";O.appendChild(A);var T=document.createElement("div");T.setAttribute("id","outerImageContainer");A.appendChild(T);var M=document.createElement("div");M.setAttribute("id","imageContainer");T.appendChild(M);var D=document.createElement("img");D.setAttribute("id","lightboxImage");M.appendChild(D);var N=document.createElement("div");N.setAttribute("id","hoverNav");M.appendChild(N);var P=document.createElement("a");P.setAttribute("id","prevLink");P.setAttribute("href","#");N.appendChild(P);var I=document.createElement("a");I.setAttribute("id","nextLink");I.setAttribute("href","#");N.appendChild(I);var S=document.createElement("div");S.setAttribute("id","loading");M.appendChild(S);var L=document.createElement("a");L.setAttribute("id","loadingLink");L.setAttribute("href","#");L.onclick=function(){myLightbox.end();return false};S.appendChild(L);var B=document.createElement("img");B.setAttribute("src",fileLoadingImage);L.appendChild(B);var G=document.createElement("div");G.setAttribute("id","imageDataContainer");G.className="clearfix";A.appendChild(G);var H=document.createElement("div");H.setAttribute("id","imageData");G.appendChild(H);var U=document.createElement("div");U.setAttribute("id","imageDetails");H.appendChild(U);var J=document.createElement("span");J.setAttribute("id","caption");U.appendChild(J);var C=document.createElement("span");C.setAttribute("id","numberDisplay");U.appendChild(C);var V=document.createElement("div");V.setAttribute("id","bottomNav");H.appendChild(V);var W=document.createElement("a");W.setAttribute("id","bottomNavClose");W.setAttribute("href","#");W.onclick=function(){myLightbox.end();return false};V.appendChild(W);var K=document.createElement("img");K.setAttribute("src",fileBottomNavCloseImage);W.appendChild(K)},start:function(G){hideSelectBoxes();var D=getPageSize();Element.setHeight("overlay",D[1]);new Effect.Appear("overlay",{duration:0.2,from:0,to:0.8});imageArray=[];imageNum=0;if(!document.getElementsByTagName){return }var A=document.getElementsByTagName("a");if((G.getAttribute("rel")=="lightbox")){imageArray.push(new Array(G.getAttribute("href"),G.getAttribute("title")))}else{for(var C=0;C<A.length;C++){var B=A[C];if(B.getAttribute("href")&&(B.getAttribute("rel")==G.getAttribute("rel"))){imageArray.push(new Array(B.getAttribute("href"),B.getAttribute("title")))}}imageArray.removeDuplicates();while(imageArray[imageNum][0]!=G.getAttribute("href")){imageNum++}}var D=getPageSize();var E=getPageScroll();var F=E[1]+(D[3]/15);Element.setTop("lightbox",F);Element.show("lightbox");this.changeImage(imageNum)},changeImage:function(A){activeImage=A;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.src=imageArray[activeImage][0]},resizeImageContainer:function(A,B){this.wCur=Element.getWidth("outerImageContainer");this.hCur=Element.getHeight("outerImageContainer");this.xScale=((A+(borderSize*2))/this.wCur)*100;this.yScale=((B+(borderSize*2))/this.hCur)*100;wDiff=(this.wCur-borderSize*2)-A;hDiff=(this.hCur-borderSize*2)-B;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",B);Element.setHeight("nextLink",B);Element.setWidth("imageDataContainer",A+(borderSize*2));this.showImage()},showImage:function(){Element.hide("loading");new Effect.Appear("lightboxImage",{duration:0.5,queue:"end",afterFinish:function(){myLightbox.updateDetails()}});this.preloadNeighborImages()},updateDetails:function(){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+0.25,from:0,to:1}),new Effect.Appear("imageDataContainer",{sync:true,duration:1})],{duration:0.65,afterFinish:function(){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(A){if(A==null){keycode=event.keyCode}else{keycode=A.which}key=String.fromCharCode(keycode).toLowerCase();if((key=="x")||(key=="o")||(key=="c")){myLightbox.end()}else{if(key=="p"){if(activeImage!=0){myLightbox.disableKeyboardNav();myLightbox.changeImage(activeImage-1)}}else{if(key=="n"){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:0.2});showSelectBoxes()}};function getPageScroll(){var A;if(self.pageYOffset){A=self.pageYOffset}else{if(document.documentElement&&document.documentElement.scrollTop){A=document.documentElement.scrollTop}else{if(document.body){A=document.body.scrollTop}}}arrayPageScroll=new Array("",A);return arrayPageScroll}function getPageSize(){var C,B;if(window.innerHeight&&window.scrollMaxY){C=document.body.scrollWidth;B=window.innerHeight+window.scrollMaxY}else{if(document.body.scrollHeight>document.body.offsetHeight){C=document.body.scrollWidth;B=document.body.scrollHeight}else{C=document.body.offsetWidth;B=document.body.offsetHeight}}var A,D;if(self.innerHeight){A=self.innerWidth;D=self.innerHeight}else{if(document.documentElement&&document.documentElement.clientHeight){A=document.documentElement.clientWidth;D=document.documentElement.clientHeight}else{if(document.body){A=document.body.clientWidth;D=document.body.clientHeight}}}if(B<D){pageHeight=D}else{pageHeight=B}if(C<A){pageWidth=A}else{pageWidth=C}arrayPageSize=new Array(pageWidth,pageHeight,A,D);return arrayPageSize}function getKey(A){if(A==null){keycode=event.keyCode}else{keycode=A.which}key=String.fromCharCode(keycode).toLowerCase();if(key=="x"){}}function listenKey(){document.onkeypress=getKey}function showSelectBoxes(){selects=document.getElementsByTagName("select");for(i=0;i!=selects.length;i++){selects[i].style.visibility="visible"}}function hideSelectBoxes(){selects=document.getElementsByTagName("select");for(i=0;i!=selects.length;i++){selects[i].style.visibility="hidden"}}function pause(B){var A=new Date();var C=A.getTime()+B;while(true){A=new Date();if(A.getTime()>C){return }}}function initLightbox(){myLightbox=new Lightbox()}Event.observe(window,"load",initLightbox,false);
