﻿jQuery(document).ready(function () {

    var megaMenuTimeOut = 0;
    jQuery('.MMD_MegaContainer .MMD_ContentContainer .MMD_Background .MMD_MainContent.1').addClass('current');
    jQuery('.MMD_MegaContainer .MMD_Menu .MMD_Sort a.1').addClass('selected');

    jQuery('a#OpenProductsMegaMenu').hover(function () {
        jQuery(this).addClass('MegaMenu')
        jQuery('#ProductsMegaMenu').show();
        loadCurrentItems(1);
    }, function () {
        megaMenuTimeOut = setTimeout('clearMegaMenu()', 50);
    });

    jQuery('#ProductsMegaMenu').hover(function () {
        clearTimeout(megaMenuTimeOut);
    }, function () {
        clearMegaMenu();
    });

    /* Öppnar de olika kategorierna */
    jQuery('.MMD_Sort a').click(function () {
        this.blur();
        if (!jQuery(this).hasClass('selected')) {
            var menu = jQuery(this).parents('.MMD_MegaContainer');
            var number = jQuery(this).attr('class');
            jQuery(menu).find('.MMD_Menu a').removeClass('selected');
            jQuery(menu).find('.MMD_Background').removeClass('Single');
            jQuery(menu).find('.MMD_MainContent').removeClass('current');
            jQuery(menu).find('.MMD_AlphabetShowAll').hide();

            jQuery(menu).find('.MMD_MainContent.' + number).addClass('current');
            var has = jQuery(menu).find('.MMD_MainContent.' + number).find('.MMD_AlphabetMenu');
            if (has.length > 0) {
                jQuery(menu).find('.MMD_Background').addClass('Single');
                jQuery(menu).find('.MMD_AlphabetShowAll').show();
            }

            jQuery(this).addClass('selected');
            loadCurrentItems(parseInt(number));
        }
        return false;
    });

    /* Öppnar de olika undermenyerna för bokstäver under användningsområde */
    jQuery('.MMD_AlphabetMenu a').click(function () {
        this.blur();
        if (!jQuery(this).hasClass('selected')) {
            var menu = jQuery(this).parents('.MMD_AlphabetMenu').parent();
            var letter = jQuery(this).attr('class');
            jQuery(menu).find('.MMD_AlphabetMenu a').removeClass('selected');
            jQuery(menu).find('.MMD_AlphabetList div').removeClass('current');

            jQuery(menu).find('.MMD_AlphabetList div.' + letter).addClass('current');
            jQuery(this).addClass('selected');
            loadCurrentItems(3);
        }
        return false;
    });

    /* Öppnar listan med alla produkter */
    jQuery('.MMD_AlphabetShowAll a').click(function () {
        this.blur();
        var menu = jQuery(this).parents('.MMD_MegaContainer');
        var id = jQuery(menu).attr('id');
        jQuery('.ND_MainNavigation a#Open' + id).addClass('MegaMenuList');
        jQuery('#' + id).hide();
        jQuery('#' + id + 'List').show();
        var lang = jQuery('#currentlanguage').val();
        Pyramid.WebSite.Services.MegaMenuService.GetAllProducts(lang, function (result) {
            jQuery('#' + id + 'List').find('.MMD_ListContent').css('background', 'none').html(result);
        });

        return false;
    });

    /* Stänger listan med alla produkter */
    jQuery('.MMD_ListClose a').click(function () {
        this.blur();
        var menu = jQuery(this).parents('.MMD_MegaContainer');
        var id = jQuery(menu).attr('id');
        jQuery('#' + id).hide();
        var shortId = id.replace('List', '');
        jQuery('.ND_MainNavigation a#Open' + shortId).removeClass('MegaMenuList').addClass('MegaMenu');
        jQuery('#' + shortId).show();
        return false;
    });

});

function clearMegaMenu() {
    jQuery('.ND_MainNavigation a').removeClass('MegaMenu')
    jQuery('.MMD_MegaContainer:not([class~="List"])').hide();
}
function loadCurrentItems(number) {
    var lang = jQuery('#currentlanguage').val();
    switch (number) {
        case 1:
            var category = jQuery('#ProductsMegaMenu').find('.MMD_MainContent.1');
            if (jQuery(category).is(':empty')) {
                Pyramid.WebSite.Services.MegaMenuService.LoadCategories(lang, function (result) {
                    jQuery(category).css('background','none').html(result);
                });
            }
            break;

        case 2:
            var category = jQuery('#ProductsMegaMenu').find('.MMD_MainContent.2');
            if (jQuery(category).is(':empty')) {
                Pyramid.WebSite.Services.MegaMenuService.LoadUsageAreas(lang, function (result) {
                    jQuery(category).css('background', 'none').html(result);
                });
            }
            break;

        case 3:
            var letterMain = jQuery('#ProductsMegaMenu').find('.MMD_MainContent.3');
            jQuery(letterMain).css('background', 'none');
            var letterDiv = jQuery(letterMain).find('.current');
            if (jQuery(letterDiv).is(':empty')) {
                var letter = jQuery(letterDiv).attr('class').split(' ');
                Pyramid.WebSite.Services.MegaMenuService.GetProducts(letter[0], lang, function (result) {
                    jQuery(letterDiv).css('background', 'none').html(result);
                });
            }
            break;
    }
};
