$(document).ready(function() {
	////
	// Setup the Menu
	////
	var lastItem, lastTarget;
	
	$("ul#topmenu li").hover(function(e) {
		if (lastTarget !== e.currentTarget) {
			lastTarget = e.currentTarget;
			lastItem = $(e.currentTarget);
			lastItem.addClass('hover');
			$('> .dir',this).addClass("open");
			$('> .dir',this).addClass("dir_hover");
			$('ul:first',this).css('visibility', 'visible');
		}
	}, function() {
		$(this).removeClass("hover");
		$('.open',this).removeClass("open");
		$('.dir_hover',this).removeClass("dir_hover");
		$('ul:first',this).css('visibility', 'hidden');
	});
	
	$('body').mousemove(function(e) {
		
			if (lastItem) {
				
				var foundParent = false;
				$(e.target).parents().each(function(i, node) {
					if ('topmenu' === node.id) {
						foundParent = true;
					}
				});
				
				if (! foundParent) {
					lastItem.removeClass('hover');
					lastItem = null;
					lastTarget = null;
				}
			}
		});
});
