/*	ColorBox v1.3.6 - 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 M(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);
        a.rel = a.rel || i.rel;
        a.href = a.href || i.href;
        a.title = a.title || i.title
    }

    function Z(b) {
        i = b;
        a = c.extend({}, c(i).data(q));
        Y();
        if (a.rel && a.rel !== "nofollow") {
            g = c(".cboxElement").filter(function() {
                return(c(this).data(q).rel || this.rel) === a.rel
            });
            j = g.index(i);
            if (j < 0) {
                g = g.add(i);
                j = g.length - 1
            }
        } else {
            g = c(i);
            j = 0
        }
        if (!B) {
            C = B = n;
            N = i;
            N.blur();
            c(document).bind("keydown.cbox_close", function(d) {
                if (d.keyCode === 27) {
                    d.preventDefault();
                    e.close()
                }
            }).bind("keydown.cbox_arrows", function(d) {
                if (g.length > 1)if (d.keyCode === 37) {
                    d.preventDefault();
                    D.click()
                } else if (d.keyCode === 39) {
                    d.preventDefault();
                    E.click()
                }
            });
            a.overlayClose && s.css({cursor:"pointer"}).one("click", e.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");
            e.position(0);
            O && m.bind("resize.cboxie6 scroll.cboxie6", function() {
                s.css({width:m.width(),height:m.height(),top:m.scrollTop(),left:m.scrollLeft()})
            }).trigger("scroll.cboxie6")
        }
        P.add(D).add(E).add(t).add(Q).hide();
        R.html(a.close).show();
        e.slideshow();
        e.load()
    }

    var q = "colorbox",F = "hover",n = true,e,x = c.browser.msie && !c.support.opacity,O = x && c.browser.version < 7,aa = "cbox_open",H = "cbox_load",S = "cbox_complete",T = "resize.cbox_resize",s,k,u,p,U,V,W,X,g,m,l,I,J,K,Q,P,t,E,D,R,y,z,v,w,i,N,j,a,B,C,$ = {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};
    e = c.fn.colorbox = function(b, d) {
        var h = this;
        if (!h.length)if (h.selector === "") {
            h = c("<a/>");
            b.open = n
        } else return this;
        h.each(function() {
            var f = c.extend({}, c(this).data(q) ? c(this).data(q) : $, b);
            c(this).data(q, f).addClass("cboxElement");
            if (d)c(this).data(q).onComplete = d
        });
        b && b.open && Z(h);
        return this
    };
    e.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}), J = b("LoadingOverlay"), K = b("LoadingGraphic"), Q = b("Title"), P = b("Current"), t = b("Slideshow"), E = b("Next"), D = 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"});
        I = c("<div style='position:absolute; top:0; left:0; width:9999px; height:0;'/>");
        c("body").prepend(s, k.append(u, I));
        if (x) {
            k.addClass("cboxIE");
            O && s.css("position", "absolute")
        }
        p.children().bind("mouseover mouseout", function() {
            c(this).toggleClass(F)
        }).addClass(F);
        y = U.height() + X.height() + p.outerHeight(n) - p.height();
        z = V.width() + W.width() + p.outerWidth(n) - p.width();
        v = l.outerHeight(n);
        w = l.outerWidth(n);
        k.css({"padding-bottom":y,"padding-right":z}).hide();
        E.click(e.next);
        D.click(e.prev);
        R.click(e.close);
        p.children().removeClass(F);
        c(".cboxElement").live("click", function(d) {
            if (d.button !== 0 && typeof d.button !== "undefined")return n; else {
                Z(this);
                return false
            }
        })
    };
    e.position = function(b, d) {
        function h(A) {
            U[0].style.width = X[0].style.width = p[0].style.width = A.style.width;
            K[0].style.height = J[0].style.height = p[0].style.height = V[0].style.height = W[0].style.height = A.style.height
        }

        var f = m.height();
        f = Math.max(f - a.h - v - y, 0) / 2 + m.scrollTop();
        var o = Math.max(document.documentElement.clientWidth - a.w - w - z, 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:f,left:o}, {duration:b,complete:function() {
            h(this);
            C = false;
            u[0].style.width = a.w + w + z + "px";
            u[0].style.height = a.h + v + y + "px";
            d && d()
        },step:function() {
            h(this)
        }})
    };
    e.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 h() {
            a.h = a.h || l.height();
            a.h = a.mh && a.mh < a.h ? a.mh : a.h;
            return a.h
        }

        function f(G) {
            e.position(G, function() {
                if (B) {
                    if (x) {
                        A && 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 + "' " + (x ? "allowtransparency='true'" : "") + " />");
                    l.show();
                    Q.show().html(a.title);
                    if (g.length > 1) {
                        P.html(a.current.replace(/\{current\}/, j + 1).replace(/\{total\}/, g.length)).show();
                        E.html(a.next).show();
                        D.html(a.previous).show();
                        a.slideshow && t.show()
                    }
                    J.hide();
                    K.hide();
                    c.event.trigger(S);
                    a.onComplete && a.onComplete.call(i);
                    a.transition === "fade" && k.fadeTo(L, 1, function() {
                        x && k[0].style.removeAttribute("filter")
                    });
                    m.bind(T, function() {
                        e.position(0)
                    })
                }
            })
        }

        if (B) {
            var o,A,L = a.transition === "none" ? 0 : a.speed;
            m.unbind(T);
            if (b) {
                l.remove();
                l = c('<div id="cboxLoadedContent"/>').html(b);
                l.hide().appendTo(I).css({width:d(),overflow:a.scrolling ? "auto" : "hidden"}).css({height:h()}).prependTo(p);
                c("#cboxPhoto").css({cssFloat:"none"});
                O && 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(L, 0, function() {
                    f(0)
                }) || f(L);
                if (a.preloading && g.length > 1) {
                    b = j > 0 ? g[j - 1] : g[g.length - 1];
                    o = j < g.length - 1 ? g[j + 1] : g[0];
                    o = c(o).data(q).href || o.href;
                    b = c(b).data(q).href || b.href;
                    M(o) && c("<img />").attr("src", o);
                    M(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());
                e.position(L)
            }, 1)
        }
    };
    e.load = function() {
        var b,d,h,f = e.resize;
        C = n;
        i = g[j];
        a = c.extend({}, c(i).data(q));
        Y();
        c.event.trigger(H);
        a.onLoad && a.onLoad.call(i);
        a.h = a.height ? r(a.height, "y") - v - y : a.innerHeight ? r(a.innerHeight, "y") : false;
        a.w = a.width ? r(a.width, "x") - w - z : 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 - z;
            a.mw = a.w && a.w < a.mw ? a.w : a.mw
        }
        if (a.maxHeight) {
            a.mh = r(a.maxHeight, "y") - v - y;
            a.mh = a.h && a.h < a.mh ? a.h : a.mh
        }
        b = a.href;
        J.show();
        K.show();
        if (a.inline) {
            c('<div id="cboxInlineTemp" />').hide().insertBefore(c(b)[0]).bind(H + " cbox_cleanup", function() {
                c(this).replaceWith(l.children())
            });
            f(c(b))
        } else if (a.iframe)f(" "); else if (a.html)f(a.html); else if (M(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) {
                    h = 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;
                        h()
                    }
                    if (a.mh && d.height > a.mh) {
                        o = (d.height - a.mh) / d.height;
                        h()
                    }
                }
                if (a.h)d.style.marginTop = Math.max(a.h - d.height, 0) / 2 + "px";
                f(d);
                g.length > 1 && c(d).css({cursor:"pointer"}).click(e.next);
                if (x)d.style.msInterpolationMode = "bicubic"
            };
            d.src = b
        } else c("<div />").appendTo(I).load(b, function(o, A) {
            A === "success" ? f(this) : f(c("<p>Request unsuccessful.</p>"))
        })
    };
    e.next = function() {
        if (!C) {
            j = j < g.length - 1 ? j + 1 : 0;
            e.load()
        }
    };
    e.prev = function() {
        if (!C) {
            j = j > 0 ? j - 1 : g.length - 1;
            e.load()
        }
    };
    e.slideshow = function() {
        function b() {
            t.text(a.slideshowStop).bind(S, function() {
                h = setTimeout(e.next, a.slideshowSpeed)
            }).bind(H, function() {
                clearTimeout(h)
            }).one("click", function() {
                d();
                c(this).removeClass(F)
            });
            k.removeClass(f + "off").addClass(f + "on")
        }

        var d,h,f = "cboxSlideshow_";
        t.bind("cbox_closed", function() {
            t.unbind();
            clearTimeout(h);
            k.removeClass(f + "off " + f + "on")
        });
        d = function() {
            clearTimeout(h);
            t.text(a.slideshowStart).unbind(S + " " + H).one("click", function() {
                b();
                h = setTimeout(e.next, a.slideshowSpeed);
                c(this).removeClass(F)
            });
            k.removeClass(f + "on").addClass(f + "off")
        };
        if (a.slideshow && g.length > 1)a.slideshowAuto ? b() : d()
    };
    e.close = function() {
        c.event.trigger("cbox_cleanup");
        a.onCleanup && a.onCleanup.call(i);
        B = false;
        c(document).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() {
            c("#colorbox iframe").attr("src", "about:blank");
            l.remove();
            k.css({opacity:1});
            try {
                N.focus()
            } catch(b) {
            }
            c.event.trigger("cbox_closed");
            a.onClosed && a.onClosed.call(i)
        })
    };
    e.element = function() {
        return c(i)
    };
    e.settings = $;
    c(e.init)
})(jQuery);