function generateGNBLayerCommon(moduleID, subMenu, menuID){
	document.writeln(
	"<tr ID="+menuID+">"+
	"<td onmouseover=\"this.style.backgroundColor='#D4F4FF'\" onmouseout=\"this.style.backgroundColor=''\" bgcolor=#FFFFFF><img src=./img/ico_img/ico_arr6.gif width=5 height=5 hspace=4 align=absmiddle>"+
	"<a href="+subMenu[0]+">" + subMenu[1] + "</a></td>"+
	"</tr>");
}

function generateGNBLayer(moduleID, subMenus)
{
	document.writeln(
	"<DIV ID=gnb_layer_"+moduleID+"  ONMOUSEOVER=\"javascript:showSubMenuLayer('"+moduleID+"')\" ONMOUSEOUT=\"javascript:hideSubMenuLayer('"+moduleID+"')\" STYLE=\"position:absolute; display:none; z-index:99\">"+//ONMOUSEOUT=\"javascript:hideSubMenuLayer('"+moduleID+"')\"
	"<table border=0 align=center cellpadding=1 cellspacing=0 bgcolor=#018ABE STYLE=\"position:relative\">"+
	"<tr>"+
	"<td>"+
	"<table border=0 cellpadding=0 cellspacing=3 bgcolor=018ABE>"+
	"<tr>"+
	"<td  bgcolor=#FFFFFF>"+
	"<table width=100% border=0 cellpadding=8 cellspacing=1 bgcolor=018ABE class=gulim12>");
	
	for (key in subMenus){
		generateGNBLayerCommon(moduleID, subMenus[key], "gnb_layer_"+moduleID+"_"+key);
	}
	
	document.writeln(
	"</table>"+
	"</td>"+
	"</tr>"+
	"</table>"+
	"</td>"+
	"</tr>"+
	"</table>"+
	"</DIV>");
}

var currentShewModuleID = '';

function showSubMenuLayer(moduleID)
{
	if (currentShewModuleID == moduleID) return;
	
	if (currentShewModuleID != '') hideSubMenuLayer(currentShewModuleID);
	
	currentShewModuleID = moduleID;
	
	var tg = document.all("gnb_layer_"+moduleID);
	var link = document.all("gnb_link_"+moduleID);
	
	if (tg != null)
	{
		tg.style.posTop = link.offsetTop + link.offsetHeight ;
		if(moduleID == 'ame') tg.style.posLeft = link.offsetLeft - 35;
		else if(moduleID == 'aus') tg.style.posLeft = link.offsetLeft - 45;
		else if(moduleID == 'study') tg.style.posLeft = link.offsetLeft - 55;
		else if(moduleID == 'faq') tg.style.posLeft = link.offsetLeft - 75;
		else tg.style.posLeft = link.offsetLeft - 20;
		tg.style.display = "inline";
	
		for (var i=0; i<objectForClipping.length; i++){
			var frameName = objectForClipping[i];
			var tableName = oTableForClipping[i];    
			var oFrame = document.all[frameName];
			var oTable = document.all[tableName]; 
	
			if( 'undefined' != typeof(tableName) && '' != tableName ){    
	   			var oldFrameOffsetTop = oFrame.offsetTop;    
	   			var oldFrameOffsetLeft = oFrame.offsetLeft;    
	   			var frameOffsetTop = oFrame.offsetTop + parseInt(oTable.style.top);    
	   			var frameOffsetLeft = oFrame.offsetLeft + parseInt(oTable.style.left);    
	   			var frameOffsetBottom = frameOffsetTop + oFrame.offsetHeight;    
	   			var frameOffsetRight = frameOffsetLeft + oFrame.offsetWidth;    
			}    
			else{  
	  			oFrame.style.position = 'relative';
	
				var frameOffsetTop = oFrame.offsetTop;
	  			var frameOffsetLeft = oFrame.offsetLeft;
	  			var frameOffsetBottom = oFrame.offsetTop + oFrame.offsetHeight;
	  			var frameOffsetRight = oFrame.offsetLeft + oFrame.offsetWidth;
			}
	
			var layerOffsetTop = tg.offsetTop;
			var layerOffsetBottom = tg.offsetTop + tg.offsetHeight;
			var layerOffsetLeft = tg.offsetLeft;
			var layerOffsetRight = tg.offsetLeft + tg.offsetWidth;
	
			if (frameOffsetTop <= layerOffsetBottom && (layerOffsetLeft >= frameOffsetLeft && layerOffsetLeft <= frameOffsetRight || frameOffsetLeft >= layerOffsetLeft && frameOffsetLeft <= layerOffsetRight))
			{
	  			oFrame.style.position = 'absolute';
				if( 'undefined' != typeof(tableName) && '' != tableName ){    
	    				oFrame.style.top = oldFrameOffsetTop;    
	    				oFrame.style.left = oldFrameOffsetLeft;    
	    			}    
	  			else{    
	    				oFrame.style.top = frameOffsetTop;
	    				oFrame.style.left = frameOffsetLeft;
	  			}
	  			oFrame.style.clip = "rect(" + (layerOffsetBottom - frameOffsetTop + 1) + " auto auto auto)";
			}
		}
	}
}

function hideSubMenuLayer(moduleID, force)
{
	if (currentShewModuleID != moduleID) return;
	
	var tg = document.all("gnb_layer_" + moduleID);
	
	currentShewModuleID = '';
	
	if (tg != null)
	{
		tg.style.display = "none";
		for (var i=0; i<objectForClipping.length; i++){
			var frameName = objectForClipping[i];
			var tableName = oTableForClipping[i]; 
			var oFrame = document.all[frameName];
			var oTable = document.all[tableName]; 
			
			oFrame.style.position = 'relative';
			oFrame.style.top = 0;
			oFrame.style.left = 0;
			oFrame.style.clip = "rect(auto)";
		}
	}
}

var objectForClipping = new Array();
var oTableForClipping = new Array();

function addIFrameForClipping(frameName, tableName){
    var count = objectForClipping.length;
    objectForClipping[count] = frameName;
    oTableForClipping[count] = tableName;
}