var fileLoadingImage="images/lightbox/loading.gif";var fileBottomNavCloseImage="images/lightbox/closelabel.gif";var resizeSpeed=7;var borderSize=5;var animate=true;var closeLabel='bottom';var maxHeightTop=25;var maxHeightMargin=45;var maxWidthMargin=70;var imageArray=[];var activeImage;if(resizeSpeed>10){resizeSpeed=10;}
if(resizeSpeed<1){resizeSpeed=1;}
var resizeDuration=(11-resizeSpeed)*0.15;Object.extend(Element,{getWidth:function(element){return $(element).offsetWidth;},setWidth:function(element,w){$(element).style.width=w+"px";},setHeight:function(element,h){$(element).style.height=h+"px";},setTop:function(element,t){$(element).style.top=t+"px";},setSrc:function(element,src){$(element).src=src;},setHref:function(element,href){$(element).href=href;},setInnerHTML:function(element,content){$(element).innerHTML=content;}});Array.prototype.removeDuplicates=function(){for(var r=1;r<this.length;r++){if(this[r][0]==this[r-1][0]){this.splice(r,1);}}};Array.prototype.empty=function(){for(i=0;i<=this.length;i++){this.shift();}};var Lightbox=Class.create();Lightbox.prototype={lnkType:'img',frameWidth:0,frameHeight:0,frameSrc:'',frameCaption:'',frameClose:closeLabel,initialize:function(){if(!document.getElementsByTagName){return;}
var scripts=$A(document.getElementsByTagName("script"));var parentVar='parentObj=';scripts.findAll(function(s){return(s.src&&s.src.match(/lightbox\.js(\?.*)?$/));}).each(function(s){if(s.src.indexOf(parentVar)!==-1){var strParentObj=s.src.substring(s.src.indexOf(parentVar)+(parentVar.length),s.src.length);parentObj=(strParentObj!=='')?strParentObj:null;}
else{parentObj=null;}});var anchors=(parentObj!==null && $(parentObj))?$(parentObj).getElementsByTagName('a'):document.getElementsByTagName('a');for(var i=0;i<anchors.length;i++){var lnk=anchors[i];var relAttribute=String(lnk.getAttribute('rel'));if(lnk.getAttribute('href')&&((relAttribute.toLowerCase().match('lightbox'))||relAttribute.toLowerCase().match('lightframe'))){lnk.onfocus=function(){this.blur();}
lnk.onclick=function(){myLightbox.start(this);return false;};}
else{if(relAttribute.toLowerCase().match('lightpop')||relAttribute.toLowerCase().match('lightfull')){lnk.onfocus=function(){this.blur();}
lnk.onclick=function(){var lnkAttribute=String(this.getAttribute('rel'));var lnkArray=lnkAttribute.substring(9,lnkAttribute.length-1).split(",");var scrollbars=(lnkArray[2]==1)?"yes":"no";var resizable=(lnkArray[3]==1)?"yes":"no";var screenSize=getPageSize();var w=screen.availWidth,h=screen.availHeight;if(lnkAttribute.toLowerCase().match('lightpop'))
{var leftPos=(w-lnkArray[0])/2,topPos=(h-lnkArray[1])/2;var width=lnkArray[0],height=lnkArray[1];}
else
{var leftPos=0,topPos=0;var width=w,height=h;}
features="width="+width+", height="+height+", top="+topPos+", left="+leftPos+", toolbar=no, menubar=no, scrollbars="+scrollbars+", resizable="+resizable+", location=no, directories=no";msgWindow=open(this.getAttribute('href'),"newWin",features);msgWindow.focus();return false;}}}}
var objBody=document.getElementsByTagName("body").item(0);var objOverlay=document.createElement("div");objOverlay.setAttribute('id','overlay');objOverlay.style.display='none';objOverlay.onclick=function(){myLightbox.end();}
objBody.appendChild(objOverlay);var objLightbox=document.createElement("div");objLightbox.setAttribute('id','lightbox');objLightbox.style.display='none';objBody.appendChild(objLightbox);Event.observe('lightbox','click',function(e){var clickObj=Event.element(e).id;if(clickObj=='lightbox'){myLightbox.end();}})
var objOuterFrameContainer=document.createElement("div");objOuterFrameContainer.setAttribute('id','outerFrameContainer');objLightbox.appendChild(objOuterFrameContainer);var objOuterImageContainer=document.createElement("div");objOuterImageContainer.setAttribute('id','outerImageContainer');var objTopClose=document.createElement("a");objTopClose.setAttribute('id','topClose');objTopClose.setAttribute('href','#');objTopClose.onfocus=function(){this.blur();}
objTopClose.onclick=function(){myLightbox.end();return false;}
objOuterImageContainer.appendChild(objTopClose);objLightbox.appendChild(objOuterImageContainer);var objImageContainer=document.createElement("div");objImageContainer.setAttribute('id','imageContainer');objOuterImageContainer.appendChild(objImageContainer);var objLightboxImage=document.createElement("img");objLightboxImage.setAttribute('id','lightboxImage');objImageContainer.appendChild(objLightboxImage);var objHoverNav=document.createElement("div");objHoverNav.setAttribute('id','hoverNav');objImageContainer.appendChild(objHoverNav);var objPrevLink=document.createElement("a");objPrevLink.setAttribute('id','prevLink');objPrevLink.setAttribute('href','#');objHoverNav.appendChild(objPrevLink);var objNextLink=document.createElement("a");objNextLink.setAttribute('id','nextLink');objNextLink.setAttribute('href','#');objHoverNav.appendChild(objNextLink);var objLoading=document.createElement("div");objLoading.setAttribute('id','loading');objImageContainer.appendChild(objLoading);var objLoadingLink=document.createElement("a");objLoadingLink.setAttribute('id','loadingLink');objLoadingLink.setAttribute('href','#');objLoadingLink.onclick=function(){myLightbox.end();return false;}
objLoading.appendChild(objLoadingLink);var objLoadingImage=document.createElement("img");objLoadingImage.setAttribute('src',fileLoadingImage);objLoadingLink.appendChild(objLoadingImage);var objImageDataContainer=document.createElement("div");objImageDataContainer.setAttribute('id','imageDataContainer');objImageDataContainer.className='clearfix';objLightbox.appendChild(objImageDataContainer);var objImageData=document.createElement("div");objImageData.setAttribute('id','imageData');objImageDataContainer.appendChild(objImageData);var objImageDetails=document.createElement("div");objImageDetails.setAttribute('id','imageDetails');objImageData.appendChild(objImageDetails);var objCaption=document.createElement("span");objCaption.setAttribute('id','caption');objImageDetails.appendChild(objCaption);var objNumberDisplay=document.createElement("span");objNumberDisplay.setAttribute('id','numberDisplay');objImageDetails.appendChild(objNumberDisplay);var objBottomNav=document.createElement("div");objBottomNav.setAttribute('id','bottomNav');objImageData.appendChild(objBottomNav);var objBottomNavCloseLink=document.createElement("a");objBottomNavCloseLink.setAttribute('id','bottomNavClose');objBottomNavCloseLink.setAttribute('href','#');objBottomNavCloseLink.onfocus=function(){this.blur();}
objBottomNavCloseLink.onclick=function(){myLightbox.end();return false;}
objBottomNav.appendChild(objBottomNavCloseLink);var objBottomNavCloseImage=document.createElement("img");objBottomNavCloseImage.setAttribute('src',fileBottomNavCloseImage);objBottomNavCloseLink.appendChild(objBottomNavCloseImage);},start:function(imageLink){hideSelectBoxes();var arrayPageSize=getPageSize();Element.setHeight('overlay',arrayPageSize[1]);if(animate){new Effect.Appear('overlay',{duration:0.2,from:0.0,to:0.8});}
else{$('overlay').show();}
imageArray=[];var imageNum=0;if(!document.getElementsByTagName){return;}
var anchors=(parentObj!==null)?$(parentObj).getElementsByTagName('a'):document.getElementsByTagName('a');var imgRel=imageLink.getAttribute('rel');var imgTitle=imageLink.getAttribute('title');var imgHref=imageLink.getAttribute('href');this.lnkType='img';if((imgRel.indexOf('lightframe')!=-1)){this.lnkType='frame';this.frameSrc=imgHref;var frameArray=imgRel.substring(11,imgRel.length-1).split(",");this.frameWidth=(frameArray[0]!='max')?parseInt(frameArray[0],10):(arrayPageSize[2]-(borderSize*2)-maxWidthMargin);this.frameHeight=(frameArray[1]!='max')?parseInt(frameArray[1],10):(arrayPageSize[3]-(borderSize*2)-maxHeightMargin);this.frameCaption=imgTitle;this.frameClose=(typeof(frameArray[2])!='undefined')?frameArray[2].substring(1,frameArray[2].length-1):1;bufferHeight=(frameArray[1]=='max')?maxHeightTop:0;}
else{bufferHeight=0;}
if((imgRel=='lightbox')){imageArray.push(new Array(imgHref,imgTitle));}else{for(var i=0;i<anchors.length;i++){var lnk=anchors[i];if(lnk.getAttribute('href')&&(lnk.getAttribute('rel')==imgRel)){imageArray.push(new Array(lnk.getAttribute('href'),lnk.getAttribute('title')));}}
imageArray.removeDuplicates();while(imageArray[imageNum][0]!=imgHref){imageNum++;}}
var arrayPageSize=getPageSize();var arrayPageScroll=getPageScroll();var lightboxTop=arrayPageScroll[1]+(arrayPageSize[3]/15)-bufferHeight;Element.setTop('lightbox',lightboxTop);$('lightbox').show();if(this.lnkType=='img'){this.changeImage(imageNum);}
else{if(this.lnkType=='frame'){this.changeFrame(this.frameWidth,this.frameHeight);}}},changeImage:function(imageNum){activeImage=imageNum;$('loading').show();var elmnts=['topClose','bottomNavClose','lightboxImage','hoverNav','prevLink','nextLink','imageDataContainer','numberDisplay'];elmnts.each(function(Obj){$(Obj).hide();});var imgPreloader=new Image();imgPreloader.onload=function(){Element.setSrc('lightboxImage',imageArray[activeImage][0]);myLightbox.resizeImageContainer(imgPreloader.width,imgPreloader.height);}
imgPreloader.src=imageArray[activeImage][0];},changeFrame:function(frameWidth,frameHeight){if($('lightFrameSrc'))Element.remove('lightFrameSrc');$('loading').show();var elmnts=['topClose','bottomNavClose','lightboxImage','hoverNav','prevLink','nextLink','imageDataContainer','numberDisplay'];elmnts.each(function(Obj){$(Obj).hide();});myLightbox.resizeImageContainer(frameWidth,frameHeight);},resizeImageContainer:function(imgWidth,imgHeight){this.wCur=Element.getWidth('outerImageContainer');this.hCur=Element.getHeight('outerImageContainer');var nWidth=(imgWidth+(borderSize*2));var nHeight=(imgHeight+(borderSize*2));this.xScale=(nWidth/this.wCur)*100;this.yScale=(nHeight/this.hCur)*100;var wDiff=(this.wCur-borderSize*2)-imgWidth;var hDiff=(this.hCur-borderSize*2)-imgHeight;if(animate)
{if(hDiff!==0){new Effect.Scale('outerImageContainer',this.yScale,{scaleX:false,duration:resizeDuration,queue:'end'});}
if(wDiff!==0){new Effect.Scale('outerImageContainer',this.xScale,{scaleY:false,delay:resizeDuration,duration:resizeDuration});}}
else
{Element.setStyle('outerImageContainer',{width:nWidth+'px',height:nHeight+'px'});}
if((hDiff==0)&&(wDiff==0)){if(navigator.appVersion.indexOf("MSIE")!=-1){pause(250);}else{pause(100);}}
Element.setWidth('imageDataContainer',imgWidth+(borderSize*2));if(this.lnkType=='img')
{Element.setHeight('prevLink',imgHeight);Element.setHeight('nextLink',imgHeight);this.showImage();}
else{if(this.lnkType=='frame'){this.showFrame(this.frameWidth,this.frameHeight,this.frameSrc,this.frameClose);}}},showFrame:function(width,height,url,closeState){new Effect.Fade('loading',{duration:0.2,queue:'end',afterFinish:function(){new Insertion.Before('loading','<iframe src="'+url+'" name="lightFrameSrc" id="lightFrameSrc" width="'+width+'" height="'+height+'" border="0" frameborder="0" marginwidth="0" marginheight="0" style="border:0; display:none;"></iframe>');new Effect.Appear('lightFrameSrc',{duration:0.01,from:0.0,to:1.0,queue:'end',afterFinish:function(){if(closeState=="top"||closeState=="both"){$('topClose').show();}
if(closeState=="bottom"||closeState=="both"){$('bottomNavClose').show();}
if(this.frameCaption!=''){myLightbox.updateDetails();}}});}});},showImage:function(){$('loading').hide();new Effect.Appear('lightboxImage',{duration:0.5,queue:'end',afterFinish:function(){switch(closeLabel){case"top":$('topClose').show();break;case"bottom":case"both":$('bottomNavClose').show();break;default:break;}
myLightbox.updateDetails();}});this.preloadNeighborImages();},updateDetails:function(){var tHeight=Element.getHeight('outerImageContainer');$('caption').show();if(this.lnkType=='img'){Element.setInnerHTML('caption',imageArray[activeImage][1]);if(imageArray.length>1){$('numberDisplay').show();Element.setInnerHTML('numberDisplay',"Image "+eval(activeImage+1)+" of "+imageArray.length);}}
else{if(this.lnkType=='frame'){Element.setInnerHTML('caption',this.frameCaption);}}
new Effect.Parallel([new Effect.SlideDown('imageDataContainer',{sync:true,duration:resizeDuration+0.25,from:0.0,to:1.0}),new Effect.Appear('imageDataContainer',{sync:true,duration:1.0})],{duration:0.65,afterFinish:function(){myLightbox.updateNav();}});},updateNav:function(){if(this.lnkType=="frame")return;$('hoverNav').show();if(activeImage!=0){$('prevLink').show();$('prevLink').onclick=function(){myLightbox.changeImage(activeImage-1);return false;}}
if(activeImage!=(imageArray.length-1)){$('nextLink').show();$('nextLink').onclick=function(){myLightbox.changeImage(activeImage+1);return false;}}
this.enableKeyboardNav();},enableKeyboardNav:function(){document.onkeydown=this.keyboardAction;},disableKeyboardNav:function(){document.onkeydown='';},keyboardAction:function(e){var keycode=null;if(e==null){keycode=event.keyCode;}else{keycode=e.which;}
var 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){var preloadNextImage=new Image();preloadNextImage.src=imageArray[activeImage+1][0];}
if(activeImage>0){var preloadPrevImage=new Image();preloadPrevImage.src=imageArray[activeImage-1][0];}},end:function(){this.disableKeyboardNav();$('lightbox').hide();if($('lightFrameSrc'))Element.remove('lightFrameSrc');new Effect.Fade('overlay',{duration:0.2});showSelectBoxes();}}
function getPageScroll(){var yScroll;if(self.pageYOffset){yScroll=self.pageYOffset;}else if(document.documentElement&&document.documentElement.scrollTop){yScroll=document.documentElement.scrollTop;}else if(document.body){yScroll=document.body.scrollTop;}
var arrayPageScroll=['',yScroll];return arrayPageScroll;}
function getPageSize(){var xScroll,yScroll;if(window.innerHeight&&window.scrollMaxY){xScroll=document.body.scrollWidth;yScroll=window.innerHeight+window.scrollMaxY;}else if(document.body.scrollHeight>document.body.offsetHeight){xScroll=document.body.scrollWidth;yScroll=document.body.scrollHeight;}else{xScroll=document.body.offsetWidth;yScroll=document.body.offsetHeight;}
var windowWidth,windowHeight;if(self.innerHeight){windowWidth=self.innerWidth;windowHeight=self.innerHeight;}else if(document.documentElement&&document.documentElement.clientHeight){windowWidth=document.documentElement.clientWidth;windowHeight=document.documentElement.clientHeight;}else if(document.body){windowWidth=document.body.clientWidth;windowHeight=document.body.clientHeight;}
var pageHeight=0;if(yScroll<windowHeight){pageHeight=windowHeight;}
else{pageHeight=yScroll;}
var pageWidth=0;if(xScroll<windowWidth){pageWidth=windowWidth;}
else{pageWidth=xScroll;}
var arrayPageSize=[pageWidth,pageHeight,windowWidth,windowHeight];return arrayPageSize;}
function getKey(e){if(e==null){keycode=event.keyCode;}else{keycode=e.which;}
key=String.fromCharCode(keycode).toLowerCase();if(key=='x'){}}
function listenKey(){document.onkeypress=getKey;}
function showSelectBoxes(){var selects=(parentObj!==null)?$(parentObj).getElementsByTagName("select"):document.getElementsByTagName("select");for(var s=0;s!=selects.length;s++){selects[s].style.visibility="visible";}}
function hideSelectBoxes(){var selects=(parentObj!==null)?$(parentObj).getElementsByTagName("select"):document.getElementsByTagName("select");for(var l=0;l!=selects.length;l++){selects[l].style.visibility="hidden";}}
function pause(ms){var date=new Date();curDate=null;do{var curDate=new Date();}
while(curDate-date<ms);}
function initLightbox(){myLightbox=new Lightbox();}
onContent(initLightbox);