﻿(function(a){var b;a.fn.lightbox=function(c){b=a.extend({},a.fn.lightbox.defaults,c);a.fn.lightbox.initialize();return this.each(function(){a(this).click(function(){a(this).lightbox.start(this);return false})})};a.fn.lightbox.initialize=function(){a("#jql_overlay").remove();a("#jql_lightbox").remove();b.inprogress=false;var c='<div id="jql_header"><a href="javascript://" id="jql_bottomNavClose" class="jql_topNavClose" title="'+b.strings.closeTitle+'"></a></div>',d='<div id="jql_outerImageContainer"><div id="jql_imageContainer"><img id="jql_lightboxImage"><div id="jql_hoverNav"><a href="javascript://" title="'+
b.strings.prevLinkTitle+'" id="jql_prevLink"></a><a href="javascript://" id="jql_nextLink" title="'+b.strings.nextLinkTitle+'"></a></div><div id="jql_loading"><a href="javascript://" id="jql_loadingLink"></a></div></div></div>';if(b.navbarOnTop){c='<div id="jql_overlay"></div><div id="jql_lightbox"><div id="jql_imageDataContainer" class="jql_clearfix"><div id="jql_imageData"><div id="jql_imageDetails" class="jql_clearfix"><span id="jql_caption"></span><span id="jql_numberDisplay"></span></div><div id="jql_numberDisplay2"></div></div></div>'+
d+c+"</div>";a("body").append(c);a("#jql_imageDataContainer").addClass("jql_ontop")}else{c='<div id="jql_overlay"></div><div id="jql_lightbox">'+c+d+'<div id="jql_imageDataContainer" class="jql_clearfix"><div id="jql_imageData"><div id="jql_imageDetails" class="jql_clearfix"><span id="jql_caption"></span><span id="jql_numberDisplay"></span></div><div id="jql_numberDisplay2"></div></div></div></div>';a("body").append(c)}a("#jql_overlay").click(function(){a.fn.lightbox.end()}).hide();a("#jql_lightbox").click(function(){a.fn.lightbox.end()}).hide();
a("#jql_loadingLink").click(function(){a.fn.lightbox.end();return false});a("#jql_bottomNavClose").click(function(){a.fn.lightbox.end();return false});a("#jql_outerImageContainer").width(b.widthCurrent).height(b.heightCurrent);a("#jql_imageDataContainer").width(b.widthCurrent);a("#jql_header").width(b.widthCurrent)};a.fn.lightbox.getPageSize=function(){var c,d;if(window.innerHeight&&window.scrollMaxY){c=window.innerWidth+window.scrollMaxX;d=window.innerHeight+window.scrollMaxY}else if(document.body.scrollHeight>
document.body.offsetHeight){c=document.body.scrollWidth;d=document.body.scrollHeight}else{c=document.body.offsetWidth;d=document.body.offsetHeight}var e,f;if(self.innerHeight){e=document.documentElement.clientWidth?document.documentElement.clientWidth:self.innerWidth;f=self.innerHeight}else if(document.documentElement&&document.documentElement.clientHeight){e=document.documentElement.clientWidth;f=document.documentElement.clientHeight}else if(document.body){e=document.body.clientWidth;f=document.body.clientHeight}pageHeight=
d<f?f:d;pageWidth=c<e?c:e;return new Array(pageWidth,pageHeight,e,f)};a.fn.lightbox.getPageScroll=function(){var c,d;if(self.pageYOffset){d=self.pageYOffset;c=self.pageXOffset}else if(document.documentElement&&document.documentElement.scrollTop){d=document.documentElement.scrollTop;c=document.documentElement.scrollLeft}else if(document.body){d=document.body.scrollTop;c=document.body.scrollLeft}return new Array(c,d)};a.fn.lightbox.pause=function(c){var d=new Date,e=null;do e=new Date;while(e-d<c)};
a.fn.lightbox.start=function(c){a("select, embed, object").hide();var d=a.fn.lightbox.getPageSize();a("#jql_overlay").hide().css({width:"100%",height:d[1]+"px",opacity:b.overlayOpacity}).fadeIn();b.imageArray=[];imageNum=0;document.getElementsByTagName(c.tagName);if(!c.rel||c.rel=="")b.imageArray.push(new Array(c.href,b.displayTitle?a(c).children()[0].alt:""));else{a("a").each(function(){if(this.href&&this.rel==c.rel)b.imageArray.push(new Array(this.href,b.displayTitle?a(this).children()[0].alt:""))});
for(i=0;i<b.imageArray.length;i++)for(j=b.imageArray.length-1;j>i;j--)b.imageArray[i][0]==b.imageArray[j][0]&&b.imageArray.splice(j,1);for(;b.imageArray[imageNum][0]!=c.href;)imageNum++}var e=a.fn.lightbox.getPageScroll();d=e[1]+d[3]/10;e=e[0];a("#jql_lightbox").css({top:d+"px",left:e+"px"}).show();b.slideNavBar||a("#jql_imageData").hide();a.fn.lightbox.changeImage(imageNum)};a.fn.lightbox.changeImage=function(c){if(b.inprogress==false){b.inprogress=true;b.activeImage=c;a("#jql_loading").show();a("#jql_lightboxImage").hide();
a("#jql_hoverNav").hide();a("#jql_prevLink").hide();a("#jql_nextLink").hide();if(b.slideNavBar){a("#jql_imageDataContainer").hide();a("#jql_header").hide();a("#jql_imageData").hide()}a.fn.doChangeImage()}};a.fn.doChangeImage=function(){imgPreloader=new Image;imgPreloader.onload=function(){var c=imgPreloader.width,d=imgPreloader.height;if(b.fitToScreen){var e=a.fn.lightbox.getPageSize(),f=e[2]-2*b.borderSize;e=e[3]-200;if(imgPreloader.height>e){c=parseInt(e/imgPreloader.height*imgPreloader.width);
d=e}else if(imgPreloader.width>f){d=parseInt(f/imgPreloader.width*imgPreloader.height);c=f}}a("#jql_lightboxImage").attr("src",b.imageArray[b.activeImage][0]).width(c).height(d);a.fn.lightbox.resizeImageContainer(c,d)};imgPreloader.src=b.imageArray[b.activeImage][0]};a.fn.lightbox.end=function(){a.fn.lightbox.disableKeyboardNav();a("#jql_lightbox").hide();a("#jql_overlay").fadeOut();a("select, object, embed").show()};a.fn.lightbox.preloadNeighborImages=function(){if(b.imageArray.length-1>b.activeImage){preloadNextImage=
new Image;preloadNextImage.src=b.imageArray[b.activeImage+1][0]}if(b.activeImage>0){preloadPrevImage=new Image;preloadPrevImage.src=b.imageArray[b.activeImage-1][0]}};a.fn.lightbox.keyboardAction=function(c){if(c==null){var d=event.keyCode;c=27}else{d=c.keyCode;c=c.DOM_VK_ESCAPE}var e=String.fromCharCode(d).toLowerCase();if(e=="x"||e=="o"||e=="c"||d==c)a.fn.lightbox.end();else if(e=="p"||d==37){if(b.activeImage!=0){a.fn.lightbox.disableKeyboardNav();a.fn.lightbox.changeImage(b.activeImage-1)}}else if(e==
"n"||d==39)if(b.activeImage!=b.imageArray.length-1){a.fn.lightbox.disableKeyboardNav();a.fn.lightbox.changeImage(b.activeImage+1)}};a.fn.lightbox.resizeImageContainer=function(c,d){b.widthCurrent=document.getElementById("jql_outerImageContainer").offsetWidth;b.heightCurrent=document.getElementById("jql_outerImageContainer").offsetHeight;c=c+b.borderSize*2;var e=d+b.borderSize*2;b.xScale=c/b.widthCurrent*100;b.yScale=e/b.heightCurrent*100;wDiff=b.widthCurrent-c;hDiff=b.heightCurrent-e;a("#jql_header").animate({width:c},
b.resizeSpeed,"linear");a("#jql_imageDataContainer").animate({width:c},b.resizeSpeed,"linear");a("#jql_outerImageContainer").animate({width:c},b.resizeSpeed,"linear",function(){a("#jql_outerImageContainer").animate({height:e},b.resizeSpeed,"linear",function(){a.fn.lightbox.showImage()})});if(hDiff==0&&wDiff==0)jQuery.browser.msie?a.fn.lightbox.pause(250):a.fn.lightbox.pause(100);a("#jql_prevLink").height(d);a("#jql_nextLink").height(d)};a.fn.lightbox.showImage=function(){a("#jql_loading").hide();
a("#jql_lightboxImage").fadeIn("fast");a.fn.lightbox.updateDetails();a.fn.lightbox.preloadNeighborImages();b.inprogress=false};a.fn.lightbox.updateDetails=function(){b.imageArray[b.activeImage][1]&&a("#jql_caption").html(b.imageArray[b.activeImage][1]).show();if(b.imageArray.length>1){var c;c=b.strings.image+(b.activeImage+1)+b.strings.of+b.imageArray.length;a("#jql_numberDisplay").html(c).show()}if(b.imageArray.length>1){c=b.activeImage>0?'<a title="'+b.strings.prevLinkTitle+'" href="#" id="jql_prevLinkText">'+
b.strings.prevLinkText+"</a>":"";if(b.activeImage+1<b.imageArray.length)c+='<a title="'+b.strings.nextLinkTitle+'" href="#" id="jql_nextLinkText">'+b.strings.nextLinkText+"</a>";a("#jql_numberDisplay2").html(c).show()}b.slideNavBar?a("#jql_imageData").slideDown(b.navBarSlideSpeed):a("#jql_imageData").show();c=a.fn.lightbox.getPageSize();a("#jql_overlay").height(c[1]);a.fn.lightbox.updateNav()};a.fn.lightbox.updateNav=function(){a("#jql_hoverNav").show();b.activeImage!=0&&a("#jql_prevLink,#jql_prevLinkText").show().click(function(){a.fn.lightbox.changeImage(b.activeImage-
1);return false});b.activeImage!=b.imageArray.length-1&&a("#jql_nextLink,#jql_nextLinkText").show().click(function(){a.fn.lightbox.changeImage(b.activeImage+1);return false});a.fn.lightbox.enableKeyboardNav()};a.fn.lightbox.enableKeyboardNav=function(){document.onkeydown=a.fn.lightbox.keyboardAction};a.fn.lightbox.disableKeyboardNav=function(){document.onkeydown=""};a.fn.lightbox.defaults={overlayOpacity:0.8,borderSize:0,imageArray:[],activeImage:null,inprogress:false,resizeSpeed:350,widthCurrent:250,
heightCurrent:250,xScale:1,yScale:1,displayTitle:true,navbarOnTop:false,slideNavBar:false,navBarSlideSpeed:350,displayHelp:false,fitToScreen:false}})(jQuery);
