var overlayOpacity=0.8;var animate=true;var resizeSpeed=400;var borderSize=10;var lllImage="Image";var lllOf="of";var presentationMode;var allowSave=false;var slideshowEnabled;var enableSlideshowAutoplay=false;var slideshowInterval=5000;var slideshowAutoclose=false;var imageArray=new Array;var activeImage;var slideshowActive;var slideshowIDArray=new Array();var slideshowIDCount=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}});var Lightbox=Class.create();Lightbox.prototype={initialize:function(){if(animate==true){overlayDuration=resizeSpeed/1000;resizeDuration=resizeSpeed/1000}else{overlayDuration=0;resizeDuration=0}this.updateImageList();var v=document.getElementsByTagName("body").item(0);var k=document.createElement("div");k.setAttribute("id","overlay");k.style.display="none";k.onclick=function(){myLightbox.end()};v.appendChild(k);var o=document.createElement("div");o.setAttribute("id","lbLightbox");o.style.display="none";o.onclick=function(y){if(!y){var y=window.event}var x=Event.element(y).id;if(x=="lbLightbox"){myLightbox.end()}};v.appendChild(o);var u=document.createElement("div");u.setAttribute("id","lbOuterImageContainer");o.appendChild(u);if(animate){Element.setWidth("lbOuterImageContainer",250);Element.setHeight("lbOuterImageContainer",250)}else{Element.setWidth("lbOuterImageContainer",1);Element.setHeight("lbOuterImageContainer",1)}var n=document.createElement("div");n.setAttribute("id","lbImageContainer");u.appendChild(n);var m=document.createElement("img");m.setAttribute("id","lightboxImage");n.appendChild(m);var r=document.createElement("div");r.setAttribute("id","lbHoverNav");n.appendChild(r);var s=document.createElement("a");s.setAttribute("id","prevLink");s.setAttribute("href","#");r.appendChild(s);var c=document.createElement("a");c.setAttribute("id","nextLink");c.setAttribute("href","#");r.appendChild(c);var t=document.createElement("div");t.setAttribute("id","lbLoading");n.appendChild(t);var a=document.createElement("a");a.setAttribute("id","loadingLink");a.setAttribute("href","#");a.onclick=function(){myLightbox.end();return false};t.appendChild(a);var e=document.createElement("div");e.setAttribute("id","lbImageDataContainer");o.appendChild(e);var d=document.createElement("div");d.setAttribute("id","lbImageData");e.appendChild(d);var q=document.createElement("div");q.setAttribute("id","lbImageDetails");d.appendChild(q);var l=document.createElement("span");l.setAttribute("id","lbCaption");q.appendChild(l);var b=document.createElement("span");b.setAttribute("id","lbNumber");q.appendChild(b);var j=document.createElement("span");j.setAttribute("id","lbPresent");q.appendChild(j);var p=document.createElement("div");p.setAttribute("id","bottomNav");d.appendChild(p);var w=document.createElement("a");w.setAttribute("id","closeLink");w.setAttribute("href","#");w.onclick=function(){myLightbox.end();return false};p.appendChild(w);var f=document.createElement("a");f.setAttribute("id","playLink");f.setAttribute("href","#");f.onclick=function(){myLightbox.startSlideshow();return false};p.appendChild(f);var h=document.createElement("a");h.setAttribute("id","pauseLink");h.setAttribute("href","#");h.onclick=function(){myLightbox.stopSlideshow();return false};p.appendChild(h);if(allowSave){var g=document.createElement("a");g.setAttribute("id","saveLink");g.setAttribute("target","_blank");p.appendChild(g)}},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.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")));presentationMode=false;slideshowEnabled=false;slideshowActive=false;$("pauseLink").hide();$("playLink").hide()}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")))}}while(imageArray[imageNum][0]!=h.getAttribute("href")){imageNum++}if(h.getAttribute("rel").toLowerCase().match("present")){presentationMode=true}else{presentationMode=false}if(h.getAttribute("rel").toLowerCase().match("slideshow")){slideshowEnabled=true;slideshowActive=enableSlideshowAutoplay}else{slideshowEnabled=false;slideshowActive=false;$("pauseLink").hide();$("playLink").hide()}}var a=getPageScroll();var g=a[1]+(c[3]/10);var e=a[0];Element.setTop("lbLightbox",g);Element.setLeft("lbLightbox",e);$("lbLightbox").show();this.changeImage(imageNum)},changeImage:function(a){activeImage=a;if(animate){$("lbLoading").show()}$("lightboxImage").hide();$("lbHoverNav").hide();$("prevLink").hide();$("nextLink").hide();$("lbImageDataContainer").hide();$("lbNumber").hide();imgPreloader=new Image();imgPreloader.onload=function(){Element.setSrc("lightboxImage",imageArray[activeImage][0]);myLightbox.resizeImageContainer(imgPreloader.width,imgPreloader.height);if(allowSave){document.getElementById("saveLink").setAttribute("href",imageArray[activeImage][0])}imgPreloader.onload=function(){}};imgPreloader.src=imageArray[activeImage][0]},resizeImageContainer:function(d,b){this.widthCurrent=Element.getWidth("lbOuterImageContainer");this.heightCurrent=Element.getHeight("lbOuterImageContainer");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("lbOuterImageContainer",this.yScale,{scaleX:false,duration:resizeDuration,queue:"front"})}if(!(wDiff==0)){new Effect.Scale("lbOuterImageContainer",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("lbImageDataContainer",a);this.showImage()},showImage:function(){$("lbLoading").hide();new Effect.Appear("lightboxImage",{duration:resizeDuration,queue:"end",afterFinish:function(){myLightbox.updateDetails()}});if(slideshowActive){if(activeImage==(imageArray.length-1)){if(slideshowAutoclose){slideshowIDArray[slideshowIDCount++]=setTimeout("myLightbox.end()",slideshowInterval+resizeSpeed*2)}else{myLightbox.stopSlideshow()}}else{slideshowIDArray[slideshowIDCount++]=setTimeout("myLightbox.changeImage("+(activeImage+1)+")",slideshowInterval+resizeSpeed*2)}}this.preloadNeighborImages()},updateDetails:function(){if(imageArray[activeImage][1]){$("lbCaption").show();Element.setInnerHTML("lbCaption",imageArray[activeImage][1])}else{$("lbCaption").hide()}if(imageArray.length>1){$("lbNumber").show();Element.setInnerHTML("lbNumber"," "+lllImage+" "+eval(activeImage+1)+" "+lllOf+" "+imageArray.length)}if(presentationMode){$("lbNumber").hide();myLightbox.updatePresentationNav()}else{$("lbPresent").hide()}if(slideshowEnabled){if(slideshowActive){$("playLink").hide();$("pauseLink").show()}else{$("pauseLink").hide();
$("playLink").show()}}new Effect.Parallel([new Effect.SlideDown("lbImageDataContainer",{sync:true,duration:resizeDuration,from:0,to:1}),new Effect.Appear("lbImageDataContainer",{sync:true,duration:resizeDuration})],{duration:resizeDuration,afterFinish:function(){var arrayPageSize=getPageSize();Element.setHeight("overlay",arrayPageSize[1]);myLightbox.updateNav()}})},updateNav:function(){$("lbHoverNav").show();if(activeImage!=0){$("prevLink").show();if(!slideshowActive){document.getElementById("prevLink").onclick=function(){myLightbox.changeImage(activeImage-1);return false}}else{document.getElementById("prevLink").onclick=function(){myLightbox.stopSlideshow();myLightbox.changeImage(activeImage-1);return false}}}if(activeImage!=(imageArray.length-1)){$("nextLink").show();if(!slideshowActive){document.getElementById("nextLink").onclick=function(){myLightbox.changeImage(activeImage+1);return false}}else{document.getElementById("nextLink").onclick=function(){myLightbox.stopSlideshow();myLightbox.changeImage(activeImage+1);return false}}}this.enableKeyboardNav()},updatePresentationNav:function(){var b="";for(var a=1;a<=(imageArray.length);a++){if((a-1)==activeImage){if(!slideshowActive){b+='<a class="act" href="#" id="pmi'+a+'" onClick="myLightbox.changeImage('+(a-1)+'); return false;">'+a+"</a> "}else{b+='<a class="act" href="#" id="pmi'+a+'" onClick="myLightbox.stopSlideshow(); myLightbox.changeImage('+(a-1)+'); return false;">'+a+"</a> "}}else{if(!slideshowActive){b+='<a class="no" href="#" id="pmi'+a+'" onClick="myLightbox.changeImage('+(a-1)+'); return false;">'+a+"</a> "}else{b+='<a class="no" href="#" id="pmi'+a+'" onClick="myLightbox.stopSlideshow(); myLightbox.changeImage('+(a-1)+'); return false;">'+a+"</a> "}}}$("lbPresent").show();Element.setInnerHTML("lbPresent",b)},startSlideshow:function(){if(activeImage!=(imageArray.length-1)){slideshowActive=true;myLightbox.changeImage(activeImage+1)}else{if(slideshowAutoclose){myLightbox.end()}else{slideshowActive=true;myLightbox.changeImage(0)}}},stopSlideshow:function(){if(!slideshowActive){return false}slideshowActive=false;for(var a=0;a<slideshowIDCount;a++){window.clearTimeout(slideshowIDArray[a])}$("pauseLink").hide();$("playLink").show()},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();if(slideshowActive){myLightbox.stopSlideshow()}myLightbox.changeImage(activeImage-1)}}else{if((key=="n")||(keycode==39)){if(activeImage!=(imageArray.length-1)){myLightbox.disableKeyboardNav();if(slideshowActive){myLightbox.stopSlideshow()}myLightbox.changeImage(activeImage+1)}}else{if((key=="s")||(keycode==83)){if(slideshowActive){myLightbox.stopSlideshow()}else{myLightbox.startSlideshow()}}}}}},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();$("lbImageDataContainer").hide();$("lbLightbox").hide();new Effect.Fade("overlay",{duration:overlayDuration});showSelectBoxes();showFlash();if(slideshowActive){for(var a=0;a<slideshowIDCount;a++){window.clearTimeout(slideshowIDArray[a])}slideshowActive=false}}};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)}function initLightbox(){myLightbox=new Lightbox()}addEvent(window,"DOMContentLoaded",initLightbox);
