/*
	Slimbox v2.02 - The ultimate lightweight Lightbox clone for jQuery
	(c) 2007-2009 Christophe Beyls <http://www.digitalia.be>
	MIT-style license.
*/
(function(x){var G=x(window),v,g,H=-1,p,z,F,w,A,N,t,o=!window.XMLHttpRequest,e=window.opera&&(document.compatMode=="CSS1Compat")&&(x.browser.version>=9.3),n=document.documentElement,m={},u=new Image(),L=new Image(),J,b,h,r,y,K,l,d,I,c,C,M;x(function(){x("body").append(x([J=x('<div id="lbOverlay" />')[0],b=x('<div id="lbCenter" />')[0],I=x('<div id="lbBottomContainer" />')[0]]).css("display","none"));h=x('<div id="lbImage" />').appendTo(b).append(r=x('<div style="position: relative;" />').append([])[0])[0];c=x('<div id="lbBottom" />').appendTo(I).append([y=x('<a id="lbCloseLink" href="#" />').add(J).click(E)[0],x('<div id="lbImgNav" />').append([K=x('<a id="lbPrevLink" href="#" />').click(D)[0],l=x("<b>|</b>")[0],d=x('<a id="lbNextLink" href="#" />').click(f)[0]])[0],M=x('<div id="lbNumber" />')[0],C=x('<div id="lbCaption" />')[0],x('<div style="clear: both;" />')[0]])[0]});x.slimbox=function(Q,P,O){v=x.extend({loop:false,overlayOpacity:0.8,overlayFadeDuration:400,resizeDuration:400,resizeEasing:"swing",initialWidth:250,initialHeight:250,imageFadeDuration:400,captionAnimationDuration:400,closeLinkText:"Close",nextLinkText:"Next image",prevLinkText:"Previous image",counterText:"Image {x} of {y}",closeKeys:[27,88,67],previousKeys:[37,80],nextKeys:[39,78]},O);if(typeof Q=="string"){Q=[[Q,P]];P=0}A=G.scrollTop()+((e?n.clientHeight:G.height())/2);N=v.initialWidth;t=v.initialHeight;x(b).css({top:Math.max(0,A-(t/2)),width:N,height:t,marginLeft:-N/2}).show();w=o||(J.currentStyle&&(J.currentStyle.position!="fixed"));if(w){J.style.position="absolute"}x(J).css("opacity",v.overlayOpacity).fadeIn(v.overlayFadeDuration);B();k(1);g=Q;v.loop=v.loop&&(g.length>1);return a(P)};x.fn.slimbox=function(O,R,Q){R=R||function(S){return[S.href,S.title]};Q=Q||function(){return true};var P=this;return P.unbind("click").click(function(){var U=this,W=0,V,S=0,T;V=x.grep(P,function(Y,X){return Q.call(U,Y,X)});for(T=V.length;S<T;++S){if(V[S]==U){W=S}V[S]=R(V[S],S)}return x.slimbox(V,W,O)})};function B(){var P=G.scrollLeft(),O=e?n.clientWidth:G.width();x([b,I]).css("left",P+(O/2));if(w){x(J).css({left:P,top:G.scrollTop(),width:O,height:G.height()})}}function k(O){x("object").add(o?"select":"embed").each(function(Q,R){if(O){x.data(R,"slimbox",R.style.visibility)}R.style.visibility=O?"hidden":x.data(R,"slimbox")});var P=O?"bind":"unbind";G[P]("scroll resize",B);x(document)[P]("keydown",q)}function q(Q){var P=Q.keyCode,O=x.inArray;return(O(P,v.closeKeys)>=0)?E():(O(P,v.nextKeys)>=0)?f():(O(P,v.previousKeys)>=0)?D():false}function D(){return a(z)}function f(){return a(F)}function a(O){if(O>=0){H=O;p=g[H][0];z=(H||(v.loop?g.length:0))-1;F=((H+1)%g.length)||(v.loop?0:-1);s();b.className="lbLoading";m=new Image();m.onload=j;m.src=p}return false}function j(){b.className="";x(h).css({backgroundImage:"url("+p+")",visibility:"hidden",display:""});x(r).width(m.width);x([r]).height(m.height);x(C).html(g[H][1]||"");x(M).html((((g.length>1)&&v.counterText)||"").replace(/{x}/,H+1).replace(/{y}/,g.length));x(K).html(v.prevLinkText);x(d).html(v.nextLinkText);x(y).html(v.closeLinkText);if(z>=0){u.src=g[z][0]}if(F>=0){L.src=g[F][0]}N=h.offsetWidth;t=h.offsetHeight;var O=Math.max(0,A-(t/2));if(b.offsetHeight!=t){x(b).animate({height:t,top:O},v.resizeDuration,v.resizeEasing)}if(b.offsetWidth!=N){x(b).animate({width:N,marginLeft:-N/2},v.resizeDuration,v.resizeEasing)}x(b).queue(function(){x(I).css({width:N,top:O+t,marginLeft:-N/2,visibility:"hidden",display:""});x(h).css({display:"none",visibility:"",opacity:""}).fadeIn(v.imageFadeDuration,i)})}function i(){if(z>=0){x(K).show()}if(F>=0){x(d).show()}if(z>=0&&F>=0){x(l).show()}x(c).css("marginTop",-c.offsetHeight).animate({marginTop:0},v.captionAnimationDuration);I.style.visibility=""}function s(){m.onload=null;m.src=u.src=L.src=p;x([b,h,c]).stop(true);x([K,d,l,h,I]).hide()}function E(){if(H>=0){s();H=z=F=-1;x(b).hide();x(J).stop().fadeOut(v.overlayFadeDuration,k)}return false}})(jQuery);