var SUB_NAV_AUTO_SET_EXPAND_CLASSES = true;
var SUB_NAV_EXPAND_CURRENT_NODE = true;
var SUB_NAV_USE_EXPAND_COLLAPSE_CLICK_AREA = true;

$(document).ready(function () {
    InitSubNav();
});

// --- START: SUB NAV ---
var bSubNavEdit = false;
var bInitSubNav = true;
function InitSubNav() {
   bSubNavEdit = ($(".sub-nav .action-menu-icons").size() > 0);
	if(bSubNavEdit) {
		SUB_NAV_EXPAND_CURRENT_NODE = false;
		SUB_NAV_USE_EXPAND_COLLAPSE_CLICK_AREA = false;
		$(".sub-nav ul").show();
	}
    if (SUB_NAV_AUTO_SET_EXPAND_CLASSES) {
        SubNavSetExpandClasses();
    }
    if (SUB_NAV_USE_EXPAND_COLLAPSE_CLICK_AREA) {
        SubNavAddClickAreas();
    }
    $(".sub-nav li .click").mouseover(function () {
        $(this).next("a").addClass("over");
    });
    $(".sub-nav li .click").mouseleave(function () {
        $(this).next("a").removeClass("over");
    });
    $(".sub-nav li .click").click(function () {
        if (SubNavIsCollapsed($(this).parent("li"))) {
            SubNavExpand($(this).parent("li"));
        }
        else if (SubNavIsExpanded($(this).parent("li"))) {
            SubNavCollapse($(this).parent("li"));
        }
    });
	if(!bSubNavEdit) {
		$(".sub-nav a").click(function () {
			if (SubNavIsCollapsed($(this).parent("li"))) {
				SubNavExpand($(this).parent("li"));
			}
			else if (SubNavIsExpanded($(this).parent("li"))) {
				SubNavCollapse($(this).parent("li"));
			}
			if ($(this).attr("href") == "#") {
				
				return false;
			}
			
		});
	}
    if (SUB_NAV_EXPAND_CURRENT_NODE) {
        SubNavExpandCurrent();
    }

    //expand nodes where class collapse is set
    $(".sub-nav li.collapse").each(function () {
        SubNavExpand($(this));
    });

    
    bInitSubNav = false;
}
function SubNavAddClickAreas() {
    $(".sub-nav li.expand, .sub-nav li.collapse").each(function () {
        $(this).children("a").before('<div class="click"></div>'); //title="Klicka för att fälla ut/in"
    });
}

function SubNavSetExpandClasses() {
    $(".sub-nav li").each(function () {
        if ($(this).children("ul").size() > 0) {
            $(this).addClass("expand");
        }
    });
}
function SubNavIsCollapsed($node) {
    return ($node.attr("class").toLowerCase().indexOf("expand") > -1);
}
function SubNavIsExpanded($node) {
    return ($node.attr("class").toLowerCase().indexOf("collapse") > -1);
}

function SubNavExpandCurrent() {
    $(".sub-nav .current").each(function () {
        $(this).parents("li").each(function () {
            SubNavExpand($(this));
        });
        if (SubNavIsCollapsed($(this))) {
            SubNavExpand($(this));
        }
    });
}
function SubNavExpand($node) {
    $node.removeClass("expand").addClass("collapse");
    if (bInitSubNav) {
        $node.children("ul:first").show();
    }
    else {
        $node.children("ul:first").slideDown(500);
    }
}
function SubNavCollapse($node) {
    $node.removeClass("collapse").addClass("expand");
    if (bInitSubNav) {
        $node.children("ul:first").hide();
    }
    else {
        $node.children("ul:first").slideUp(500);
    }
}

function SubNavFindAndSetCurrentNode(href) {
    bInitSubNav = true;
    $(".sub-nav .current").removeClass("current");
    $(".sub-nav .collapse").each(function () {
        SubNavCollapse($(this));
    });
    
    $(".sub-nav li a").each(function () {
        if ($(this).attr("href").toLowerCase().indexOf(href.toLowerCase()) > -1) {
            $(this).parent("li").addClass("current");
            SubNavExpandCurrent();
        }
    });
    bInitSubNav = false;
}
// --- END: SUB NAV ---
