var fileLoadingImage="assets/images/lightbox/loading.gif";
var fileBottomNavCloseImage="assets/images/lightbox/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(b,a){b=$(b);
b.style.top=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=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 o=document.getElementsByTagName("a");
for(var u=0;
u<o.length;
u++){var f=o[u];
var w=String(f.getAttribute("rel"));
if(f.getAttribute("href")&&(w.toLowerCase().match("lightbox"))){f.onclick=function(){myLightbox.start(this);
return false
}
}}var x=document.getElementsByTagName("body").item(0);
var g=document.createElement("div");
g.setAttribute("id","overlay");
g.style.display="none";
g.onclick=function(){myLightbox.end();
return false
};
x.appendChild(g);
var n=document.createElement("div");
n.setAttribute("id","lightbox");
n.style.display="none";
x.appendChild(n);
var v=document.createElement("div");
v.setAttribute("id","outerImageContainer");
n.appendChild(v);
var m=document.createElement("div");
m.setAttribute("id","imageContainer");
v.appendChild(m);
var j=document.createElement("img");
j.setAttribute("id","lightboxImage");
m.appendChild(j);
var r=document.createElement("div");
r.setAttribute("id","hoverNav");
m.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","loading");
m.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 l=document.createElement("img");
l.setAttribute("src",fileLoadingImage);
a.appendChild(l);
var e=document.createElement("div");
e.setAttribute("id","imageDataContainer");
e.className="clearfix";
n.appendChild(e);
var d=document.createElement("div");
d.setAttribute("id","imageData");
e.appendChild(d);
var q=document.createElement("div");
q.setAttribute("id","imageDetails");
d.appendChild(q);
var h=document.createElement("span");
h.setAttribute("id","caption");
q.appendChild(h);
var b=document.createElement("span");
b.setAttribute("id","numberDisplay");
q.appendChild(b);
var p=document.createElement("div");
p.setAttribute("id","bottomNav");
d.appendChild(p);
var y=document.createElement("a");
y.setAttribute("id","bottomNavClose");
y.setAttribute("href","#");
y.onclick=function(){myLightbox.end();
return false
};
p.appendChild(y);
var k=document.createElement("img");
k.setAttribute("src",fileBottomNavCloseImage);
y.appendChild(k)
},start:function(g){hideSelectBoxes();
var c=getPageSize();
Element.setHeight("overlay",c[1]);
new Effect.Appear("overlay",{duration:0.2,from:0,to:0.8});
imageArray=[];
imageNum=0;
if(!document.getElementsByTagName){return
}var e=document.getElementsByTagName("a");
if((g.getAttribute("rel")=="lightbox")){imageArray.push(new Array(g.getAttribute("href"),g.getAttribute("title")))
}else{for(var d=0;
d<e.length;
d++){var b=e[d];
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 c=getPageSize();
var a=getPageScroll();
var f=a[1]+(c[3]/15);
Element.setTop("lightbox",f+100);
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(b,a){this.wCur=Element.getWidth("outerImageContainer");
this.hCur=Element.getHeight("outerImageContainer");
this.xScale=((b+(borderSize*2))/this.wCur)*100;
this.yScale=((a+(borderSize*2))/this.hCur)*100;
wDiff=(this.wCur-borderSize*2)-b;
hDiff=(this.hCur-borderSize*2)-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",a);
Element.setHeight("nextLink",a);
Element.setWidth("imageDataContainer",b+(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,a;
if(window.innerHeight&&window.scrollMaxY){c=document.body.scrollWidth;
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){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=b
}else{pageWidth=c
}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(){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();
var a;
if(a=document.getElementById("init_box")){a.onclick.apply(a)
}}Event.observe(window,"load",initLightbox,false);
