﻿var _timebombtimer = null;
var _timebombinterval = 250;
var _acceptdepartmentmenuevents = false;
var _preventFadeOut = false;
var _ticker = null;
var _enterDropDown = false;

$(document).ready(

    function() {
        window.setTimeout('acceptdepartmentmenuevents()', 1000);


        $(".departmentmenu .button").hoverIntent(
            function() {
                //$("#divTopTabs").append("$(\".departmentmenu .button\").hoverIntent in<br />");
                if ($(".departmentmenu .dropdown").length == 0) { return false; } //no dropdowns, no show.

                if (!_acceptdepartmentmenuevents) { return false };

                var firstButtonLeft = $(".departmentmenu .button:first").position().left;
                var btnid = "#dropdown" + $(this).attr("buttonid");


                $(".departmentmenu .dropdown").attr("timebomb", "1");

                $(btnid).attr("timebomb", "0");
                $(btnid).attr("showdelayticks", "3");
                //_ticker = window.setInterval("tick()", 1000);
                _preventFadeOut = true;


                if ($(btnid).width() + $(this).position().left > (1022 + firstButtonLeft)) {
                    $(btnid).css("left", (1022 + firstButtonLeft) - $(btnid).width());
                } else {
                    $(btnid).css("left", $(this).position().left);
                }

                $(btnid).show();

                killtimebombedpopups();

                if (_menubuilderFlags.indexOf("TRANSPARENTBACK") != -1) {
                    $('#txtSearch').css('position', '');
                    fadeShow();
                }
            }
            ,
            function() {
                //$("#divTopTabs").append("$(\".departmentmenu .button\").hoverIntent out<br />");
                if (!_acceptdepartmentmenuevents) { return false };

                if (!_enterDropDown) {
                    var btnid = "#dropdown" + $(this).attr("buttonid");
                    $(btnid).attr("timebomb", "1");
                    _preventFadeOut = false;
                    if (_timebombtimer == null) {
                        _timebombtimer = window.setTimeout('killtimebombedpopups()', _timebombinterval);
                    }
                } else {
                    _enterDropDown = false;
                }
            }
        );


        $('.departmentmenu .dropdown').mouseenter(
            function() {
                //$("#divTopTabs").append("$('.departmentmenu .dropdown').mouseenter<br />");
                $(this).attr("timebomb", "0");
                _preventFadeOut = true;
                _enterDropDown = true;
            }
        );


        $('.departmentmenu .dropdown').mouseleave(
            function() {
                //$("#divTopTabs").append("$('.departmentmenu .dropdown').mouseleave<br />");
                $(this).attr("timebomb", "1");
                _preventFadeOut = false;
                if (_timebombtimer == null) {
                    _timebombtimer = window.setTimeout('killtimebombedpopups()', _timebombinterval);
                }
            }
        );


        $('.departmentmenu ul.dropdown li.column ul.subitems li.subitem span').click(
            function() {
                //alert($(this).attr("path"));
            }
        );

    }
);

function killtimebombedpopups() {
    if (_menubuilderFlags.indexOf("FADEOUT") == -1) {
        $('.departmentmenu .dropdown[timebomb="1"]').hide();
        if (!_preventFadeOut) {
            fadeHide();
            $('#txtSearch').css('position', 'relative');
        }
    } else {
    $('.departmentmenu .dropdown[timebomb="1"]').fadeOut(
            function() {
                if (!_preventFadeOut) {
                    fadeHide();
                    $('#txtSearch').css('position', 'relative');
                }
            }
        );
    }

    _timebombtimer = null;
}

function acceptdepartmentmenuevents() {
    _acceptdepartmentmenuevents = true;
}


function tick() {
    //
}

