var menu_sep_09 = null; // required to avoid strict Firebug warnings in global.js

var menu;

function init_menu_sep_09()
{
	if( !document.getElementById || browser.ie55)
	{
		return;
	}

	var menus = getElementsByClass('nav-local','ancillary1','ul');
	
	if( !(menus && menus.length) )
	{
		return;
	}
	
	menu = new navigation_menu(menus);
	
	
}


function navigation_menu(menus)
{
	this.menus = menus;
    this.init();    	
}

navigation_menu.prototype.init = function()
{
	var me = this;  
	
	for( var menu_num=0; menu_num<this.menus.length; menu_num++)
	{
		EventManager.Add(this.menus[menu_num], 'mouseout',  function(evt){me.check_close(evt)},   false);
        var items = this.menus[menu_num].getElementsByTagName('li');
  

		for(var i=0,j=items.length; i<j; i++)
		{
			if(items[i].className == 'dir')
			{
			    EventManager.Add(items[i], 'mouseover', function(evt){me.show_children(evt)}, false);
			   // EventManager.Add(items[i], 'mouseout',  function(evt){me.check_close(evt)},   false);
			}
    	}
    }
}

navigation_menu.prototype.check_close = function(ev)
{
	var e = ev ? ev : window.event;
	
	var reltg = (e.relatedTarget) ? e.relatedTarget : e.toElement;
	
	if( this.mouse_is_outside_menu(reltg) )
	{
			this.hide_all();
	}
}

navigation_menu.prototype.mouse_is_outside_menu = function(el)
{
	while (el)
	{
		
		if (el.className == 'nav-local')
		{
			return false;
		}
		//	getEl('out').innerHTML += el.id + ' ';
		el = el.parentNode;
	}
	
	//getEl('out').innerHTML = '';
	return true;
}

navigation_menu.prototype.show_children = function(evt)
{
	var item = get_evt_targ(evt);
	var menu_item = null;
	
	el = item
	
	while( el != null  )
	{		
		if( el.className == 'dir')
		{
			menu_item = el;
		}
		
		el = el.parentNode;
	}

	if( menu_item )
	{
		var nested_lists = menu_item.getElementsByTagName('ul');

		if(nested_lists && nested_lists[0])
		{
				this.show_item(nested_lists[0]);
		}
	}
}

navigation_menu.prototype.show_item = function(el)
{
	el.style.display = 'block';
}

navigation_menu.prototype.hide_item = function(el)
{
	el.style.display = 'none';
}

navigation_menu.prototype.hide_all = function()
{
	for( var menu_num=0; menu_num<this.menus.length; menu_num++ )
	{
		var nested = this.menus[menu_num].getElementsByTagName('li');
	
		if( nested.length )
		{
			for(var i=0;i<nested.length;i++)
			{
				if( nested[i].className == 'dir' )
				{
					this.hide_menu(nested[i].getElementsByTagName('ul'))
				}
			}
		}
	}
}

navigation_menu.prototype.hide_menu = function(child_menus)
{
	if( child_menus && child_menus.length)
	{
		for( var i=0; i<child_menus.length; i++)
		{
			this.hide_item(child_menus[i]);
		}
	}
}

