﻿/*
	www.gohackers.com - GNB 구성 by sc
*/

// 전역 상수
var XML_PATH = "/menu.xml";

var MENU_COLOR_ARR = ["#336596", "#C96600", "#A52C63", "#A5862C", "#666666", "#9E2F01", "#013366", "#006766", "#513F67", "#999966"];
var D1_NOW_IDX = getParam("d1_idx");
var D2_NOW_IDX = getParam("d2_idx");
var ID_VALUED = getParam("id");
var FK_VALUED = getParam("fk");
var NO_VALUED = getParam("no");
var TAB_ADCODE_ARR = ["35","37","38","36","39","40","41","42","43","44"];
// 전역 변수
var is_main;
var xml_http;
var d1_node;
var is_IE;

function initGNB(page)
{
	if (page == "main")
	{
		is_main = true;
	}
	else if (page == "sub")
	{
		is_main = false;
	}
	initXML();
}

// request 객체 생성
function createXMLHttpRequest()
{
	// [Windows] > IE4, IE5, IE6, IE7
	if (window.ActiveXObject)
	{
		try
		{
			xml_http = new ActiveXObject("Microsoft.XMLHTTP");
		}
		catch (e)
		{
			alert("Sorry for the inconvenient.\nPlease update your Web Browser.\nIf you're using Mac OS, we recommend the 'Safari'.");
		}
	}
	// [Windows, Mac, Linux] - Mozilla1, Firefox1, Opera8 / [Mac] - Safari1 / [Linux] - Konqueror3
	else if (window.XMLHttpRequest)
	{
		try
		{
			xml_http = new XMLHttpRequest();
		}
		catch (e)
		{
			alert("Sorry for the inconvenient.\nPlease update your Web Browser.\nIf you're using Mac OS, we recommend the 'Safari'.");
		}
	}
}

// XML 초기화
function initXML()
{
  createXMLHttpRequest();
  xml_http.onreadystatechange = XMLReadyHdlr;
  xml_http.open("GET", XML_PATH, true);
  xml_http.send(null);
}

// XML Ready 이벤트 핸들러
function XMLReadyHdlr()
{
  if (xml_http.readyState == 4)
  {
  	if (xml_http.status == 200)
  	{
			var xmlDoc = xml_http.responseXML;
			d1_node = xmlDoc.getElementsByTagName("d1");
			
			if (is_main)
			{
				initMenuForMain();
			}
			else
			{
			    
			    //9개매뉴만 보이도록 수정됨 2009.1.3(숨은메뉴생김)
			    var menuCnt = d1_node.length;
	            var menuCnt = 10;
	            //특파원만 예외처리 2009.12.28
	            if(ID_VALUED == 'hacdelegate' ){
            	    ID_VALUED = 'hacdelegates';
            	}
	            
            	for (var i=0; i < menuCnt; i++)            	
            	{
            	    var d2_node = d1_node[i].getElementsByTagName("d2");
            	    
            	    for (var j=0; j<d2_node.length; j++){
            	        var sequnce_id = d2_node[j].getAttribute("mid");
            	        
            	        if(ID_VALUED == sequnce_id){
            	        
            	            D1_NOW_IDX = i;
                            D2_NOW_IDX = j;
            	       
            	        }
            		   
            	    }
            	}
            	
            	//alert(ID_VALUED+''+D1_NOW_IDX+''+D2_NOW_IDX);
				initMenuForSub(D1_NOW_IDX,D2_NOW_IDX);
			}
		}
  }
}

// Main 메뉴 초기화
function initMenuForMain()
{
	var xhtml = "<div>";	
	var menuCnt = d1_node.length;
	var menuCnt = 10;
	
	
	for (var i=0; i < menuCnt; i++)	
	{
		//var href = d1_node[i].getAttribute("h");
		var href = d1_node[i].getAttribute("path");
		var r_margin = "";
		var l_float = "";
			l_float = "l-float";
		
		if (i < menuCnt - 1)
		{
			r_margin = "r-margin";
		}
		xhtml += "	<div class='" + l_float + " " + r_margin + "'>";
		//xhtml += "		<p class='b-margin'><a href='" + href + "' target='_top'><img src='/images/common/menu" + i + ".gif' alt='' /></a></p>";	    
        xhtml += "		<p class='b-margin'><a href='http://222.122.229.26/tracker_ad.tsp?u=120&mode=C&adCode="+TAB_ADCODE_ARR[i]+"' ><img src='http://222.122.229.26/tracker_ad.tsp?u=120&mode=I&adCode="+TAB_ADCODE_ARR[i]+"' border=0></a></p>";
    

		
		var d2_node = d1_node[i].getElementsByTagName("d2");
		
		for (var j=0; j<d2_node.length; j++)
		{
			//var href = d2_node[j].getAttribute("h");
			var h2 = d2_node[j].getAttribute("mid");
		    var pr = d2_node[j].getAttribute("pr");
		    var linkpage = d2_node[j].getAttribute("path");
		    
		    //var linkpage = "/html/move.htm?id="+h2;
		    /*
		    if(pr != null  && pr != ""){
		        linkpage += "&"+pr;
		    }
		    */
			//var text = d2_node[j].childNodes[0].nodeValue;
			var text = d2_node[j].getAttribute("desc");
			var bold_start = "";
			var bold_end = "";
			
			if (d2_node[j].getAttribute("b") == "y")
			{
				bold_start = "<b>";
				bold_end = "</b>";
			}
			xhtml += "		<p><a class='gnb' href='" + linkpage + "' target='_top'>" + bold_start + text + bold_end + "</a></p>";
			//"&d1_idx=" + i + "&d2_idx=" + j +
		}
		xhtml += "	</div>";
	}
	xhtml += "</div>";
	
	document.getElementById("gnb").innerHTML = xhtml;
}

// Sub 메뉴 초기화
function initMenuForSub(D1_NOW_IDX,D2_NOW_IDX)
{
 
    
	
	this.top.document.getElementById("gotop").onmouseout = docOutHdlr;
	
	var menuCnt = d1_node.length;
	var menuCnt = 10;
	var xhtml = "<div id='depth1-menu'>";
	
	for (var i=0; i < menuCnt; i++)
	{
		//var href = d1_node[i].getAttribute("h");
		var h2 = d1_node[i].getAttribute("mid");				
		var linkpage = d1_node[i].getAttribute("path");
		var pr = d1_node[i].getAttribute("pr");
		if(h2 != ""){
		    istarget = "_top";
		}else{
		    istarget = "gocontent";
		}
		/*    
		    if(pr != null && pr != ""){
		        linkpage += "&"+pr;
		    }
		*/    
		var r_margin = "";
		
		if (i < menuCnt - 1)
		{
			r_margin = "r-margin";
		}
		xhtml += "	<p class='l-float " + r_margin + "'><a href='" + linkpage + "' target='"+istarget+"'><img src='/images/common/menu" + i + ".gif' onmouseover='changeMenu(" + i + ");' alt='' /></a></p>";
	}
	xhtml += "</div>";
	xhtml += "<div id='depth2-menu'>";
	
	for (var i=0; i < menuCnt; i++)
	{
		var d2_node = d1_node[i].getElementsByTagName("d2");
		
		xhtml += "	<div id='depth2-menu" + i + "' style='display:none;'>";
		xhtml += "		<p>";
		
		for (var j=0; j<d2_node.length; j++)
		{
		    
			//var href = d2_node[j].getAttribute("h");
			var h2 = d2_node[j].getAttribute("mid");		    		    
		    var pr = d2_node[j].getAttribute("pr");
		    var linkpage = d2_node[j].getAttribute("path");
		    /*
		    if(pr != null  && pr != ""){
		        linkpage += "&"+pr;
		    }
		    */
		    if(h2 != ""){
		        istarget = "_top";
		    }else{
		        istarget = "gocontent";
		    }
			//var text = d2_node[j].childNodes[0].nodeValue;
			var text = d2_node[j].getAttribute("desc");
			var b_start = "";
			var b_end = "";
			var br = "";
			
			if (d2_node[j].getAttribute("b") == "y")
			{
				b_start = "<b>";
				b_end = "</b>";
			}
			
			if (d2_node[j].getAttribute("br") == "y")
			{
				br = "</p><p>";
			}
			
			xhtml += "			<a id='d2-menu" + i + "-" + j + "' class='gnb' href='" + linkpage  + "' target='"+istarget+"'>" + b_start + "<b>ㆍ</b>" + text + b_end + "</a>" + br;
			//+ "&d1_idx=" + i + "&d2_idx=" + j
		}
		xhtml += "		</p>";
		xhtml += "	</div>";
	}
	xhtml += "</div>";
	
	document.getElementById("gnb").innerHTML = xhtml;
	
	changeMenu(D1_NOW_IDX,D2_NOW_IDX);
}

// 탭 마우스 오버 -> 해당 탭으로 서브메뉴 변경
function changeMenu(d1_idx,d2_idx)
{
	if (!is_main)
	{
		if (d1_idx == null || d1_idx == "" || d1_idx == undefined)
		{
			d1_idx = 0;
		}
		var menuCnt = d1_node.length;
	    var menuCnt = 10;
	
		for (i=0; i < menuCnt; i++)
		{
			if (i != d1_idx)
			{
				document.getElementById("depth2-menu" + i).style.display = "none";
			}
		}
		document.getElementById("depth2-menu" + d1_idx).style.display = "block";
		subMenuDefaultSetting(d1_idx,d2_idx);
	}
}

// 서브메뉴 기본값 설정 (해당 페이지 표시)
function subMenuDefaultSetting(d1_idx,d2_idx)
{
	var txt_obj = document.getElementById("d2-menu" + d1_idx + "-" + d2_idx);
	var sub_line_obj = document.getElementById("depth2-menu");
	
	if (txt_obj)
	{
		txt_obj.style.color = MENU_COLOR_ARR[D1_NOW_IDX];
		txt_obj.style.fontWeight = "bold";
	}
	sub_line_obj.style.borderColor = MENU_COLOR_ARR[d1_idx];
}

// 마우스 아웃 -> 기본 탭으로 서브메뉴 변경
/*
function menuOutHdlr()
{
	changeMenu(D1_NOW_IDX);
}
*/


// document 마우스 아웃 핸들러

function docOutHdlr()
{
	changeMenu(D1_NOW_IDX);
}


// - 파라미터 받기 
function getParam(str)
{
	if (location.search)
	{
		var len = str.length;
		var tmp = location.search.split("?")[1];
		var tmp2 = tmp.split("&");
		
		for (var i=0; i< tmp2.length; i++)
		{
			if (tmp2[i].substr(0,len) == str)
			{
				var r = tmp2[i].split("=")[1];
				return r;
			}
		}
	}
	return "0";
}