var menuIsOpened1 = false;
var menuIsOpened2 = false;
var menuItemPosition = null;
var curSubMenu = null;
var searchIsOpened = false;
var searchIsOver = false;


var MousePosition;
$(document).ready(function() {
    $().mousemove(function(e) {
        MousePosition = e.pageX;
    });
})

function callMenu() {    
    $('#mnuTopDiv, #coveringDiv')
        .mouseover(function() {

            LastLinkRightBorder = $('div.topContainer').attr('offsetLeft') + $('div.menuHolder').attr('offsetLeft') + $('div.menuHolder > div:last').attr('offsetLeft') + $('div.menuHolder > div:last').attr('offsetWidth');

            if (!menuIsOpened1 && !menuIsOpened2 && !searchIsOver) {
                closeMenu();
                hideCover();
                hideBg();
            }
        });

    $('div.menuHolder, div.menuHolder a')
        .mouseover(function() { menuIsOpened1 = true; })
        .mouseout(function() { menuIsOpened1 = false; });

    $('div.topSubMenuDiv, div.searchResultsDiv')
        .mouseover(function() { menuIsOpened2 = true; })
        .mouseout(function() { menuIsOpened2 = false; });

    $('div.menuHolder a')
        .mouseover(function() {
            showCover();
            menuItemPosition = $('div.menuHolder a').index(this);
            if (curSubMenu != menuItemPosition)
                openMenu(this, menuItemPosition);

        });
}

function showSearchResults() {
    searchIsOpened = true;
    showCover();
    menuItemPosition = 15;
    if (curSubMenu != menuItemPosition)
        openMenu(document.getElementById('mainSearch'), menuItemPosition);
}

function switchTopMenuBG(obj, action) {
    if (menuItemPosition == 15)
        obj.className = 'search noColor';
    else
        obj.className = 'noColor';

    if (obj.type != 'noSubmenu')
        obj.parentNode.className = 'right bgRight';
    else
        obj.parentNode.className = 'right bgRight1';
    
    obj.className = 'newColor';
    obj.parentNode.parentNode.className = 'left bgLeft';
    obj.parentNode.parentNode.parentNode.className = 'menuItemHolder bgMain';
}

function openMenu(obj, menuId) {
    curSubMenu = menuId;
    switchTopMenuBG(obj, true);
    
    if (curSubMenu == 15) {
        if (browserType() == 'Safari')
            $('#topsubmenu_search').css('left', obj.parentNode.parentNode.parentNode.offsetLeft + 182 + 'px');
        if (browserType() == 'Firefox')
            $('#topsubmenu_search').css('left', obj.parentNode.parentNode.parentNode.offsetLeft + 181 + 'px');
        if (!(browserType() == 'Firefox' || browserType() == 'Safari'))
            $('#topsubmenu_search').css('left', obj.parentNode.parentNode.parentNode.offsetLeft + 183 + 'px');
        $('#topsubmenu_search').css('top', obj.parentNode.parentNode.parentNode.parentNode.offsetTop + 35 + 'px');
        $('#topsubmenu_search').css('display', 'block');
    }
    else {
        $('#topsubmenu' + menuId).css('left', obj.parentNode.parentNode.parentNode.offsetLeft + 10 + 'px');
    }
    $('#topsubmenu' + menuId).css('top', obj.parentNode.parentNode.parentNode.parentNode.offsetTop + 35 + 'px');


    if (window.openedMenu == null) {
        if (obj.type != 'noSubmenu')
            $('#topsubmenu' + menuId).css('display', 'block');
    }
    else {
        window.openedMenu.className = '';
        window.openedMenu.parentNode.className = 'right noBg';
        window.openedMenu.parentNode.parentNode.className = 'left noBg';
        window.openedMenu.parentNode.parentNode.parentNode.className = 'menuItemHolder noBg';
        closeMenu();
        if (obj.type != 'noSubmenu')
            $('#topsubmenu' + menuId).css('display', 'block');
        curSubMenu = menuItemPosition;
    }
    window.openedMenu = obj;
    window.openedMenuDIV = $('#topsubmenu' + menuId);
}

function closeMenu() {
    $('div.topContainer div.topSubMenuDiv').css('display', 'none');
    $('div.topContainer div.searchResultsDiv').css('display', 'none');
    curSubMenu = null;
    searchIsOpened = false;
}

function showCover() {
    $('#coveringDiv')
		.css('visibility', 'visible')
		.css('opacity', '0.25');
}

function hideCover() {
    $('#coveringDiv').queue(function() {
        $(this).css("opacity", 0);
        $(this).css("visibility", "hidden")
        $(this).dequeue();
    });
}

function hideBg() {
    if (menuItemPosition != null) {
        if (menuItemPosition == 15) {
            window.openedMenu = $('#mainSearch');
            window.openedMenu.className = 'search';
        }
        else {
            window.openedMenu = $('div.menuHolder a:eq(' + menuItemPosition + ')');
            window.openedMenu.className = '';
        }
        
        window.openedMenu.get(0).className = '';
        window.openedMenu.get(0).parentNode.className = 'right noBg';
        window.openedMenu.get(0).parentNode.parentNode.className = 'left noBg';
        window.openedMenu.get(0).parentNode.parentNode.parentNode.className = 'menuItemHolder noBg';
        window.openedMenu = null;
        window.openedMenuDIV = null;
    }
}