﻿var menuCloseTimeout;
var menuIndex;
var featureArticleInterval;
var featureArticleTimeout;
var featureArticleIndex;
$(document).ready(function() {
    $(".topMenu li").hover(
        function() {
            var index = $(".topMenu li").index(this);
            if (menuIndex != index) {
                resetFeatureArticle(index);
            }
            menuIndex = index;
            var dynamicContent = $("#topmenu_content .dynamiccontent:eq(" + index + ")");
            showDynamicContent(index, menuCloseTimeout);
            clearTimeout(menuCloseTimeout);
            $(".topMenu li").removeClass("active");
            $(this).addClass("active");
            $(".Searchview").addClass("hidden");
        },
        function() {
            var index = $(".topMenu li").index(this);
            var dynamicContent = $("#topmenu_content .dynamiccontent:eq(" + index + ")");
            setMenuCloseTimeout(index);
        }
    );
    $("#topmenu_content .dynamiccontent").hover(
        function() {
            var index = $("#topmenu_content .dynamiccontent").index(this);
            clearTimeout(menuCloseTimeout);
        },
        function() {
            var index = $("#topmenu_content .dynamiccontent").index(this);
            setMenuCloseTimeout(index);
        }
    );
});
$.fn.equalHeights = function() {
    $(this).each(function() {
        var currentTallest = 0;
        $(this).children().each(function(i) {
            if ($(this).height() > currentTallest) { currentTallest = $(this).height(); }
        });
        // for ie6, set height since min-height isn't supported
        if ($.browser.msie && $.browser.version == 6.0) { $(this).children().css({ 'height': currentTallest }); }
        $(this).children().css({ 'min-height': currentTallest });
    });
    return this;
};

function resetFeatureArticle(index) {
    clearFeatureArticle();
    $("#topmenu_content .dynamiccontent:eq(" + index + ") .featurearticle:eq(" + featureArticleIndex + ")").show();
    if ($("#topmenu_content .dynamiccontent:eq(" + index + ") .featurearticle").size() > 1) {
        featureArticleInterval = setInterval(function() {
            var oldFeatureArticle = $("#topmenu_content .dynamiccontent:eq(" + index + ") .featurearticle:eq(" + featureArticleIndex + ")");
            featureArticleIndex += 1;
            if (featureArticleIndex > $("#topmenu_content .dynamiccontent:eq(" + index + ") .featurearticle").size() - 1)
                featureArticleIndex = 0;
            oldFeatureArticle.fadeOut("slow", function() {
                $("#topmenu_content .dynamiccontent:eq(" + index + ") .featurearticle:eq(" + featureArticleIndex + ")").fadeIn("slow")
            });
        }, 5000);
    }
}
function clearFeatureArticle() {
    clearInterval(featureArticleInterval);
    $("#topmenu_content .dynamiccontent .featurearticle").hide();
    featureArticleIndex = 0;
}

function setMenuCloseTimeout(index) {
    menuCloseTimeout = setTimeout(function() {
        $("#topmenu_content .dynamiccontent").hide();
        $(".topMenu li").removeClass("active");
        $(".Searchview").removeClass("hidden");
        menuCloseTimeout = false;
        clearFeatureArticle();
        menuIndex = -1;
    }, 20);
}

function showDynamicContent(index, instant) {
    var dynamicContent = $("#topmenu_content .dynamiccontent:eq(" + index + ")");

    var dynamicContentMenues = $("#topmenu_content .dynamiccontent:eq(" + index + ") .contentlist li").length;
    var dynamicContentArticles = $("#topmenu_content .dynamiccontent:eq(" + index + ") .featurearticles .featurearticle").length;

    if ((dynamicContentMenues > 0) || (dynamicContentArticles > 0)) {

        var mw = $(".topMenu li:eq(" + index + ")").outerWidth() / 2;
        var l = $(".topMenu li:eq(" + index + ")").position().left;

        var arrowLeft = l + mw - 11;

        var arrow = $("#topmenu_content .dynamiccontent:eq(" + index + ") .downarrow");
        arrow.css("left", arrowLeft);

        dynamicContent.show(hideDynamicContent(index, true));
        $(".dynamiccontent .contentlist").equalHeights();
    }
    else {
        var numMenus = $("#topmenu_content .dynamiccontent").length;

        for (var i = 0; i < numMenus; i++) {
            dynamicContent = $("#topmenu_content .dynamiccontent:eq(" + i + ")");
            dynamicContent.hide();
        }
    }
    //    if (instant) {
//        dynamicContent.show(hideDynamicContent(index, instant));
//    } else {
//        dynamicContent.fadeIn("slow", hideDynamicContent(index));
//    }
}
function hideDynamicContent(index, instant) {
    if (instant) {
        $("#topmenu_content .dynamiccontent:not(:eq(" + index + "))").hide();
    } else {
        $("#topmenu_content .dynamiccontent:not(:eq(" + index + "))").hide();
    }
}


