(function(b){var a;
b.fn.lightbox=function(c){a=b.extend({},b.fn.lightbox.defaults,c);
b.fn.lightbox.initialize();
return this.each(function(){b(this).click(function(){b(this).lightbox.start(this);
return false
})
})
};
b.fn.lightbox.initialize=function(){b("#overlay2").remove();
b("#lightbox").remove();
a.inprogress=false;
var c='<div id="outerImageContainer"><div id="imageContainer"><img id="lightboxImage"><div id="hoverNav"><a href="javascript://" title="'+a.strings.prevLinkTitle+'" id="prevLink"></a><a href="javascript://" id="nextLink" title="'+a.strings.nextLinkTitle+'"></a></div><div id="loading"><a href="javascript://" id="loadingLink"><img src="'+a.fileLoadingImage+'"></a></div></div></div>';
var e='<div id="imageDataContainer" class="clearfix"><div id="imageData"><div id="imageDetails"><span id="caption"></span><span id="numberDisplay"></span></div><div id="bottomNav">';
if(a.displayHelp){e+='<span id="helpDisplay">'+a.strings.help+"</span>"
}e+='<a href="javascript://" id="bottomNavClose" title="'+a.strings.closeTitle+'"><img src="'+a.fileBottomNavCloseImage+'"></a></div></div></div>';
var d;
if(a.navbarOnTop){d='<div id="overlay2"></div><div id="lightbox">'+e+c+"</div>";
b("body").append(d);
b("#imageDataContainer").addClass("ontop")
}else{d='<div id="overlay2"></div><div id="lightbox">'+c+e+"</div>";
b("body").append(d)
}b("#overlay2").click(function(){b.fn.lightbox.end()
}).hide();
b("#lightbox").click(function(){b.fn.lightbox.end()
}).hide();
b("#loadingLink").click(function(){b.fn.lightbox.end();
return false
});
b("#bottomNavClose").click(function(){b.fn.lightbox.end();
return false
});
b("#outerImageContainer").width(a.widthCurrent).height(a.heightCurrent);
b("#imageDataContainer").width(a.widthCurrent)
};
b.fn.lightbox.getPageSize=function(){var f,c;
if(window.innerHeight&&window.scrollMaxY){f=window.innerWidth+window.scrollMaxX;
c=window.innerHeight+window.scrollMaxY
}else{if(document.body.scrollHeight>document.body.offsetHeight){f=document.body.scrollWidth;
c=document.body.scrollHeight
}else{f=document.body.offsetWidth;
c=document.body.offsetHeight
}}var e,g;
if(self.innerHeight){if(document.documentElement.clientWidth){e=document.documentElement.clientWidth
}else{e=self.innerWidth
}g=self.innerHeight
}else{if(document.documentElement&&document.documentElement.clientHeight){e=document.documentElement.clientWidth;
g=document.documentElement.clientHeight
}else{if(document.body){e=document.body.clientWidth;
g=document.body.clientHeight
}}}if(c<g){pageHeight=g
}else{pageHeight=c
}if(f<e){pageWidth=f
}else{pageWidth=e
}var d=new Array(pageWidth,pageHeight,e,g);
return d
};
b.fn.lightbox.getPageScroll=function(){var e,c;
if(self.pageYOffset){c=self.pageYOffset;
e=self.pageXOffset
}else{if(document.documentElement&&document.documentElement.scrollTop){c=document.documentElement.scrollTop;
e=document.documentElement.scrollLeft
}else{if(document.body){c=document.body.scrollTop;
e=document.body.scrollLeft
}}}var d=new Array(e,c);
return d
};
b.fn.lightbox.pause=function(e){var d=new Date();
var c=null;
do{c=new Date()
}while(c-d<e)
};
b.fn.lightbox.start=function(h){b("select").hide();
var d=b.fn.lightbox.getPageSize();
b("#overlay2").hide().css({width:"100%",height:d[1]+"px",opacity:a.overlayOpacity}).fadeIn();
a.imageArray=[];
imageNum=0;
var f=document.getElementsByTagName(h.tagName);
if(!h.rel||(h.rel=="")){a.imageArray.push(new Array(h.href,a.displayTitle?h.title:""))
}else{b("a").each(function(){if(this.href&&(this.rel==h.rel)){a.imageArray.push(new Array(this.href,a.displayTitle?this.title:""))
}});
for(i=0;
i<a.imageArray.length;
i++){for(j=a.imageArray.length-1;
j>i;
j--){if(a.imageArray[i][0]==a.imageArray[j][0]){a.imageArray.splice(j,1)
}}}while(a.imageArray[imageNum][0]!=h.href){imageNum++
}}var c=b.fn.lightbox.getPageScroll();
var g=c[1]+(d[3]/10);
var e=c[0];
b("#lightbox").css({top:g+"px",left:e+"px"}).show();
if(!a.slideNavBar){b("#imageData").hide()
}b.fn.lightbox.changeImage(imageNum)
};
b.fn.lightbox.changeImage=function(c){if(a.inprogress==false){a.inprogress=true;
a.activeImage=c;
b("#loading").show();
b("#lightboxImage").hide();
b("#hoverNav").hide();
b("#prevLink").hide();
b("#nextLink").hide();
if(a.slideNavBar){b("#imageDataContainer").hide();
b("#imageData").hide();
b.fn.doChangeImage()
}else{b.fn.doChangeImage()
}}};
b.fn.doChangeImage=function(){imgPreloader=new Image();
imgPreloader.onload=function(){var g=imgPreloader.width;
var c=imgPreloader.height;
if(a.fitToScreen){var e=b.fn.lightbox.getPageSize();
var f;
var d=e[2]-2*a.borderSize;
var h=e[3]-200;
if(imgPreloader.height>h){g=parseInt((h/imgPreloader.height)*imgPreloader.width);
c=h
}else{if(imgPreloader.width>d){c=parseInt((d/imgPreloader.width)*imgPreloader.height);
g=d
}}}b("#lightboxImage").attr("src",a.imageArray[a.activeImage][0]).width(g).height(c);
b.fn.lightbox.resizeImageContainer(g,c)
};
imgPreloader.src=a.imageArray[a.activeImage][0]
};
b.fn.lightbox.end=function(){b.fn.lightbox.disableKeyboardNav();
b("#lightbox").hide();
b("#overlay2").fadeOut();
b("select").show()
};
b.fn.lightbox.preloadNeighborImages=function(){if((a.imageArray.length-1)>a.activeImage){preloadNextImage=new Image();
preloadNextImage.src=a.imageArray[a.activeImage+1][0]
}if(a.activeImage>0){preloadPrevImage=new Image();
preloadPrevImage.src=a.imageArray[a.activeImage-1][0]
}};
b.fn.lightbox.keyboardAction=function(g){if(g==null){var c=event.keyCode;
var d=27
}else{var c=g.keyCode;
var d=g.DOM_VK_ESCAPE
}var f=String.fromCharCode(c).toLowerCase();
if((f=="x")||(f=="o")||(f=="c")||(c==d)){b.fn.lightbox.end()
}else{if((f=="p")||(c==37)){if(a.activeImage!=0){b.fn.lightbox.disableKeyboardNav();
b.fn.lightbox.changeImage(a.activeImage-1)
}}else{if((f=="n")||(c==39)){if(a.activeImage!=(a.imageArray.length-1)){b.fn.lightbox.disableKeyboardNav();
b.fn.lightbox.changeImage(a.activeImage+1)
}}}}};
b.fn.lightbox.resizeImageContainer=function(f,d){a.widthCurrent=document.getElementById("outerImageContainer").offsetWidth;
a.heightCurrent=document.getElementById("outerImageContainer").offsetHeight;
var c=(f+(a.borderSize*2));
var e=(d+(a.borderSize*2));
a.xScale=(c/a.widthCurrent)*100;
a.yScale=(e/a.heightCurrent)*100;
wDiff=a.widthCurrent-c;
hDiff=a.heightCurrent-e;
b("#imageDataContainer").animate({width:c},a.resizeSpeed,"linear");
b("#outerImageContainer").animate({width:c},a.resizeSpeed,"linear",function(){b("#outerImageContainer").animate({height:e},a.resizeSpeed,"linear",function(){b.fn.lightbox.showImage()
})
});
if((hDiff==0)&&(wDiff==0)){if(jQuery.browser.msie){b.fn.lightbox.pause(250)
}else{b.fn.lightbox.pause(100)
}}b("#prevLink").height(d);
b("#nextLink").height(d)
};
b.fn.lightbox.showImage=function(){b("#loading").hide();
b("#lightboxImage").fadeIn("fast");
b.fn.lightbox.updateDetails();
b.fn.lightbox.preloadNeighborImages();
a.inprogress=false
};
b.fn.lightbox.updateDetails=function(){if(a.imageArray[a.activeImage][1]){b("#caption").html(a.imageArray[a.activeImage][1]).show()
}if(a.imageArray.length>1){var d;
d=a.strings.image+(a.activeImage+1)+a.strings.of+a.imageArray.length;
if((a.activeImage)>0){d='<a title="'+a.strings.prevLinkTitle+'" href="#" id="prevLinkText">'+a.strings.prevLinkText+"</a>"+d
}if((a.activeImage+1)<a.imageArray.length){d+='<a title="'+a.strings.nextLinkTitle+'" href="#" id="nextLinkText">'+a.strings.nextLinkText+"</a>"
}b("#numberDisplay").html(d).show()
}if(a.slideNavBar){b("#imageData").slideDown(a.navBarSlideSpeed)
}else{b("#imageData").show()
}var c=b.fn.lightbox.getPageSize();
b("#overlay2").height(c[1]);
b.fn.lightbox.updateNav()
};
b.fn.lightbox.updateNav=function(){b("#hoverNav").show();
if(a.activeImage!=0){b("#prevLink,#prevLinkText").show().click(function(){b.fn.lightbox.changeImage(a.activeImage-1);
return false
})
}if(a.activeImage!=(a.imageArray.length-1)){b("#nextLink,#nextLinkText").show().click(function(){b.fn.lightbox.changeImage(a.activeImage+1);
return false
})
}b.fn.lightbox.enableKeyboardNav()
};
b.fn.lightbox.enableKeyboardNav=function(){document.onkeydown=b.fn.lightbox.keyboardAction
};
b.fn.lightbox.disableKeyboardNav=function(){document.onkeydown=""
};
b.fn.lightbox.defaults={fileLoadingImage:BASE_URL+"static/images/loading.gif",fileBottomNavCloseImage:BASE_URL+"static/images/close.gif",overlayOpacity:0.5,borderSize:10,imageArray:new Array,activeImage:null,inprogress:false,resizeSpeed:350,widthCurrent:250,heightCurrent:250,xScale:1,yScale:1,displayTitle:false,navbarOnTop:false,slideNavBar:false,navBarSlideSpeed:350,displayHelp:false,strings:{help:" \u2190 / P - previous image\u00a0\u00a0\u00a0\u00a0\u2192 / N - next image\u00a0\u00a0\u00a0\u00a0ESC / X - close image gallery",prevLinkTitle:IMG_PREV,nextLinkTitle:IMG_NEXT,prevLinkText:IMG_PREV,nextLinkText:IMG_NEXT,closeTitle:IMG_CLOSE,image:"",of:" / "},fitToScreen:false}
})(jQuery);
