(function($) {

	function onMenuEnter() {
		onMenuExit();
		var $this = $(this);
		var header = $this.is('li') ? $this.children('a:first') : $this;
		var submenu = header.next('ul');
		submenu.addClass('sys_display_menu');
		submenu
			.hover(onMenuActive, onMenuExit)
			.find('li > a').focus(onMenuActive);
	}
	
	function onMenuExit() {
		$('#navigation ul.sys_display_menu:visible')
			.removeClass('sys_display_menu')
			.prev('a').removeClass('sys_stick_hover');
	}
	
	function onMenuActive()	{
		var $this = $(this);
		$this.prev('a').addClass('sys_stick_hover');
	}

	$(document).ready(function() {
	
    		$('#navigation ul:first > li.sys_folder').each(function() {
			var header = $(this).children('a:first');
			var submenu = header.next('ul');
			submenu.prepend(
				$(document.createElement('li')).append(header.clone().addClass('noexternal'))
			);
		});
		
    		$('#navigation ul:first > li.sys_folder')
    			.hover(onMenuEnter, onMenuExit)
    			.children('a').focus(onMenuEnter);
    			
    		$('#navigation a:last').blur(onMenuExit);	
    		
		$('#navigation ul:first > li.sys_aspx:first').children('a').addClass('sys_first');
		$('#navigation ul:first > li.sys_folder:last').children('a').addClass('sys_last');
	});
})(jQuery);