var selectedNav = "", hoverNav = "", rightMargin = 0, width = 966;
var padding;

$(document).ready(function () {
    setNavigation();
});

function setNavigation() {
    selectedNav = $("#nav1 li ul li:has(a.selected)");
    if ($(selectedNav).parent().parent().hasClass("right2")) { rightMargin = 0; }

    if ($(selectedNav).html() != null) {
        $(selectedNav).parent().show();
        var navPosition = $(selectedNav).parent().parent().position();
        var subWidth = 0, subMargin = navPosition.left - 7;
        $(selectedNav).parent().parent().find("li").each(function () { subWidth += $(this).width(); });
        var subWidthThis = ($(selectedNav).parent().parent().width() / 2);
        var subWidthHalf = (subWidth / 2);
        if ((navPosition.left - subWidthHalf + subWidthThis) > 10 && (navPosition.left + subWidth) < width) { subMargin = navPosition.left + subWidthThis - subWidthHalf - 7; }
        else if ((navPosition.left + subWidth) > width) { subMargin = navPosition.left + $(selectedNav).parent().parent().width() - subWidth - 7; }
        $(selectedNav).parent().parent().find("a:nth-child(1)").addClass("topselected");
        $(selectedNav).parent().parent().find("ul a").removeClass("topselected");

        padding = rightMargin + subMargin;
        if (padding < 0) padding = 0;
        $(selectedNav).parent().parent().find("ul").css({ "padding-left": padding + "px" });
    }

    $("#nav1 li").hover(
        function () {
            if ($(this).hasClass("right")) { rightMargin = 0; } else { rightMargin = 0; }
            if ($(this).find("ul").size() > 0) {
                $(selectedNav).parent().hide();
                $(this).find("ul").show();
                var navPosition = $(this).position();
                var subWidth = 0, subMargin = navPosition.left - 7;
                $(this).find("li").each(function () { subWidth += $(this).width(); });
                var subWidthThis = ($(this).width() / 2);
                var subWidthHalf = (subWidth / 2);
                if ((navPosition.left - subWidthHalf + subWidthThis) > 10 && (navPosition.left + subWidth) < width) { subMargin = navPosition.left + subWidthThis - subWidthHalf - 7; }
                else if ((navPosition.left + subWidth) > width) { subMargin = navPosition.left + $(this).width() - subWidth - 7; }
                
                padding = rightMargin + subMargin;
                if (padding < 0) padding = 0;
                $(this).find("ul").css({ "padding-left": padding + "px" });
            }
            else {
                if ($(this).parent().has("ul").size() == 0) {
                    if ($(this).parent().has(".selected").size() == 0) {
                        $(this).parent().parent().find("a:nth-child(1)").addClass("hover");
                        $(this).parent().parent().find("ul a").removeClass("hover");
                        hoverNav = $(this).parent().parent();
                        $(selectedNav).parent().hide();
                    }
                } else {
                    $(selectedNav).parent().hide();
                }
            }
        },
        function () {
            $(hoverNav).find("a").removeClass("hover");
            if ($(this).find("ul").size() > 0) {
                $(this).find("ul").hide();
            }
            if ($(this).parent().find("ul").size() > 0) {
                $(selectedNav).parent().show();
            }
        }
    );
}
