var fileLoadingImage="scripts04/lightbox/images/loading.gif";var fileBottomNavCloseImage="scripts04/lightbox/images/closelabel.gif";var overlayOpacity=0.4;var animate=true;var resizeSpeed=7;var borderSize=10;var playInterval=5000;var MODE_NORMAL=0;var MODE_AUTOPLAY=1;var mode=MODE_NORMAL;var intervalId;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(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(B,A){B=$(B);B.style.top=A+"px";},setLeft:function(B,A){B=$(B);B.style.left=A+"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=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 S=document.getElementsByTagName("body").item(0);var F=document.createElement("div");F.setAttribute("id","overlay");F.style.display="none";F.onclick=function(){myLightbox.end();};S.appendChild(F);var L=document.createElement("div");L.setAttribute("id","lightbox");L.style.display="none";L.onclick=function(V){if(!V){var V=window.event;}var U=Event.element(V).id;if(U=="lightbox"){myLightbox.end();}};S.appendChild(L);var R=document.createElement("div");R.setAttribute("id","outerImageContainer");L.appendChild(R);if(animate){Element.setWidth("outerImageContainer",250);Element.setHeight("outerImageContainer",250);}else{Element.setWidth("outerImageContainer",1);Element.setHeight("outerImageContainer",1);}var K=document.createElement("div");K.setAttribute("id","imageContainer");R.appendChild(K);var H=document.createElement("img");H.setAttribute("id","lightboxImage");K.appendChild(H);var O=document.createElement("div");O.setAttribute("id","hoverNav");K.appendChild(O);var P=document.createElement("a");P.setAttribute("id","prevLink");P.setAttribute("href","#");O.appendChild(P);var C=document.createElement("a");C.setAttribute("id","nextLink");C.setAttribute("href","#");O.appendChild(C);var Q=document.createElement("div");Q.setAttribute("id","loading");K.appendChild(Q);var A=document.createElement("a");A.setAttribute("id","loadingLink");A.setAttribute("href","#");A.onclick=function(){myLightbox.end();return false;};Q.appendChild(A);var J=document.createElement("img");J.setAttribute("src",fileLoadingImage);A.appendChild(J);var E=document.createElement("div");E.setAttribute("id","imageDataContainer");L.appendChild(E);var D=document.createElement("div");D.setAttribute("id","imageData");E.appendChild(D);var N=document.createElement("div");N.setAttribute("id","imageDetails");D.appendChild(N);var G=document.createElement("span");G.setAttribute("id","caption");N.appendChild(G);var B=document.createElement("span");B.setAttribute("id","numberDisplay");N.appendChild(B);var M=document.createElement("div");M.setAttribute("id","bottomNav");D.appendChild(M);var T=document.createElement("a");T.setAttribute("id","bottomNavClose");T.setAttribute("href","#");T.onclick=function(){myLightbox.end();return false;};M.appendChild(T);var I=document.createElement("img");I.setAttribute("src",fileBottomNavCloseImage);T.appendChild(I);},updateImageList:function(){if(!document.getElementsByTagName){return ;}var E=document.getElementsByTagName("a");var A=document.getElementsByTagName("area");for(var C=0;C<E.length;C++){var B=E[C];var F=String(B.getAttribute("rel"));if(B.getAttribute("href")&&(F.toLowerCase().match("lightbox"))){B.onclick=function(){myLightbox.start(this);return false;};}}for(var C=0;C<A.length;C++){var D=A[C];var F=String(D.getAttribute("rel"));if(D.getAttribute("href")&&(F.toLowerCase().match("lightbox"))){D.onclick=function(){myLightbox.start(this);return false;};}}},start:function(H){hideSelectBoxes();hideFlash();var C=getPageSize();Element.setWidth("overlay",C[0]);Element.setHeight("overlay",C[1]);new Effect.Appear("overlay",{duration:overlayDuration,from:0,to:overlayOpacity});imageArray=[];imageNum=0;if(!document.getElementsByTagName){return ;}var F=document.getElementsByTagName(H.tagName);if((H.getAttribute("rel")=="lightbox")){imageArray.push(new Array(H.getAttribute("href"),H.getAttribute("title")));}else{for(var D=0;D<F.length;D++){var B=F[D];if(B.getAttribute("href")&&(B.getAttribute("rel")==H.getAttribute("rel"))){imageArray.push(new Array(B.getAttribute("href"),B.getAttribute("title")));}}imageArray.removeDuplicates();while(imageArray[imageNum][0]!=H.getAttribute("href")){imageNum++;}}var A=getPageScroll();var G=A[1]+(C[3]/10);var E=A[0];Element.setTop("lightbox",G);Element.setLeft("lightbox",E);Element.show("lightbox");this.changeImage(imageNum);},changeImage:function(A){activeImage=A;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(){};if(mode==MODE_AUTOPLAY){intervalId=setTimeout("myLightbox.play()",playInterval);}};imgPreloader.src=imageArray[activeImage][0];},resizeImageContainer:function(D,B){this.widthCurrent=Element.getWidth("outerImageContainer");this.heightCurrent=Element.getHeight("outerImageContainer");var A=(D+(borderSize*2));var C=(B+(borderSize*2));this.xScale=(A/this.widthCurrent)*100;this.yScale=(C/this.heightCurrent)*100;wDiff=this.widthCurrent-A;hDiff=this.heightCurrent-C;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);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(A){if(A==null){keycode=event.keyCode;escapeKey=27;}else{keycode=A.keyCode;escapeKey=A.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});if(mode==MODE_AUTOPLAY){clearInterval(intervalId);intervalId=0;mode=MODE_NORMAL;}showSelectBoxes();showFlash();},startPlay:function(A){mode=MODE_AUTOPLAY;this.start(A);},play:function(){if(activeImage+1<=imageArray.length-1){this.changeImage(activeImage+1);}else{this.end();}}};function getPageScroll(){var B,A;if(self.pageYOffset){A=self.pageYOffset;B=self.pageXOffset;}else{if(document.documentElement&&document.documentElement.scrollTop){A=document.documentElement.scrollTop;B=document.documentElement.scrollLeft;}else{if(document.body){A=document.body.scrollTop;B=document.body.scrollLeft;}}}arrayPageScroll=new Array(B,A);return arrayPageScroll;}function getPageSize(){var C,A;if(window.innerHeight&&window.scrollMaxY){C=window.innerWidth+window.scrollMaxX;A=window.innerHeight+window.scrollMaxY;}else{if(document.body.scrollHeight>document.body.offsetHeight){C=document.body.scrollWidth;A=document.body.scrollHeight;}else{C=document.body.offsetWidth;A=document.body.offsetHeight;}}var B,D;if(self.innerHeight){if(document.documentElement.clientWidth){B=document.documentElement.clientWidth;}else{B=self.innerWidth;}D=self.innerHeight;}else{if(document.documentElement&&document.documentElement.clientHeight){B=document.documentElement.clientWidth;D=document.documentElement.clientHeight;}else{if(document.body){B=document.body.clientWidth;D=document.body.clientHeight;}}}if(A<D){pageHeight=D;}else{pageHeight=A;}if(C<B){pageWidth=C;}else{pageWidth=B;}arrayPageSize=new Array(pageWidth,pageHeight,B,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(){var A=document.getElementsByTagName("select");for(i=0;i!=A.length;i++){A[i].style.visibility="visible";}}function hideSelectBoxes(){var A=document.getElementsByTagName("select");for(i=0;i!=A.length;i++){A[i].style.visibility="hidden";}}function showFlash(){var B=document.getElementsByTagName("object");for(i=0;i<B.length;i++){B[i].style.visibility="visible";}var A=document.getElementsByTagName("embed");for(i=0;i<A.length;i++){A[i].style.visibility="visible";}}function hideFlash(){var B=document.getElementsByTagName("object");for(i=0;i<B.length;i++){B[i].style.visibility="hidden";}var A=document.getElementsByTagName("embed");for(i=0;i<A.length;i++){A[i].style.visibility="hidden";}}function pause(C){var B=new Date();A=null;do{var A=new Date();}while(A-B<C);}var myLightbox;function initLightbox(){myLightbox=new Lightbox();}Event.observe(window,"load",initLightbox,false);