// JavaScript Document

var productMenuTimer = 0;
var mlsMenuTimer = 0;
var newsMenuTimer = 0;
var menuDelay = 600;

function showProductMenu() {
	doHideMLSMenu();
	doHideNewsMenu();
	clearTimeout(productMenuTimer);
	productMenuTimer = 0;
	$('ProductsSubmenu').show();
}

function hideProductMenu() {
	clearTimeout(productMenuTimer);
	productMenuTimer = 0;
	productMenuTimer = setTimeout(doHideProductMenu, menuDelay);
}

function doHideProductMenu() {
	clearTimeout(productMenuTimer);
	productMenuTimer = 0;
	$('ProductsSubmenu').hide();
	hideSubMenu();
	hideSubSubMenu();
}



function showMLSMenu() {
	doHideProductMenu();
	doHideNewsMenu();
	clearTimeout(mlsMenuTimer);
	mlsMenuTimer = 0;
	$('MLSSubmenu').show();
}

function hideMLSMenu() {
	clearTimeout(mlsMenuTimer);
	mlsMenuTimer = 0;
	mlsMenuTimer = setTimeout(doHideMLSMenu, menuDelay);
}

function doHideMLSMenu() {
	clearTimeout(mlsMenuTimer);
	mlsMenuTimer = 0;
	$('MLSSubmenu').hide();
}


function showNewsMenu() {
	doHideProductMenu();
	doHideMLSMenu();
	clearTimeout(newsMenuTimer);
	newsMenuTimer = 0;
	$('NewsSubmenu').show();
}

function hideNewsMenu() {
	clearTimeout(newsMenuTimer);
	newsMenuTimer = 0;
	newsMenuTimer = setTimeout(doHideNewsMenu, menuDelay);
}

function doHideNewsMenu() {
	clearTimeout(newsMenuTimer);
	newsMenuTimer = 0;
	$('NewsSubmenu').hide();
}

function showSubSubMenu(e) {
	var catid = e.target.id.substring(8);
	var t = '';
	var ct = 0;
	
	$('ProdSubSubMenu').innerHTML = '';
	menuStructure.each(function(n) {
		if(n.parent == catid) {
			$('ProdSubSubMenu').innerHTML += '<a class="prodmenuitem" id="category' + n.id + '" href="catalog.php?cid=' + n.id + '">' + n.name + '</a>';
			ct ++;
		}
	});
	
	
	if(ct) {
		$('ProdSubSubMenu').show();
		var at = $(e.target).positionedOffset();
		var atl = at.left + 'px';
		var att = at.top + 'px';
		$('ProdSubSubMenu').clonePosition(e.target, {offsetLeft: 175, setWidth: false, setHeight: false});
	} else {
		$('ProdSubSubMenu').hide();
	}
}

function hideSubSubMenu() {
	$('ProdSubSubMenu').hide();
}

function showSubMenu(e) {
	hideSubSubMenu();
	var catid = e.target.id.substring(8);
	var t = '';
	var ct = 0;
	
	$('ProdSubMenu').childElements().each(function(n) {
		n.stopObserving('mouseover', showSubSubMenu);
																								 });
	
	$('ProdSubMenu').innerHTML = '';
	menuStructure.each(function(n) {
		if(n.parent == catid) {
			$('ProdSubMenu').innerHTML += '<a class="prodmenuitem" id="category' + n.id + '" href="catalog.php?cid=' + n.id + '">' + n.name + '</a>';
			ct ++;
		}
	});
	
	$('ProdSubMenu').childElements().each(function(n) {
		n.observe('mouseover', showSubSubMenu);
																								 });
	
	
	if(ct) {
		$('ProdSubMenu').show();
		var at = $(e.target).positionedOffset();
		var atl = at.left + 'px';
		var att = at.top + 'px';
		$('ProdSubMenu').clonePosition(e.target, {offsetLeft: 175, setWidth: false, setHeight: false});
	} else {
		$('ProdSubMenu').hide();
	}
}

function hideSubMenu(e) {
	$('ProdSubMenu').hide();
}

// init the menus
Event.observe(window, 'load', function() {
	Event.observe('navProducts', 'mouseover', showProductMenu);
  Event.observe('navProducts', 'mouseout', hideProductMenu);
  Event.observe('ProductsSubmenu', 'mouseover', showProductMenu);
	Event.observe('ProductsSubmenu', 'mouseout', hideProductMenu);

  Event.observe('navMLS', 'mouseover', showMLSMenu);
  Event.observe('navMLS', 'mouseout', hideMLSMenu);
  Event.observe('MLSSubmenu', 'mouseover', showMLSMenu);
	Event.observe('MLSSubmenu', 'mouseout', hideMLSMenu);

  Event.observe('navNews', 'mouseover', showNewsMenu);
  Event.observe('navNews', 'mouseout', hideNewsMenu);
  Event.observe('NewsSubmenu', 'mouseover', showNewsMenu);
	Event.observe('NewsSubmenu', 'mouseout', hideNewsMenu);
	
	Event.observe('ProdSubMenu', 'mouseover', showProductMenu);
	Event.observe('ProdSubMenu', 'mouseout', hideProductMenu);

	Event.observe('ProdSubSubMenu', 'mouseover', showProductMenu);
	Event.observe('ProdSubSubMenu', 'mouseout', hideProductMenu);

	Event.observe('salesmenu', 'mouseover', hideSubMenu);
	
	
	$$('a.prodmenuitem').each(function(n) {
			Event.observe(n, 'mouseover', showSubMenu);														 
	});

});

