

/* Vars related to main category menu */
	var currentSubMenu = "";
	var lastMenu = "";
	var currentMenu = "";
	var menuHover = false;
	var hideMenu = false;
	var currentRootCategory = "";
	var leftMenu = "";
	var rightMenu = "";
	var isLeftMenu = false;
	var isRightMenu = false;
	var rd = false;
	var menuLoaded = new Object();
/* Vars related to main category menu */



function setPos(itemId)
{
	var revertFlag = 0;
	var isLoaded = eval("menuLoaded."+itemId);
	if (!isLoaded) 
	{	
		
		var cell = document.getElementById("td_"+itemId);
		var submenu = document.getElementById("subcat_"+itemId);
		var topNavTbl = document.getElementById("topNavTbl");
		var menuDiv = document.getElementById("menuDiv");
		var cellLeft = getObjCoords(submenu);
		var menuLeft = getObjCoords(menuDiv);

		var pos = cellLeft.x - menuLeft.x;
		var navTableWidth=getDivWidth(topNavTbl);
		var topNavWidth=getDivWidth(cell);
		var subMenuWidth=getDivWidth(submenu);
		var relPos = pos+subMenuWidth;
		var relPos2 = relPos+topNavWidth;
		//var outRange = cellLeft.x + subMenuWidth - menuLeft.x-navTableWidth;
		var leftAlign=cellLeft.x+topNavWidth-subMenuWidth-menuLeft.x;	
		//alert("cellLeft.x"+cellLeft.x+",topNavWidth"+topNavWidth+",subMenuWidth"+subMenuWidth+",menuLeft.x"+menuLeft.x+",leftAlign"+leftAlign+",pos"+pos+",(navTableWidth-subMenuWidth)"+(navTableWidth-subMenuWidth));
		//right-align elements that are past center section of topNavTbl
		//submenu.style.left= cellLeft.x-(topNavWidth/2);
		if (pos > (navTableWidth-subMenuWidth))
		{
			if (leftAlign>0)
			{
				submenu.style.left= 0+"px";
				leftAlign=cellLeft.x+topNavWidth-getDivWidth(submenu)-menuLeft.x;	
					submenu.style.left=leftAlign+"px";
					revertFlag = 2;
			}
			else
			{
				submenu.style.left=6+"px";
				revertFlag = 3;
			}
		}
		eval("menuLoaded."+itemId+"=true");

	}
	return revertFlag;
}


function Point(x, y) {
    this.x = x;
    this.y = y;
}

function getObjCoords(o) {
    var oX = 0;
    var oY = 0;
    if (o.offsetParent) {
        while (1) {
            oX+=o.offsetLeft;
            oY+=o.offsetTop;
                if (!o.offsetParent) {
                    break;
                }
            o=o.offsetParent;
        }
    } else if (o.x) {
        oX+=o.x;
        oY+=o.y;
    }
    return new Point(oX, oY);
}

function hideAllSubs(pCheckCurrent)
{
  	var menuNode= document.getElementById('topNavTbl');
  	var subMenus = getElementsByClass("sub_menu_on", menuNode, "div");
  	if (null!=subMenus && ""!=subMenus)
  	{
  		for (i=0; i<subMenus.length; i++)
  		{
  			if ( pCheckCurrent && menuHover == true && currentSubMenu != "" && currentSubMenu==subMenus[i].id )
  			{ /*do not hide this submenu*/ }
  			else
  			{
			  	$(subMenus[i]).hide();
			}
  		}
  	}
}

function showSubMenu(catId,lr) {
	$(".quickView").css("z-index","-1");
	$("#SjElement3_base").css("z-index","-1");
	$(".tabNavigation").css("z-index","0");
	var currTd = document.getElementById('td_' + currentMenu);
	var catTd =  document.getElementById('td_' + catId);
  	var specialOffersSelected = false;
    hideAllSubs(false);
  if ( currentSubMenu != "" ) {
  	$(currentSubMenu).hide();
  }
  if ( currentMenu != "") {
  	if (
  		(currentMenu != currentRootCategory ) && 
  		(currentMenu!="gift_cards")
  	) 
	{
		currTd.className = 'menu_bg_off';
	}
  }

  catTd.className = 'menu_bg_on';
  
  if (   document.getElementById('subcat_' + catId) ) {
  	var sub = document.getElementById('subcat_' + catId);
	changeOpac(0, 'subcat_'+catId);
  	sub.style.display = "block";
   	var flag = setPos(catId);
  	sub.style.display="none";
	changeOpac(100, 'subcat_'+catId);
	currentSubMenu = "subcat_" + catId;
	var currentLeft = getObjCoords(sub);
	if(flag==2){
		var tempMenus = $(sub).children();
		var length = tempMenus.length;
		$(sub).children().length=0;
		for(i=0;i<length;i++){
			$(tempMenus[i]).css("float","right");
			$(sub).prepend(tempMenus[i]);
		}
		if($.browser.msie && ($.browser.version < 8)) {
			$(sub).css("left",(currentLeft.x+11)+"px");
		}
	}
	$(sub).show();
	hideAllSubs(true);
  	lastMenu = currentMenu;
  	currentMenu = catId;
  }
  currentMenu = catId;
}

function hideSubMenu() {
	$(".quickView").css("z-index","1");
	$("#SjElement3_base").css("z-index","1");
	$(".tabNavigation").css("z-index","1");
  	var specialOffersSelected = false;
  	var currTd = document.getElementById('td_' + currentMenu);
  if ( document.getElementById(currentSubMenu) ) 
  {
    $(currentSubMenu).hide();
  }

  if ( document.getElementById("td_" + currentMenu))
  {
  	if (
  		(currentMenu != currentRootCategory) && (currentMenu!="gift_cards")
  	) 
  	{
  		currTd.className = 'menu_bg_off';
  	}
  }
  hideAllSubs(true);
}

function findPositionX(obj) {
    var curleft = 0;
    if (obj.offsetParent) {
        while (1) {
            curleft+=obj.offsetLeft;
            if (!obj.offsetParent) {
                break;
            }
            obj=obj.offsetParent;
        }
    } else if (obj.x) {
        curleft+=obj.x;
    }
    return curleft;
}
function findPositionY(obj) {
    var curtop = 0;
    if (obj.offsetParent) {
        while (1) {
            curtop+=obj.offsetTop;
            if (!obj.offsetParent) {
                break;
            }
            obj=obj.offsetParent;
        }
    } else if (obj.y) {
        curtop+=obj.y;
    }
    return curtop;
}

