/*	ColorBox v1.3.5 - a full featured, light-weight, customizable lightbox based on jQuery 1.3 */
(function(c){
    function r(b,d){
        d=d==="x"?m.width():m.height();
        return typeof b==="string"?Math.round(b.match(/%/)?d/100*parseInt(b,10):parseInt(b,10)):b
    }
    function N(b){
        b=c.isFunction(b)?b.call(i):b;
        return a.photo||b.match(/\.(gif|png|jpg|jpeg|bmp)(?:\?([^#]*))?(?:#(\.*))?$/i)
    }
    function Y(){
        for(var b in a)if(c.isFunction(a[b])&&b.substring(0,2)!=="on")a[b]=a[b].call(i)
    }
    function Z(b){
        c("object").hide();
        c("embed").hide();
        i=b;
        a=c(i).data(q);
        Y();
        var d=a.rel||i.rel;
        if(d&&d!=="nofollow"){
            h=c(".cboxElement").filter(function(){
                return(c(this).data(q).rel|| this.rel)===d
            });
            j=h.index(i);
            if(j<0){
                h=h.add(i);
                j=h.length-1
            }
        }else{
            h=c(i);
            j=0
        }
        if(!C){
            D=C=n;
            O=i;
            O.blur();
            c().bind("keydown.cbox_close",function(e){
                if(e.keyCode===27){
                    e.preventDefault();
                    f.close()
                }
            }).bind("keydown.cbox_arrows",function(e){
                if(h.length>1)if(e.keyCode===37){
                    e.preventDefault();
                    E.click()
                }else if(e.keyCode===39){
                    e.preventDefault();
                    F.click()
                }
            });
            a.overlayClose&&s.css({
                cursor:"pointer"
            }).one("click",f.close);
            c.event.trigger(aa);
            a.onOpen&&a.onOpen.call(i);
            s.css({
                opacity:a.opacity
            }).show();
            a.w= r(a.initialWidth,"x");
            a.h=r(a.initialHeight,"y");
            f.position(0);
            P&&m.bind("resize.cboxie6 scroll.cboxie6",function(){
                s.css({
                    width:m.width(),
                    height:m.height(),
                    top:m.scrollTop(),
                    left:m.scrollLeft()
                })
            }).trigger("scroll.cboxie6")
        }
        Q.add(E).add(F).add(t).add(H).hide();
        R.html(a.close).show();
        f.slideshow();
        f.load()
    }
    var q="colorbox",x="hover",n=true,f,y=!c.support.opacity,P=y&&!window.XMLHttpRequest,aa="cbox_open",I="cbox_load",S="cbox_complete",T="resize.cbox_resize",s,k,u,p,U,V,W,X,h,m,l,J,K,L,H,Q,t,F,E, R,z,A,v,w,i,O,j,a,C,D,$={
        transition:"elastic",
        speed:350,
        width:false,
        height:false,
        innerWidth:false,
        innerHeight:false,
        initialWidth:"400",
        initialHeight:"400",
        maxWidth:false,
        maxHeight:false,
        scalePhotos:n,
        scrolling:n,
        inline:false,
        html:false,
        iframe:false,
        photo:false,
        href:false,
        title:false,
        rel:false,
        opacity:0.9,
        preloading:n,
        current:"image {current} of {total}",
        previous:"previous",
        next:"next",
        close:"close",
        open:false,
        overlayClose:n,
        slideshow:false,
        slideshowAuto:n,
        slideshowSpeed:2500,
        slideshowStart:"start slideshow",
        slideshowStop:"stop slideshow",
        onOpen:false,
        onLoad:false,
        onComplete:false,
        onCleanup:false,
        onClosed:false
    };

    f=c.fn.colorbox=function(b,d){
        var e=this;


        if(!e.length)if(e.selector===""){
            e=c(e);
            b.open=n
        }else return this;
        e.each(function(){
            var g=c.extend({},c(this).data(q)?c(this).data(q):$,b);
            c(this).data(q,g).addClass("cboxElement");
            if(d)c(this).data(q).onComplete=d
        });
        b&&b.open&&Z(e);
        return this
    };

    f.init=function(){
        function b(d){
            return c('<div id="cbox'+d+'"/>')
        }
        m=c(window);
        k=c('<div id="colorbox"/>');
        s= b("Overlay").hide();
        u=b("Wrapper");
        p=b("Content").append(l=b("LoadedContent").css({
            width:0,
            height:0
        }),K=b("LoadingOverlay"),L=b("LoadingGraphic"),H=b("Title"),Q=b("Current"),t=b("Slideshow"),F=b("Next"),E=b("Previous"),R=b("Close"));
        u.append(c("<div/>").append(b("TopLeft"),U=b("TopCenter"),b("TopRight")),c("<div/>").append(V=b("MiddleLeft"),p,W=b("MiddleRight")),c("<div/>").append(b("BottomLeft"),X=b("BottomCenter"),b("BottomRight"))).children().children().css({
            "float":"left"
        });
        J=c("<div style='position:absolute; top:0; left:0; width:9999px; height:0;'/>");
        c("body").prepend(s,k.append(u,J));
        if(y){
            k.addClass("cboxIE");
            P&&s.css("position","absolute")
        }
        p.children().addClass(x).mouseover(function(){
            c(this).addClass(x)
        }).mouseout(function(){
            c(this).removeClass(x)
        });
        z=U.height()+X.height()+p.outerHeight(n)-p.height();
        A=V.width()+W.width()+p.outerWidth(n)-p.width();
        v=l.outerHeight(n);
        w=l.outerWidth(n);
        k.css({
            "padding-bottom":z,
            "padding-right":A
        }).hide();
        F.click(f.next);
        E.click(f.prev);
        R.click(f.close);
        p.children().removeClass(x);
        c(".cboxElement").live("click", function(d){
            if(d.button!==0&&typeof d.button!=="undefined")return n;
            else{
                Z(this);
                return false
            }
        })
    };

    f.position=function(b,d){
        function e(B){
            U[0].style.width=X[0].style.width=p[0].style.width=B.style.width;
            L[0].style.height=K[0].style.height=p[0].style.height=V[0].style.height=W[0].style.height=B.style.height
        }
        var g=m.height();
        g=Math.max(g-a.h-v-z,0)/2+m.scrollTop();
        var o=Math.max(document.documentElement.clientWidth-a.w-w-A,0)/2+m.scrollLeft();
        b=k.width()===a.w+w&&k.height()===a.h+v?0:b;
        u[0].style.width= u[0].style.height="9999px";
        k.dequeue().animate({
            width:a.w+w,
            height:a.h+v,
            top:g,
            left:o
        },{
            duration:b,
            complete:function(){
                e(this);
                D=false;
                u[0].style.width=a.w+w+A+"px";
                u[0].style.height=a.h+v+z+"px";
                d&&d()
            },
            step:function(){
                e(this)
            }
        })
    };

    f.resize=function(b){
        function d(){
            a.w=a.w||l.width();
            a.w=a.mw&&a.mw<a.w?a.mw:a.w;
            return a.w
        }
        function e(){
            a.h=a.h||l.height();
            a.h=a.mh&&a.mh<a.h?a.mh:a.h;
            return a.h
        }
        function g(G){
            f.position(G,function(){
                if(C){
                    if(y){
                        B&&l.fadeIn(100);
                        k[0].style.removeAttribute("filter")
                    }
                    if(a.iframe)l.append("<iframe id='cboxIframe'"+ (a.scrolling?" ":"scrolling='no'")+" name='iframe_"+(new Date).getTime()+"' frameborder=0 src='"+(a.href||i.href)+"' "+(y?"allowtransparency='true'":"")+" />");
                    l.show();
                    H.html(a.title||i.title);
                    H.show();
                    if(h.length>1){
                        Q.html(a.current.replace(/\{current\}/,j+1).replace(/\{total\}/,h.length)).show();
                        F.html(a.next).show();
                        E.html(a.previous).show();
                        a.slideshow&&t.show()
                    }
                    K.hide();
                    L.hide();
                    c.event.trigger(S);
                    a.onComplete&&a.onComplete.call(i);
                    a.transition==="fade"&&k.fadeTo(M,1,function(){
                        y&&k[0].style.removeAttribute("filter")
                    });
                    m.bind(T,function(){
                        f.position(0)
                    })
                }
            })
        }
        if(C){
            var o,B,M=a.transition==="none"?0:a.speed;
            m.unbind(T);
            if(b){
                l.remove();
                l=c('<div id="cboxLoadedContent"/>').html(b);
                l.hide().appendTo(J).css({
                    width:d(),
                    overflow:a.scrolling?"auto":"hidden"
                }).css({
                    height:e()
                }).prependTo(p);
                c("#cboxPhoto").css({
                    cssFloat:"none"
                });
                P&&c("select:not(#colorbox select)").filter(function(){
                    return this.style.visibility!=="hidden"
                }).css({
                    visibility:"hidden"
                }).one("cbox_cleanup",function(){
                    this.style.visibility="inherit"
                });
                a.transition=== "fade"&&k.fadeTo(M,0,function(){
                    g(0)
                })||g(M);
                if(a.preloading&&h.length>1){
                    b=j>0?h[j-1]:h[h.length-1];
                    o=j<h.length-1?h[j+1]:h[0];
                    o=c(o).data(q).href||o.href;
                    b=c(b).data(q).href||b.href;
                    N(o)&&c("<img />").attr("src",o);
                    N(b)&&c("<img />").attr("src",b)
                }
            }else setTimeout(function(){
                var G=l.wrapInner("<div style='overflow:auto'></div>").children();
                a.h=G.height();
                l.css({
                    height:a.h
                });
                G.replaceWith(G.children());
                f.position(M)
            },1)
        }
    };

    f.load=function(){
        var b,d,e,g=f.resize;
        D=n;
        i=h[j];
        a=c(i).data(q);
        Y();
        c.event.trigger(I);
        a.onLoad&&a.onLoad.call(i);
        a.h=a.height?r(a.height,"y")-v-z:a.innerHeight?r(a.innerHeight,"y"):false;
        a.w=a.width?r(a.width,"x")-w-A:a.innerWidth?r(a.innerWidth,"x"):false;
        a.mw=a.w;
        a.mh=a.h;
        if(a.maxWidth){
            a.mw=r(a.maxWidth,"x")-w-A;
            a.mw=a.w&&a.w<a.mw?a.w:a.mw
        }
        if(a.maxHeight){
            a.mh=r(a.maxHeight,"y")-v-z;
            a.mh=a.h&&a.h<a.mh?a.h:a.mh
        }
        b=a.href||c(i).attr("href");
        K.show();
        L.show();
        if(a.inline){
            c('<div id="cboxInlineTemp" />').hide().insertBefore(c(b)[0]).bind(I+" cbox_cleanup",function(){
                c(this).replaceWith(l.children())
            });
            g(c(b))
        }else if(a.iframe)g(" ");
        else if(a.html)g(a.html);
        else if(N(b)){
            d=new Image;
            d.onload=function(){
                var o;
                d.onload=null;
                d.id="cboxPhoto";
                c(d).css({
                    margin:"auto",
                    border:"none",
                    display:"block",
                    cssFloat:"left"
                });
                if(a.scalePhotos){
                    e=function(){
                        d.height-=d.height*o;
                        d.width-=d.width*o
                    };

                    if(a.mw&&d.width>a.mw){
                        o=(d.width-a.mw)/d.width;
                        e()
                    }
                    if(a.mh&&d.height>a.mh){
                        o=(d.height-a.mh)/d.height;
                        e()
                    }
                }
                if(a.h)d.style.marginTop=Math.max(a.h-d.height,0)/2+"px";
                g(d);
                h.length>1&&c(d).css({
                    cursor:"pointer"
                }).click(f.next);
                if(y)d.style.msInterpolationMode="bicubic"
            };

            d.src=b
        }else c("<div />").appendTo(J).load(b,function(o,B){
            B==="success"?g(this):g(c("<p>Request unsuccessful.</p>"))
        })
    };

    f.next=function(){
        if(!D){
            j=j<h.length-1?j+1:0;
            f.load()
        }
    };

    f.prev=function(){
        if(!D){
            j=j>0?j-1:h.length-1;
            f.load()
        }
    };

    f.slideshow=function(){
        function b(){
            t.text(a.slideshowStop).bind(S,function(){
                e=setTimeout(f.next,a.slideshowSpeed)
            }).bind(I,function(){
                clearTimeout(e)
            }).one("click",function(){
                d();
                c(this).removeClass(x)
            });
            k.removeClass(g+ "off").addClass(g+"on")
        }
        var d,e,g="cboxSlideshow_";
        t.bind("cbox_closed",function(){
            t.unbind();
            clearTimeout(e);
            k.removeClass(g+"off "+g+"on")
        });
        d=function(){
            clearTimeout(e);
            t.text(a.slideshowStart).unbind(S+" "+I).one("click",function(){
                b();
                e=setTimeout(f.next,a.slideshowSpeed);
                c(this).removeClass(x)
            });
            k.removeClass(g+"on").addClass(g+"off")
        };

        if(a.slideshow&&h.length>1)a.slideshowAuto?b():d()
    };

    f.close=function(){
        c.event.trigger("cbox_cleanup");
        a.onCleanup&&a.onCleanup.call(i);
        C=false;
        c().unbind("keydown.cbox_close keydown.cbox_arrows");
        m.unbind(T+" resize.cboxie6 scroll.cboxie6");
        s.css({
            cursor:"auto"
        }).fadeOut("fast");
        k.stop(n,false).fadeOut("fast",function(){
            l.remove();
            k.css({
                opacity:1
            });
            try{
                O.focus()
            }catch(b){}
            c.event.trigger("cbox_closed");
            a.onClosed&&a.onClosed.call(i)
        });
        c("object").show();
        c("embed").show();
    };

    f.element=function(){
        return c(i)
    };

    f.settings=$;
    c(f.init)
})(jQuery);
