var SelectedMainMenuID = null;
var SelectedSubMenuID = null;

var OverMainMenuID = null;
var OverSubMenuTableID = null;
var OverSubMenuID = null;

var RenderingType = "IE";

if(document.all)
{
	RenderingType = "IE";
}
else
{
	RenderingType = "NN";
}

// ------------------------------------------------------------
function MainMenu_OnMouseOver(strMainMenuID)
{
	// --------------------------------------------------
	// Hide Current Items
	// --------------------------------------------------

	// Hide current sub menu table
	var tblOverSubMenuTable = document.getElementById('SubMenuTable_' + OverSubMenuTableID);
	
	if(tblOverSubMenuTable != null)
	{
		tblOverSubMenuTable.style.visibility = 'hidden';
	}

	// --------------------------------------------------
	// Change MainMenuID
	// --------------------------------------------------
	OverSubMenuTableID = strMainMenuID;

	// --------------------------------------------------
	// Show Current Items
	// --------------------------------------------------
	
	// Show current sub menu table
	var tdOverMainMenuCell = document.getElementById('MainMenuCell_' + OverSubMenuTableID);

	if(tdOverMainMenuCell != null)
	{
		var tblMainMenu = tdOverMainMenuCell.parentNode.parentNode.parentNode;

		var nBodyLeft;
		var nOverMainMenuCellLeft;
		
		switch(RenderingType)
		{
			case "IE":
				nBodyLeft = document.body.getClientRects()[0].left;
				nOverMainMenuCellLeft = tdOverMainMenuCell.getClientRects()[0].left;
				break;
			case "NN":
				nBodyLeft = document.body.offsetLeft + document.body.scrollLeft;
				nOverMainMenuCellLeft = parseInt(tblMainMenu.parentNode.style.left) + (tblMainMenu.offsetLeft + tblMainMenu.scrollLeft) + (tdOverMainMenuCell.offsetLeft + tdOverMainMenuCell.scrollLeft);
				break;
		}

		var nScrollTop  = document.body.scrollTop;
		var nScrollLeft = document.body.scrollLeft;

		var nOffsetTop  = parseInt(tblMainMenu.parentNode.style.top) + tblMainMenu.offsetTop + tblMainMenu.offsetHeight - 3;
		var nOffsetLeft = nOverMainMenuCellLeft - nBodyLeft;

		tblOverSubMenuTable = document.getElementById('SubMenuTable_' + OverSubMenuTableID);
		
		if(tblOverSubMenuTable != null)
		{
			tblOverSubMenuTable.style.visibility = 'hidden';

			var nLeft = nScrollLeft + nOffsetLeft;

			// 1. ¸Þ´º ³Êºñ ¾È¿¡¼­ Ç¥½ÃµÇ°íÀÚ ÇÏ´Â °æ¿ì
			//	if(nLeft + tblOverSubMenuTable.offsetWidth > tblMainMenu.offsetLeft + tblMainMenu.offsetWidth)
			//		nLeft = tblMainMenu.offsetLeft + tblMainMenu.offsetWidth - tblOverSubMenuTable.offsetWidth;
			// 2. °¡»ó ³Êºñ ¾È¿¡¼­ Ç¥½Ã µÇ°íÀÚ ÇÏ´Â °æ¿ì
			if(nLeft + tblOverSubMenuTable.offsetWidth > tblMainMenu.parentNode.offsetWidth)
				nLeft = tblMainMenu.parentNode.offsetWidth - tblOverSubMenuTable.offsetWidth;
			
			if(nLeft < tblMainMenu.offsetLeft)
				nLeft = tblMainMenu.offsetLeft;
			
			tblOverSubMenuTable.style.top  = nOffsetTop;
			tblOverSubMenuTable.style.left = nLeft;
			
			tblOverSubMenuTable.style.visibility = '';
		}
		
		// Show current main menu image
		if(strMainMenuID != OverMainMenuID)
		{
			var objOutImage      = document.getElementById("MainMenuOut_"      + strMainMenuID);
			var objOverImage     = document.getElementById("MainMenuOver_"     + strMainMenuID);
			var objSelectedImage = document.getElementById("MainMenuSelected_" + strMainMenuID);
			
			if(objOutImage != null)
			{
				objOutImage.style.display      = 'None';
				objSelectedImage.style.display = 'None';
				objOverImage.style.display     = 'Inline';
			}
		}
	}
	
	OverMainMenuID = strMainMenuID;
}

function MainMenu_OnMouseOut(strMainMenuID)
{
	var objOutImage      = document.getElementById("MainMenuOut_"      + strMainMenuID);
	var objOverImage     = document.getElementById("MainMenuOver_"     + strMainMenuID);
	var objSelectedImage = document.getElementById("MainMenuSelected_" + strMainMenuID);

	if(objOutImage != null)
	{
		objOverImage.style.display       = 'None';

		if(SelectedMainMenuID == strMainMenuID)
		{
			objOutImage.style.display      = 'None';
			objSelectedImage.style.display = 'Inline';
		}
		else
		{
			objSelectedImage.style.display = 'None';
			objOutImage.style.display      = 'Inline';
		}
	}
	
	OverMainMenuID = null;
}

function MainMenu_OnSelect(strMainMenuID, strLinkType)
{
	ExecuteMenu(strMainMenuID, strLinkType);
}

// ------------------------------------------------------------
function SubMenu_OnMouseOver(strMainMenuID, strSubMenuID)
{
	if(strSubMenuID != OverSubMenuID)
	{
		var objOutImage      = document.getElementById("SubMenuOut_"      + strSubMenuID);
		var objOverImage     = document.getElementById("SubMenuOver_"     + strSubMenuID);
		var objSelectedImage = document.getElementById("SubMenuSelected_" + strSubMenuID);
		
		if(objOutImage != null)
		{
			objOutImage.style.display      = 'None';
			objSelectedImage.style.display = 'None';
			objOverImage.style.display     = 'Inline';
		}
	}
	
	OverSubMenuID = strSubMenuID;
}

function SubMenu_OnMouseOut(strMainMenuID, strSubMenuID)
{
	var objOutImage      = document.getElementById("SubMenuOut_"      + strSubMenuID);
	var objOverImage     = document.getElementById("SubMenuOver_"     + strSubMenuID);
	var objSelectedImage = document.getElementById("SubMenuSelected_" + strSubMenuID);

	if(objOutImage != null)
	{
		objOverImage.style.display       = 'None';

		if(SelectedSubMenuID == strSubMenuID)
		{
			objOutImage.style.display      = 'None';
			objSelectedImage.style.display = 'Inline';
		}
		else
		{
			objSelectedImage.style.display = 'None';
			objOutImage.style.display      = 'Inline';
		}
	}
	
	OverSubMenuID = null;
}

function SubMenu_OnSelect(strMainMenuID, strSubMenuID, strLinkType)
{
	ExecuteMenu(strSubMenuID, strLinkType);
}
// ------------------------------------------------------------
// Script For Flash
// ------------------------------------------------------------
function FlashMainMenu_OnSelect(nIndex)
{
	var objMainMenu = root.Children[nIndex];

	MainMenu_OnSelect(objMainMenu.MenuID, objMainMenu.LinkType);
}

function FlashSubMenu_OnSelect(nIndex, nSubIndex)
{
	var objMainMenu = root.Children[nIndex];
	var objSubMenu  = objMainMenu.Children[nSubIndex];

	SubMenu_OnSelect(objMainMenu.MenuID, objSubMenu.MenuID, objSubMenu.LinkType);
}