﻿$(document).ready(function() {

    var pl_menuheight = parseInt($("input[id$='hp_plmenuheight']").val());
    if (isNaN(pl_menuheight)) pl_menuheight = 385;
    $("div[id$='productlinemenupanel']").animate({ height: pl_menuheight.toString() + "px" }, 50);

    if ($("#plnavmenu") && $("input[id$='hp_plmenuenabled']").val() == "true") {
        $("#plnavmenu dd").hide();

        var pl_items_ins = $("#plnavmenu dt[currentitem!='true'][childsempty!='true'] span ins");
        var pl_items_dt = $("#plnavmenu dt[currentitem!='true']");
        var pl_current_items_ins = $("#plnavmenu dt[currentitem$='true'] span ins");

        var class_pl_item_clicked_hover = "pl_item_clicked_hover";
        var class_pl_item_clicked_ins = "pl_item_clicked_ins";
        var class_pl_item_hover = "pl_item_hover";
        var class_pl_current_items_ins = "pl_item_current";

        var pl_item_slideUp = parseInt($("input[id$='hp_plmenuslideup']").val());
        if (isNaN(pl_item_slideUp)) pl_item_slideUp = 200;

        var pl_item_slideDown = parseInt($("input[id$='hp_plmenuslidedown']").val());
        if (isNaN(pl_item_slideDown)) pl_item_slideDown = 500;

        function plHideCurrentItem(curentItem, isClick) {
            $(curentItem).parent().parent().next().slideUp(pl_item_slideUp);
            $(curentItem).removeClass(class_pl_item_clicked_ins);
            $(curentItem).removeClass(class_pl_item_clicked_hover);
            if (isClick == true) $(curentItem).addClass(class_pl_item_hover);
        };
        function plShowCurrentItem(currentItem, isClick) {
            $(pl_items_ins).removeClass();
            $(pl_items_ins).parent().removeClass();
            if (isClick == true) $(currentItem).addClass(class_pl_item_clicked_ins);
            if (isClick == true) $(currentItem).addClass(class_pl_item_clicked_hover);
            $(currentItem).parent().parent().next().slideDown(pl_item_slideDown);
        };
        $("#plnavmenu dt span ins").addClass("pl_item_marker");
        $("#plnavmenu dt[childsempty$='true'] span ins").addClass("pl_item_childs_empty");
        if (pl_current_items_ins.length != 0) {
            $(pl_current_items_ins).each(function(i) {
                plShowCurrentItem($(pl_current_items_ins)[i], false);
                $($(pl_current_items_ins)[i]).addClass(class_pl_current_items_ins);
            });
        }
        $(pl_items_ins).click(function() {
            if (this.className.indexOf(class_pl_item_clicked_ins) != -1) {
                plHideCurrentItem(this, true);
            }
            else {
                plShowCurrentItem(this, true);
            }
        });

        $(pl_items_dt).hover(
		    function() {
		        var current_pl_item_dt = this;
		        $(pl_items_dt).each(function(i) {
		            var pl_item_ins_temp = $($($(pl_items_dt)[i]).children()[0]).children()[0];
		            if ($(pl_items_dt)[i] != current_pl_item_dt && pl_item_ins_temp.className.indexOf(class_pl_item_clicked_ins) >= 0) {
		                plHideCurrentItem(pl_item_ins_temp, false);
		            }
		        });
		    },
		    function() { }
		);
        $("#plnavmenu dt[currentitem$='true'], #plnavmenu dd[currentitem$='true'], #plnavmenu dd[childsempty$='true'] span ins").hover(
		    function() {
		        $(pl_items_dt).each(function(i) {
		            var pl_item_ins_temp = $($($(pl_items_dt)[i]).children()[0]).children()[0];
		            if (pl_item_ins_temp.className.indexOf(class_pl_item_clicked_ins) >= 0) {
		                plHideCurrentItem(pl_item_ins_temp, false);
		            }
		        });
		    },
		    function() { }
		);
        $("#plnavmenu").hover(
		    function() {
		    },
		    function() {
		        $(pl_items_dt).each(function(i) {
		            var pl_item_ins_temp = $($($(pl_items_dt)[i]).children()[0]).children()[0];
		            if (pl_item_ins_temp.className.indexOf(class_pl_item_clicked_ins) >= 0) {
		                plHideCurrentItem(pl_item_ins_temp, false);
		            }
		        });
		    }
		);

        $("#plnavmenu dt[currentitem!='true'][childsempty!='true'] span ins, #plnavmenu dt[currentitem!='true'][childsempty!='true'] span a").hover(
            function() {
                var element = this.tagName == "A" ? $(this).prev()[0] : this;
                if (element.className.indexOf(class_pl_item_clicked_ins) >= 0) {
                    $(element).toggleClass(class_pl_item_clicked_hover);
                } else {
                    $(element).toggleClass(class_pl_item_hover);
                }
            },
            function() {
                var element = this.tagName == "A" ? $(this).prev()[0] : this;
                if (element.className.indexOf(class_pl_item_clicked_ins) >= 0) {
                    $(element).toggleClass(class_pl_item_clicked_hover);
                } else {
                    $(element).toggleClass(class_pl_item_hover);
                }
            }
        );
    }
});
