
dojo.provide("atg.b2cblueprint.mff.leftnav");

atg.b2cblueprint.mff.leftnav={
	
	showCatFlyout: function(index)
	{
		var topIndex = index - 1;
		//var leftNavContainer = document.getElementById('cat_left_nav_primary_link_');
		var currentNavHoverLink = document.getElementById('cat_left_nav_primary_link_' + index);
		
		currentNavHoverLink.className = 'cat_left_nav_primary_hover';
		
		var position = this.findPos(currentNavHoverLink);
		
		if (topIndex > 0) {
			var currentNavHoverLinkTop = document.getElementById('cat_left_nav_primary_link_' + topIndex);
			currentNavHoverLinkTop.className = 'cat_left_nav_primary_neighbor';
		}
		
		try {				
			var currentNavFlyout = document.getElementById('cat_left_nav_primary_flyout_' + index);
			topPosition = topIndex * 23;
			if (topPosition >= 368) {
				//alert('test');
				topPosition = 368;
			}
			currentNavFlyout.style.left = position[0] + 255 + "px";
			currentNavFlyout.style.top = position[1] - topPosition + "px";
			currentNavFlyout.style.display = 'block';
			
			//fix for IE6 bug: select boxes display over flyouts
			//document.getElementById('mff_subcategorySortOptions').style.visibility = 'hidden';
		}
		catch(e) {
			//alert(e);
		}
	},

	hideCatFlyout: function(index, isBottom)
	{
		var topIndex = index - 1;
		var currentNavHoverLink = document.getElementById('cat_left_nav_primary_link_' + index);
		
		if (isBottom == 'true'){
			currentNavHoverLink.className = 'cat_left_nav_primary_alt';
		}
		else {
			currentNavHoverLink.className = 'cat_left_nav_primary';
		}
		
		if (topIndex > 0) {
			document.getElementById('cat_left_nav_primary_link_' + topIndex).className = 'cat_left_nav_primary';
		}
		
		try {
			document.getElementById('cat_left_nav_primary_flyout_' + index).style.display = 'none';
			
			//fix for IE6 bug: select boxes display over flyouts
			//document.getElementById('mff_subcategorySortOptions').style.visibility = 'visible';
		}
		catch(e) {
			//alert(e);
		}
	},

	findPos: function(obj)
	{
		var curleft = curtop = 0;
		if (obj.offsetParent) {
			curleft = obj.offsetLeft
			curtop = obj.offsetTop
			while (obj = obj.offsetParent) {
				curleft += obj.offsetLeft
				curtop += obj.offsetTop
			}
		}
		return [curleft,curtop];
	},
	
	// Special function for the comparison page; don't show the flyouts
	showCatFlyoutCompare: function(index)
	{
		var topIndex = index - 1;
		var leftNavContainer = document.getElementById('flyout_reference');
		var currentNavHoverLink = document.getElementById('cat_left_nav_primary_link_' + index);
		
		currentNavHoverLink.className = 'cat_left_nav_primary_hover';
		
		var position = this.findPos(leftNavContainer);
		
		if (topIndex > 0) {
			var currentNavHoverLinkTop = document.getElementById('cat_left_nav_primary_link_' + topIndex);
			currentNavHoverLinkTop.className = 'cat_left_nav_primary_neighbor';
		}
		
		try {	
			/*
			var currentNavFlyout = document.getElementById('cat_left_nav_primary_flyout_' + index);
			
			currentNavFlyout.style.left = position[0] + 0 + "px";
			currentNavFlyout.style.top = position[1] - 0 + "px";
			currentNavFlyout.style.display = 'block';
			
			//fix for IE6 bug: select boxes display over flyouts
			//document.getElementById('mff_subcategorySortOptions').style.visibility = 'hidden';
			*/
		}
		catch(e) {
			//alert(e);
		}
	}
};

