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

// AUTOLOAD CODE BLOCK (MAY BE CHANGED OR REMOVED)
jQuery(function($) {
	$("a[rel^='lightbox']").slimbox({/* Put custom options here */}, null, function(el) {
		if ($(this).attr('recipeLink')) {
			var alias = '/recipes/'+ $(this).attr('recipeLink') + '/';
			$('#lbRecepi').css('display', 'block');
			$('#lbRecepi a').attr('href', alias);
		}
		else {
			$('#lbRecepi').css('display', 'none');
		}
		return (this == el) || ((this.rel.length > 8) && (this.rel == el.rel));
	});
});
