﻿var hoverConfig = {    
     sensitivity: 1, // number = sensitivity threshold (must be 1 or higher)    
     interval: 250, // number = milliseconds for onMouseOver polling interval    
     over: MenuHoverStart, // function = onMouseOver callback (REQUIRED)    
     timeout: 0, // number = milliseconds delay before onMouseOut    
     out: MenuHoverEnd // function = onMouseOut callback (REQUIRED)    
};

function MenuOpened(elem)
{	// changes menu arrow
	// this = opened child UL
	$(this).parent().addClass('jopen');
}
function MenuClosed()
{	// changes menu arrow
	// this = closed (child) UL
	$(this).parent().removeClass('jopen');
}

function MenuFastHoverStart()
{
}
function MenuFastHoverEnd()
{
}

function MenuHoverStart()
{

    if($(this).hasClass('noho'))
    {
    return;
    }
	//var closeList = $('.menu ul ul, .menu ul ul ul, .menu ul ul ul ul');
	$('.menu ul ul, .menu ul ul ul, .menu ul ul ul ul').addClass('noopen');
	var pointer;
	var noskip = true;
    pointer = $(this).parent().parent();
    while (pointer[0].tagName.toLowerCase() == 'li')
    {
	    $('>ul', pointer).removeClass('noopen');
	    $('>ul', pointer).slideDown(menutime, MenuOpened);
	    pointer = pointer.parent().parent();
		noskip = false;
    }
	if (noskip)
	{
	    pointer = $(this).parent();
	    while (pointer[0].tagName.toLowerCase() == 'li')
	    {
		    $('>ul', pointer).removeClass('noopen');
		    $('>ul', pointer).slideDown(menutime, MenuOpened);
		    pointer = pointer.parent().parent();
	    }
	}
	
	// preserve selected menu open
	$('.menu li.selected>ul, .menu li.selected-down>ul').removeClass('noopen');
	
	// close menu sections marked 'noopen'
	$('.menu ul ul.noopen').slideUp(menutime, MenuClosed);
}
function MenuHoverEnd()
{
}



/*function OpenSelected()
{
	$('.menu .selected').each(
		function(elem)
		{
			$(this).parent().css('display', 'block');//.slideDown(0, MenuOpened);//.css('display', 'block');
		}
	);
}*/

function RegisterMenuHoverArrows(){
	$('.menu ul li a').filter('.noho').hover(
		function()
		{
		    ('.menu ul li.jhover a').filter('.noho').parent().removeClass('jhover');
		    $(this).parent().addClass('jhover');
		}
		//,function(){$(this).parent().removeClass('jhover');}
	);
}






function HideMenuContainers() {
    // Hides all the sub menu containers
    //	$('div.MenuContainer2').hide();
    //  $('div.MenuContainer3').hide();

    // editor stuff
    $('a.editor-link').click(function(event) {
        event.preventDefault();
        if ($('.editor-details').is(':hidden')) {
            $('.editor-details').slideDown(500);
        }
        else {
            $('.editor-details').slideUp(500);
        }
        return false;
    });
}
// end editor stuff

// begin menu move
var menuMoveOrigin = "";
var isMenuMoveInitiated = false;
function HideMenuMoveTargets() {
    $('.menu-move-target').css('display', 'none');
}
function ShowMenuMoveTargets() {
    $('.menu-move-target').css('display', 'block');
}
function InitiateMenuMove(origin) {
    if (isMenuMoveInitiated) {
        if (menuMoveOrigin == origin) {
            isMenuMoveInitiated = false;
            HideMenuMoveTargets();
        }
        else {
            menuMoveOrigin = origin;
        }
    }
    else {
        menuMoveOrigin = origin;
        isMenuMoveInitiated = true;
        ShowMenuMoveTargets();
    }
}
function MenuMoveConfirmAndSubmit(target) {
    if (confirm('Proceed to move selected item?')) {
        window.location = 'move.html?param=' + target + '-' + menuMoveOrigin;
    }
    menuMoveOrigin = "";
    HideMenuMoveTargets();
    return false;
}
// end menu move





function InitMenu()
{
	//OpenSelected();
	//setTimeout('OpenSelected()', 300);
	$('.menu ul a').hoverIntent(hoverConfig);
	RegisterMenuHoverArrows();
	
	HideMenuMoveTargets();
	
}