var fileLoadingImage="images/loading.gif";var fileBottomNavCloseImage="images/closelabel.gif";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(a){a=$(a);return a.offsetWidth},setWidth:function(b,a){b=$(b);b.style.width=a+"px"},setHeight:function(b,a){b=$(b);b.style.height=a+"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(b,a){b=$(b);b.src=a},setHref:function(b,a){b=$(b);b.href=a},setInnerHTML:function(b,a){b=$(b);b.innerHTML=a}});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 l=document.getElementsByTagName("body").item(0);var p=document.createElement("div");p.setAttribute("id","overlay");p.style.display="none";p.onclick=function(){myLightbox.end()};l.appendChild(p);var q=document.createElement("div");q.setAttribute("id","lightbox");q.style.display="none";q.onclick=function(w){if(!w){var w=window.event}var x=Event.element(w).id;if(x=="lightbox"){myLightbox.end()}};l.appendChild(q);var a=document.createElement("div");a.setAttribute("id","outerImageContainer");q.appendChild(a);if(animate){Element.setWidth("outerImageContainer",250);Element.setHeight("outerImageContainer",250)}else{Element.setWidth("outerImageContainer",1);Element.setHeight("outerImageContainer",1)}var s=document.createElement("div");s.setAttribute("id","imageContainer");a.appendChild(s);var r=document.createElement("img");r.setAttribute("id","lightboxImage");s.appendChild(r);var n=document.createElement("div");n.setAttribute("id","hoverNav");s.appendChild(n);var g=document.createElement("a");g.setAttribute("id","prevLink");g.setAttribute("href","#");n.appendChild(g);var v=document.createElement("a");v.setAttribute("id","nextLink");v.setAttribute("href","#");n.appendChild(v);var m=document.createElement("div");m.setAttribute("id","loading");s.appendChild(m);var c=document.createElement("a");c.setAttribute("id","loadingLink");c.setAttribute("href","#");c.onclick=function(){myLightbox.end();return false};m.appendChild(c);var o=document.createElement("img");o.setAttribute("src",fileLoadingImage);c.appendChild(o);var d=document.createElement("div");d.setAttribute("id","imageDataContainer");q.appendChild(d);var u=document.createElement("div");u.setAttribute("id","imageData");d.appendChild(u);var h=document.createElement("div");h.setAttribute("id","imageDetails");u.appendChild(h);var b=document.createElement("span");b.setAttribute("id","caption");h.appendChild(b);var e=document.createElement("span");e.setAttribute("id","numberDisplay");h.appendChild(e);var t=document.createElement("div");t.setAttribute("id","bottomNav");u.appendChild(t);var k=document.createElement("a");k.setAttribute("id","bottomNavClose");k.setAttribute("href","#");k.onclick=function(){myLightbox.end();return false};t.appendChild(k);var f=document.createElement("img");f.setAttribute("src",fileBottomNavCloseImage);k.appendChild(f)},updateImageList:function(){if(!document.getElementsByTagName){return}var c=document.getElementsByTagName("a");var b=document.getElementsByTagName("area");for(var d=0;d<c.length;d++){var e=c[d];var a=String(e.getAttribute("rel"));if(e.getAttribute("href")&&(a.toLowerCase().match("lightbox"))){e.onclick=function(){myLightbox.start(this);return false}}}for(var d=0;d<b.length;d++){var f=b[d];var a=String(f.getAttribute("rel"));if(f.getAttribute("href")&&(a.toLowerCase().match("lightbox"))){f.onclick=function(){myLightbox.start(this);return false}}}},start:function(c){hideSelectBoxes();hideFlash();var f=getPageSize();Element.setHeight("overlay",f[1]);new Effect.Appear("overlay",{duration:overlayDuration,from:0,to:overlayOpacity});imageArray=[];imageNum=0;if(!document.getElementsByTagName){return}var g=document.getElementsByTagName(c.tagName);if((c.getAttribute("rel")=="lightbox")){imageArray.push(new Array(c.getAttribute("href"),c.getAttribute("title")))}else{for(var d=0;d<g.length;d++){var a=g[d];if(a.getAttribute("href")&&(a.getAttribute("rel")==c.getAttribute("rel"))){imageArray.push(new Array(a.getAttribute("href"),a.getAttribute("title")))}}imageArray.removeDuplicates();while(imageArray[imageNum][0]!=c.getAttribute("href")){imageNum++}}var b=getPageScroll();var e=b[1]+(f[3]/10);var h=b[0];Element.setTop("lightbox",e);Element.setLeft("lightbox",h);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(){}};imgPreloader.src=imageArray[activeImage][0]},resizeImageContainer:function(d,b){this.widthCurrent=Element.getWidth("outerImageContainer");this.heightCurrent=Element.getHeight("outerImageContainer");var c=(d+(borderSize*2));var a=(b+(borderSize*2));this.xScale=(c/this.widthCurrent)*100;this.yScale=(a/this.heightCurrent)*100;wDiff=this.widthCurrent-c;hDiff=this.heightCurrent-a;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",c);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});showSelectBoxes();showFlash()}};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 b,a;if(window.innerHeight&&window.scrollMaxY){b=window.innerWidth+window.scrollMaxX;a=window.innerHeight+window.scrollMaxY}else{if(document.body.scrollHeight>document.body.offsetHeight){b=document.body.scrollWidth;a=document.body.scrollHeight}else{b=document.body.offsetWidth;a=document.body.offsetHeight}}var d,c;if(self.innerHeight){if(document.documentElement.clientWidth){d=document.documentElement.clientWidth}else{d=self.innerWidth}c=self.innerHeight}else{if(document.documentElement&&document.documentElement.clientHeight){d=document.documentElement.clientWidth;c=document.documentElement.clientHeight}else{if(document.body){d=document.body.clientWidth;c=document.body.clientHeight}}}if(a<c){pageHeight=c}else{pageHeight=a}if(b<d){pageWidth=b}else{pageWidth=d}arrayPageSize=new Array(pageWidth,pageHeight,d,c);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(b){var c=new Date();a=null;do{var a=new Date()}while(a-c<b)}var myLightbox;function initLightbox(){myLightbox=new Lightbox()}Event.observe(window,"load",initLightbox,false);function extLink(a){document.getElementById(a).click()};