/*
        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;
 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],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:"Bild {x} von {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) {
                return (this == el) || ((this.rel.length > 8) && (this.rel == el.rel));
        });
});
