//NOTE: THIS FILE SHOULD BE MINIFIED AND OBSFUCATED FOR PRODUCTION
//Ajax setup
$.ajaxSetup({
    type: "POST",
    contentType: "application/json; charset=utf-8",
    dataType: "json"
});
//--------------------------------------
//New books container functionality
//======================================
    function bestSellers() {
        var config = {
            over: enter,
            out: leave,
            interval: 200
        };
        function enter() { $(this).animate({ width: $(this).hasClass("t") ? '+=100px':'+=115px' }, 350, 'swing'); $(".slide-out", this).animate({ opacity: 1 }, 450, 'swing');}
        function leave() { $(this).animate({ width: $(this).hasClass("t") ? '-=100px':'-=115px' }, 350, 'swing'); $(".slide-out", this).animate({ opacity: 0.0 }, 450, 'swing'); }
        $(".books").hoverIntent(config);

        //Show next/prev buttons
        var a = $("#container-feat");
        var b = $("#middle-box");
        $(a).hover(function ()
        {
            $(".arrows").show();
        }, function ()
        {
            $(".arrows").hide()
        });

        $(b).hover(function ()
        {
            $(".arrows-talent").show();
        }, function ()
        {
            $(".arrows-talent").hide()
        });

        $(".books",a).hover(function ()
        {
            $(" .l-arrow",a).hide();
        }, function ()
        {
            $(" .l-arrow",a).show()
        });

        $(".books",b).hover(function ()
        {
            $(".l-arrow",b).hide();
        }, function ()
        {
            $(".l-arrow",b).show()
        });

        //middlebox fix

        boxFix();
        function boxFix ()
        {
            var height = $("#top-ten").height();
            var smallbox = $(".small-box").height();
            var middlebox = height - smallbox;
            $("#middle-box").css({height:middlebox - 23});

        }

    }

//--------------------------------------
//Globals
//======================================
    $(function ()
    {

        //Image enlargement
        $("img.expandable").click(function ()
        {
            var imgid = $(this).attr("imageId");
            $("#img-viewer").fadeIn("fast");
            $("#img-viewer .huge-img").attr("src", "/Media/Items/HugeImages/" + imgid + ".jpg");

        });
        $("#img-viewer").click(function ()
        {
            $(this).hide();
        });
        $("*").keydown(function ()
        {
            $("#img-viewer").hide();
        });
        $(".imgExp").fancybox();
    });
//--------------------------------------
//Book detail tabbed content
//======================================
    function bookDetailTabs()
    {
       
        var a = "#tab-strip li";

        $(a).click(function ()
        {
            var paneid = $(this).attr("paneid");
            $("#HiddenFieldTabs").attr("value",paneid);
            

            $(a).removeClass("tab-active");
            $(this).addClass("tab-active");

            $("#detail-bottom-container div[paneid]").hide();
            $("#detail-bottom-container div[paneid=" + paneid + "]").show();
        });
        $(".new-review").fancybox({
            'onStart': function ()
            {
                $("#fancybox-content").css("border","0px solid #FFF");
            }
        });

        $("#lbLogin").click(function ()
        {

            var email = $("#txtEmail").val();
            var password = $("#txtPass").val();
            $.ajax({
                url: "/ajax.asmx/LoginUser",
                data: "{email:'" + email + "',password:'" + password + "'}",
                success: function (msg)
                {
                    var resp = msg.d;

                    if (resp == "error")
                    {

                        $(".lblStatus").show();

                    }
                    else
                    {
                        $(".new-review").attr("href", "#review-form");
                        $(".new-review").trigger("click");
                        $("#LinkButtonLogin").text("Log Out");
                    }
                }
            });
        });
        var hasIbeenUsed = 0;
        $("#review-form").mousemove(function ()
        {
            if (hasIbeenUsed > 0)
                return;

            var id = window.location.pathname.replace("/books/", "");
            $.ajax({
                url: "/ajax.asmx/HasUserReviewedBefore",
                data: "{itemId:" + id + "}",
                success: function (msg)
                {
                    var resp = msg.d;

                    if (resp == "error")
                    {
                        $(".inner").prepend("<span style='color:red; text-decorate:italic;'>You have already posted a review for this book before. You may edit reviews within your account area.</span>");
                        $("#review-form :input").attr("disabled", "disabled"); 
                    }

                    hasIbeenUsed = 1;
                }
            });
        });
    }
    
function scrollDown()
        {
            var offset = $("#tab3").offset();
            scrollTo(0, offset.top);
        }
//--------------------------------------
//Ajax real time value availability
//======================================
function ajaxNameAvailability(method)
{
    var s = $("#txtEmail");
    var id = 0;
    var avail = $("#avail");
    var nAvail = $("#notAvail");
    var xhr;
    $(s).keyup(function ()
    {
        if (xhr != null) xhr.abort();
        xhr = $.ajax({
            url: "/ajax.asmx/" + method,
            data: "{search:'" + s.val() + "',id:'" + id + "'}",
            success: function (msg)
            {
                xhr = null;
                var resp = msg.d;
                if (resp == "0")
                {
                    $(".availImg").hide();
                    isValid = false;
                    nAvail.show();
                }
                else if (resp == "1")
                {
                    $(".availImg").hide();
                    isValid = true;
                    avail.show();
                }
            }
        });
    });
}
//asp.net custom validation
var isValid = true;
function nameValid(oSrc, args)
{
    args.IsValid = isValid;
    return;
}
//--------------------------------------
//Shopping Cart
//======================================
function ShoppingCart()
{
    $('#checkAll').toggle(
        function ()
        {
            $('input[type=checkbox]').attr('checked', 'checked');
        },
        function ()
        {
            $('input[type=checkbox]').attr('checked', '');
        }
    );
}
//--------------------------------------
//Payment
//======================================
function PaymentPage()
{
    $("input#chkPrePop").change(function ()
    {
        if ($(this).is(":checked"))
        {
            $("input[type=text]").each(function ()
            {
                $(this).val($(this).attr("data-value"));
            });
            return;
        }

        $("input[type=text]").each(function ()
        {
            $(this).val("");
        });
    });
}
function isTermsChecked(oSrc, args)
{
    args.IsValid = $("#chkTerms").is(':checked');
}
//--------------------------------------
//Contact Form
//======================================
function Contact()
{
    $("#ddlDepartment").change(function ()
    {
        var value = parseInt($(this).val());

        if (value === 2)
            $("#webError").show();
        else
            $("#webError").hide();
    });

    $("input, select, textarea").focus(function ()
    {
        $("#lblStatus").hide();
    });
}
//--------------------------------------
//Login
//======================================
function loginPage()
{

    $("#txtPassword").keyup(function (e)
    {
        var key = e.keyCode ? e.keyCode : e.which;

        if (key == 13)
            javascript: WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions("ctl00$ContentPlaceHolder1$btnLogin", "", true, "1", "", false, true));
    });
    $(".fancyWhite").fancybox({
        'onStart': function ()
        {
            $("#fancybox-content").css("border", "0px solid #FFF");
        },
        'onClosed': function()
        {
            $("#txtGetEmail").val("");
            $(".asp-val-red").hide();
            $(".status span").hide();
        }
    });
}

function isThisValid()
{
    if (Page_IsValid && $("#txtGetEmail").val().length > 0)
    {
        $("#login-loader").show();
        var email = $("#txtGetEmail").val();
        $("#txtGetEmail").val("");
        $.ajax({
            url: "/ajax.asmx/ResetPassword",
            data: "{email:'" + email + "'}",
            success: function (msg)
            {
                $("#login-loader").hide();
                inTransit = false;
                var r = msg.d;
                $(".status").html(r.label);

                if (r.status == "good")
                    inTransit = true;
            },
            error: function ()
            {
                $("#login-loader").hide();
            }
        });
        
    }
}
//--------------------------------------
//My Account
//======================================
function myAccount()
{
    reviewForm();
    $(".fancyWhite").fancybox({
        'onStart': function ()
        {
            $("#fancybox-content").css("border", "0px solid #FFF");
        }
    });

    function reviewForm()
    {
        $(".fancyWhite").click(function ()
        {

            $.ajax({
                url: '/pAccount/Reviews.aspx/ReviewDetail',
                data: "{ratingId:" + $(this).attr("ratingid") + "}",
                success: function (msg)
                {
                    var r = msg.d;
                    $.each(r, function (index, r)
                    {
                        $("#ddlRating").val(r.Score);
                        $("#review-form h1").text(r.Title);
                        $("#txtName").val(r.Handle);
                        $("#txtSubject").val(r.Subject);
                        $("#txtPro").val(r.Pro);
                        $("#txtCon").val(r.Con);
                        $("#txtThoughts").val(r.Thoughts);
                        $("#hdnId").attr("value",r.ID);
                    });
                }
            });
        });
    }
}
//--------------------------------------
//Fancybox
//======================================
; (function (b)
{
    var m, t, u, f, D, j, E, n, z, A, q = 0, e = {}, o = [], p = 0, d = {}, l = [], G = null, v = new Image, J = /\.(jpg|gif|png|bmp|jpeg)(.*)?$/i, W = /[^\.]\.(swf)\s*$/i, K, L = 1, y = 0, s = "", r, i, h = false, B = b.extend(b("<div/>")[0], { prop: 0 }), M = b.browser.msie && b.browser.version < 7 && !window.XMLHttpRequest, N = function () { t.hide(); v.onerror = v.onload = null; G && G.abort(); m.empty() }, O = function ()
    {
        if (false === e.onError(o, q, e)) { t.hide(); h = false } else
        {
            e.titleShow = false; e.width = "auto"; e.height = "auto"; m.html('<p id="fancybox-error">The requested content cannot be loaded.<br />Please try again later.</p>');
            F()
        } 
    }, I = function ()
    {
        var a = o[q], c, g, k, C, P, w; N(); e = b.extend({}, b.fn.fancybox.defaults, typeof b(a).data("fancybox") == "undefined" ? e : b(a).data("fancybox")); w = e.onStart(o, q, e); if (w === false) h = false; else
        {
            if (typeof w == "object") e = b.extend(e, w); k = e.title || (a.nodeName ? b(a).attr("title") : a.title) || ""; if (a.nodeName && !e.orig) e.orig = b(a).children("img:first").length ? b(a).children("img:first") : b(a); if (k === "" && e.orig && e.titleFromAlt) k = e.orig.attr("alt"); c = e.href || (a.nodeName ? b(a).attr("href") : a.href) || null; if (/^(?:javascript)/i.test(c) ||
c == "#") c = null; if (e.type) { g = e.type; if (!c) c = e.content } else if (e.content) g = "html"; else if (c) g = c.match(J) ? "image" : c.match(W) ? "swf" : b(a).hasClass("iframe") ? "iframe" : c.indexOf("#") === 0 ? "inline" : "ajax"; if (g)
            {
                if (g == "inline") { a = c.substr(c.indexOf("#")); g = b(a).length > 0 ? "inline" : "ajax" } e.type = g; e.href = c; e.title = k; if (e.autoDimensions) if (e.type == "html" || e.type == "inline" || e.type == "ajax") { e.width = "auto"; e.height = "auto" } else e.autoDimensions = false; if (e.modal)
                {
                    e.overlayShow = true; e.hideOnOverlayClick = false; e.hideOnContentClick =
false; e.enableEscapeButton = false; e.showCloseButton = false
                } e.padding = parseInt(e.padding, 10); e.margin = parseInt(e.margin, 10); m.css("padding", e.padding + e.margin); b(".fancybox-inline-tmp").unbind("fancybox-cancel").bind("fancybox-change", function () { b(this).replaceWith(j.children()) }); switch (g)
                {
                    case "html": m.html(e.content); F(); break; case "inline": if (b(a).parent().is("#fancybox-content") === true) { h = false; break } b('<div class="fancybox-inline-tmp" />').hide().insertBefore(b(a)).bind("fancybox-cleanup", function () { b(this).replaceWith(j.children()) }).bind("fancybox-cancel",
function () { b(this).replaceWith(m.children()) }); b(a).appendTo(m); F(); break; case "image": h = false; b.fancybox.showActivity(); v = new Image; v.onerror = function () { O() }; v.onload = function () { h = true; v.onerror = v.onload = null; e.width = v.width; e.height = v.height; b("<img />").attr({ id: "fancybox-img", src: v.src, alt: e.title }).appendTo(m); Q() }; v.src = c; break; case "swf": e.scrolling = "no"; C = '<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="' + e.width + '" height="' + e.height + '"><param name="movie" value="' + c +
'"></param>'; P = ""; b.each(e.swf, function (x, H) { C += '<param name="' + x + '" value="' + H + '"></param>'; P += " " + x + '="' + H + '"' }); C += '<embed src="' + c + '" type="application/x-shockwave-flash" width="' + e.width + '" height="' + e.height + '"' + P + "></embed></object>"; m.html(C); F(); break; case "ajax": h = false; b.fancybox.showActivity(); e.ajax.win = e.ajax.success; G = b.ajax(b.extend({}, e.ajax, { url: c, data: e.ajax.data || {}, error: function (x) { x.status > 0 && O() }, success: function (x, H, R)
{
    if ((typeof R == "object" ? R : G).status == 200)
    {
        if (typeof e.ajax.win ==
"function") { w = e.ajax.win(c, x, H, R); if (w === false) { t.hide(); return } else if (typeof w == "string" || typeof w == "object") x = w } m.html(x); F()
    } 
} 
})); break; case "iframe": Q()
                } 
            } else O()
        } 
    }, F = function ()
    {
        var a = e.width, c = e.height; a = a.toString().indexOf("%") > -1 ? parseInt((b(window).width() - e.margin * 2) * parseFloat(a) / 100, 10) + "px" : a == "auto" ? "auto" : a + "px"; c = c.toString().indexOf("%") > -1 ? parseInt((b(window).height() - e.margin * 2) * parseFloat(c) / 100, 10) + "px" : c == "auto" ? "auto" : c + "px"; m.wrapInner('<div style="width:' + a + ";height:" + c +
";overflow: " + (e.scrolling == "auto" ? "auto" : e.scrolling == "yes" ? "scroll" : "hidden") + ';position:relative;"></div>'); e.width = m.width(); e.height = m.height(); Q()
    }, Q = function ()
    {
        var a, c; t.hide(); if (f.is(":visible") && false === d.onCleanup(l, p, d)) { b.event.trigger("fancybox-cancel"); h = false } else
        {
            h = true; b(j.add(u)).unbind(); b(window).unbind("resize.fb scroll.fb"); b(document).unbind("keydown.fb"); f.is(":visible") && d.titlePosition !== "outside" && f.css("height", f.height()); l = o; p = q; d = e; if (d.overlayShow)
            {
                u.css({ "background-color": d.overlayColor,
                    opacity: d.overlayOpacity, cursor: d.hideOnOverlayClick ? "pointer" : "auto", height: b(document).height()
                }); if (!u.is(":visible")) { M && b("select:not(#fancybox-tmp select)").filter(function () { return this.style.visibility !== "hidden" }).css({ visibility: "hidden" }).one("fancybox-cleanup", function () { this.style.visibility = "inherit" }); u.show() } 
            } else u.hide(); i = X(); s = d.title || ""; y = 0; n.empty().removeAttr("style").removeClass(); if (d.titleShow !== false)
            {
                if (b.isFunction(d.titleFormat)) a = d.titleFormat(s, l, p, d); else a = s && s.length ?
d.titlePosition == "float" ? '<table id="fancybox-title-float-wrap" cellpadding="0" cellspacing="0"><tr><td id="fancybox-title-float-left"></td><td id="fancybox-title-float-main">' + s + '</td><td id="fancybox-title-float-right"></td></tr></table>' : '<div id="fancybox-title-' + d.titlePosition + '">' + s + "</div>" : false; s = a; if (!(!s || s === ""))
                {
                    n.addClass("fancybox-title-" + d.titlePosition).html(s).appendTo("body").show(); switch (d.titlePosition)
                    {
                        case "inside": n.css({ width: i.width - d.padding * 2, marginLeft: d.padding, marginRight: d.padding });
                            y = n.outerHeight(true); n.appendTo(D); i.height += y; break; case "over": n.css({ marginLeft: d.padding, width: i.width - d.padding * 2, bottom: d.padding }).appendTo(D); break; case "float": n.css("left", parseInt((n.width() - i.width - 40) / 2, 10) * -1).appendTo(f); break; default: n.css({ width: i.width - d.padding * 2, paddingLeft: d.padding, paddingRight: d.padding }).appendTo(f)
                    } 
                } 
            } n.hide(); if (f.is(":visible"))
            {
                b(E.add(z).add(A)).hide(); a = f.position(); r = { top: a.top, left: a.left, width: f.width(), height: f.height() }; c = r.width == i.width && r.height ==
i.height; j.fadeTo(d.changeFade, 0.3, function () { var g = function () { j.html(m.contents()).fadeTo(d.changeFade, 1, S) }; b.event.trigger("fancybox-change"); j.empty().removeAttr("filter").css({ "border-width": d.padding, width: i.width - d.padding * 2, height: e.autoDimensions ? "auto" : i.height - y - d.padding * 2 }); if (c) g(); else { B.prop = 0; b(B).animate({ prop: 1 }, { duration: d.changeSpeed, easing: d.easingChange, step: T, complete: g }) } })
            } else
            {
                f.removeAttr("style"); j.css("border-width", d.padding); if (d.transitionIn == "elastic")
                {
                    r = V(); j.html(m.contents());
                    f.show(); if (d.opacity) i.opacity = 0; B.prop = 0; b(B).animate({ prop: 1 }, { duration: d.speedIn, easing: d.easingIn, step: T, complete: S })
                } else { d.titlePosition == "inside" && y > 0 && n.show(); j.css({ width: i.width - d.padding * 2, height: e.autoDimensions ? "auto" : i.height - y - d.padding * 2 }).html(m.contents()); f.css(i).fadeIn(d.transitionIn == "none" ? 0 : d.speedIn, S) } 
            } 
        } 
    }, Y = function ()
    {
        if (d.enableEscapeButton || d.enableKeyboardNav) b(document).bind("keydown.fb", function (a)
        {
            if (a.keyCode == 27 && d.enableEscapeButton) { a.preventDefault(); b.fancybox.close() } else if ((a.keyCode ==
37 || a.keyCode == 39) && d.enableKeyboardNav && a.target.tagName !== "INPUT" && a.target.tagName !== "TEXTAREA" && a.target.tagName !== "SELECT") { a.preventDefault(); b.fancybox[a.keyCode == 37 ? "prev" : "next"]() } 
        }); if (d.showNavArrows) { if (d.cyclic && l.length > 1 || p !== 0) z.show(); if (d.cyclic && l.length > 1 || p != l.length - 1) A.show() } else { z.hide(); A.hide() } 
    }, S = function ()
    {
        if (!b.support.opacity) { j.get(0).style.removeAttribute("filter"); f.get(0).style.removeAttribute("filter") } e.autoDimensions && j.css("height", "auto"); f.css("height", "auto");
        s && s.length && n.show(); d.showCloseButton && E.show(); Y(); d.hideOnContentClick && j.bind("click", b.fancybox.close); d.hideOnOverlayClick && u.bind("click", b.fancybox.close); b(window).bind("resize.fb", b.fancybox.resize); d.centerOnScroll && b(window).bind("scroll.fb", b.fancybox.center); if (d.type == "iframe") b('<iframe id="fancybox-frame" name="fancybox-frame' + (new Date).getTime() + '" frameborder="0" hspace="0" ' + (b.browser.msie ? 'allowtransparency="true""' : "") + ' scrolling="' + e.scrolling + '" src="' + d.href + '"></iframe>').appendTo(j);
        f.show(); h = false; b.fancybox.center(); d.onComplete(l, p, d); var a, c; if (l.length - 1 > p) { a = l[p + 1].href; if (typeof a !== "undefined" && a.match(J)) { c = new Image; c.src = a } } if (p > 0) { a = l[p - 1].href; if (typeof a !== "undefined" && a.match(J)) { c = new Image; c.src = a } } 
    }, T = function (a)
    {
        var c = { width: parseInt(r.width + (i.width - r.width) * a, 10), height: parseInt(r.height + (i.height - r.height) * a, 10), top: parseInt(r.top + (i.top - r.top) * a, 10), left: parseInt(r.left + (i.left - r.left) * a, 10) }; if (typeof i.opacity !== "undefined") c.opacity = a < 0.5 ? 0.5 : a; f.css(c);
        j.css({ width: c.width - d.padding * 2, height: c.height - y * a - d.padding * 2 })
    }, U = function () { return [b(window).width() - d.margin * 2, b(window).height() - d.margin * 2, b(document).scrollLeft() + d.margin, b(document).scrollTop() + d.margin] }, X = function ()
    {
        var a = U(), c = {}, g = d.autoScale, k = d.padding * 2; c.width = d.width.toString().indexOf("%") > -1 ? parseInt(a[0] * parseFloat(d.width) / 100, 10) : d.width + k; c.height = d.height.toString().indexOf("%") > -1 ? parseInt(a[1] * parseFloat(d.height) / 100, 10) : d.height + k; if (g && (c.width > a[0] || c.height > a[1])) if (e.type ==
"image" || e.type == "swf") { g = d.width / d.height; if (c.width > a[0]) { c.width = a[0]; c.height = parseInt((c.width - k) / g + k, 10) } if (c.height > a[1]) { c.height = a[1]; c.width = parseInt((c.height - k) * g + k, 10) } } else { c.width = Math.min(c.width, a[0]); c.height = Math.min(c.height, a[1]) } c.top = parseInt(Math.max(a[3] - 20, a[3] + (a[1] - c.height - 40) * 0.5), 10); c.left = parseInt(Math.max(a[2] - 20, a[2] + (a[0] - c.width - 40) * 0.5), 10); return c
    }, V = function ()
    {
        var a = e.orig ? b(e.orig) : false, c = {}; if (a && a.length)
        {
            c = a.offset(); c.top += parseInt(a.css("paddingTop"),
10) || 0; c.left += parseInt(a.css("paddingLeft"), 10) || 0; c.top += parseInt(a.css("border-top-width"), 10) || 0; c.left += parseInt(a.css("border-left-width"), 10) || 0; c.width = a.width(); c.height = a.height(); c = { width: c.width + d.padding * 2, height: c.height + d.padding * 2, top: c.top - d.padding - 20, left: c.left - d.padding - 20}
        } else { a = U(); c = { width: d.padding * 2, height: d.padding * 2, top: parseInt(a[3] + a[1] * 0.5, 10), left: parseInt(a[2] + a[0] * 0.5, 10)} } return c
    }, Z = function () { if (t.is(":visible")) { b("div", t).css("top", L * -40 + "px"); L = (L + 1) % 12 } else clearInterval(K) };
    b.fn.fancybox = function (a) { if (!b(this).length) return this; b(this).data("fancybox", b.extend({}, a, b.metadata ? b(this).metadata() : {})).unbind("click.fb").bind("click.fb", function (c) { c.preventDefault(); if (!h) { h = true; b(this).blur(); o = []; q = 0; c = b(this).attr("rel") || ""; if (!c || c == "" || c === "nofollow") o.push(this); else { o = b("a[rel=" + c + "], area[rel=" + c + "]"); q = o.index(this) } I() } }); return this }; b.fancybox = function (a, c)
    {
        var g; if (!h)
        {
            h = true; g = typeof c !== "undefined" ? c : {}; o = []; q = parseInt(g.index, 10) || 0; if (b.isArray(a))
            {
                for (var k =
0, C = a.length; k < C; k++) if (typeof a[k] == "object") b(a[k]).data("fancybox", b.extend({}, g, a[k])); else a[k] = b({}).data("fancybox", b.extend({ content: a[k] }, g)); o = jQuery.merge(o, a)
            } else { if (typeof a == "object") b(a).data("fancybox", b.extend({}, g, a)); else a = b({}).data("fancybox", b.extend({ content: a }, g)); o.push(a) } if (q > o.length || q < 0) q = 0; I()
        } 
    }; b.fancybox.showActivity = function () { clearInterval(K); t.show(); K = setInterval(Z, 66) }; b.fancybox.hideActivity = function () { t.hide() }; b.fancybox.next = function ()
    {
        return b.fancybox.pos(p +
1)
    }; b.fancybox.prev = function () { return b.fancybox.pos(p - 1) }; b.fancybox.pos = function (a) { if (!h) { a = parseInt(a); o = l; if (a > -1 && a < l.length) { q = a; I() } else if (d.cyclic && l.length > 1) { q = a >= l.length ? 0 : l.length - 1; I() } } }; b.fancybox.cancel = function () { if (!h) { h = true; b.event.trigger("fancybox-cancel"); N(); e.onCancel(o, q, e); h = false } }; b.fancybox.close = function ()
    {
        function a() { u.fadeOut("fast"); n.empty().hide(); f.hide(); b.event.trigger("fancybox-cleanup"); j.empty(); d.onClosed(l, p, d); l = e = []; p = q = 0; d = e = {}; h = false } if (!(h || f.is(":hidden")))
        {
            h =
true; if (d && false === d.onCleanup(l, p, d)) h = false; else
            {
                N(); b(E.add(z).add(A)).hide(); b(j.add(u)).unbind(); b(window).unbind("resize.fb scroll.fb"); b(document).unbind("keydown.fb"); j.find("iframe").attr("src", M && /^https/i.test(window.location.href || "") ? "javascript:void(false)" : "about:blank"); d.titlePosition !== "inside" && n.empty(); f.stop(); if (d.transitionOut == "elastic")
                {
                    r = V(); var c = f.position(); i = { top: c.top, left: c.left, width: f.width(), height: f.height() }; if (d.opacity) i.opacity = 1; n.empty().hide(); B.prop = 1;
                    b(B).animate({ prop: 0 }, { duration: d.speedOut, easing: d.easingOut, step: T, complete: a })
                } else f.fadeOut(d.transitionOut == "none" ? 0 : d.speedOut, a)
            } 
        } 
    }; b.fancybox.resize = function () { u.is(":visible") && u.css("height", b(document).height()); b.fancybox.center(true) }; b.fancybox.center = function (a)
    {
        var c, g; if (!h)
        {
            g = a === true ? 1 : 0; c = U(); !g && (f.width() > c[0] || f.height() > c[1]) || f.stop().animate({ top: parseInt(Math.max(c[3] - 20, c[3] + (c[1] - j.height() - 40) * 0.5 - d.padding)), left: parseInt(Math.max(c[2] - 20, c[2] + (c[0] - j.width() - 40) * 0.5 -
d.padding))
            }, typeof a == "number" ? a : 200)
        } 
    }; b.fancybox.init = function ()
    {
        if (!b("#fancybox-wrap").length)
        {
            b("form").append(m = b('<div id="fancybox-tmp"></div>'), t = b('<div id="fancybox-loading"><div></div></div>'), u = b('<div id="fancybox-overlay"></div>'), f = b('<div id="fancybox-wrap"></div>')); D = b('<div id="fancybox-outer"></div>').append('<div class="fancybox-bg" id="fancybox-bg-n"></div><div class="fancybox-bg" id="fancybox-bg-ne"></div><div class="fancybox-bg" id="fancybox-bg-e"></div><div class="fancybox-bg" id="fancybox-bg-se"></div><div class="fancybox-bg" id="fancybox-bg-s"></div><div class="fancybox-bg" id="fancybox-bg-sw"></div><div class="fancybox-bg" id="fancybox-bg-w"></div><div class="fancybox-bg" id="fancybox-bg-nw"></div>').appendTo(f);
            D.append(j = b('<div id="fancybox-content"></div>'), E = b('<a id="fancybox-close"></a>'), n = b('<div id="fancybox-title"></div>'), z = b('<a href="javascript:;" id="fancybox-left"><span class="fancy-ico" id="fancybox-left-ico"></span></a>'), A = b('<a href="javascript:;" id="fancybox-right"><span class="fancy-ico" id="fancybox-right-ico"></span></a>')); E.click(b.fancybox.close); t.click(b.fancybox.cancel); z.click(function (a) { a.preventDefault(); b.fancybox.prev() }); A.click(function (a) { a.preventDefault(); b.fancybox.next() });
            b.fn.mousewheel && f.bind("mousewheel.fb", function (a, c) { if (h) a.preventDefault(); else if (b(a.target).get(0).clientHeight == 0 || b(a.target).get(0).scrollHeight === b(a.target).get(0).clientHeight) { a.preventDefault(); b.fancybox[c > 0 ? "prev" : "next"]() } }); b.support.opacity || f.addClass("fancybox-ie"); if (M) { t.addClass("fancybox-ie6"); f.addClass("fancybox-ie6"); b('<iframe id="fancybox-hide-sel-frame" src="' + (/^https/i.test(window.location.href || "") ? "javascript:void(false)" : "about:blank") + '" scrolling="no" border="0" frameborder="0" tabindex="-1"></iframe>').prependTo(D) } 
        } 
    };
    b.fn.fancybox.defaults = { padding: 10, margin: 40, opacity: false, modal: false, cyclic: false, scrolling: "auto", width: 560, height: 340, autoScale: true, autoDimensions: true, centerOnScroll: false, ajax: {}, swf: { wmode: "transparent" }, hideOnOverlayClick: true, hideOnContentClick: false, overlayShow: true, overlayOpacity: 0.7, overlayColor: "#777", titleShow: true, titlePosition: "float", titleFormat: null, titleFromAlt: false, transitionIn: "fade", transitionOut: "fade", speedIn: 300, speedOut: 300, changeSpeed: 300, changeFade: "fast", easingIn: "swing",
        easingOut: "swing", showCloseButton: true, showNavArrows: true, enableEscapeButton: true, enableKeyboardNav: true, onStart: function () { }, onCancel: function () { }, onComplete: function () { }, onCleanup: function () { }, onClosed: function () { }, onError: function () { } 
    }; b(document).ready(function () { b.fancybox.init() })
})(jQuery);
