
/**
* String °´Ã¼¿¡ trim() FunctionÀ» Ãß°¡ÇÑ´Ù.
* ¹®ÀÚ¿­ÀÇ ÁÂ¿ì °ø¹é Á¦°Å
*/
String.prototype.trim = function () {
	var s = (this!=null) ? this : "";
	s = s.replace(/^\s+/g,"");
	s = s.replace(/\s+$/g,"");
	return s;
}

/**
* String °´Ã¼¿¡ encodeParameter() FunctionÀ» Ãß°¡ÇÑ´Ù.
* ÆÄ¶ó¹ÌÅÍ·Î URLÀÌ µé¾î°¥¶§ Æ¯Á¤¹®ÀÚ¸¦ º¯È¯ÇÑ´Ù.
*/
String.prototype.encodeLoginParameter = function () {
	var s = (this!=null) ? this : "";
	s = s.replace(/&/g, "|");
	s = s.replace(/=/g, "@@");
	return s;
}

/**
* String °´Ã¼¿¡ decodeParameter() FunctionÀ» Ãß°¡ÇÑ´Ù.
* encodeµÈ ÆÄ¶ó¹ÌÅÍ¸¦ decode½ÃÅ²´Ù..
*/
String.prototype.decodeParameter = function () {
	var s = (this!=null) ? this : "";
	s = s.replace(/\|/g, "&").replace(/\@@/g, "=");
	return s;
}

/**
* String °´Ã¼¿¡ appendParameter() FunctionÀ» Ãß°¡ÇÑ´Ù.
* URL¿ëµµ·Î »ç¿ëµÇ´Â String °ª¿¡ ÆÄ¶ó¹ÌÅÍ¸¦ Ãß°¡ÇÑ´Ù.
*/
String.prototype.appendParameter = function (_param) {
	var s = (this!=null) ? this : "";
	if (_param!=undefined&&_param!="") {
		if (s.indexOf("?")>-1) {
			s += "&";
		} else {
			s += "?";
		}
		s += _param;
	}
	return s;
}

/**
* ÄíÅ° °´Ã¼ »ý¼º
*/
var Cookie = {
	get : function(_cookieName) {
		var cookieList = document.cookie.split(";");
		var cookieValue = "";
		for (i = 0; i < cookieList.length; i++) {
			if (cookieList[i].indexOf(_cookieName+"=") > -1) {
				if (cookieList[i].split("=")[0].replace(/\s/g,"") == _cookieName) {
					cookieValue = unescape(cookieList[i].split("=")[1]);
					break;
				}
			}
		}
		return cookieValue;
	}
}


/**
* request °´Ã¼¸¦ »ý¼ºÇÑ´Ù.
*/
var request = {
	host : location.host,
	pathname : location.pathname,
	search : unescape(location.search),
	reservedParam : "menuCode|trCode|uniqueCode|nextPage",
	getQuery : function() {
		var s = this.search;
		if (s.indexOf("?")==0) {
			s = s.substring(1);
		}
		return s;
	},
	getParameter : function(_name) {
		var q = this.search;
		if (q.length>1&&q.indexOf("?")>-1) q = q.substring(1,q.length);
		var param = q.split("&");
		var paramValue = "";
		for (var i=0; i<param.length; i++) {
			if (param[i].indexOf("=")>-1) {
				var pName = param[i].split("=")[0];
				var pValue = param[i].split("=")[1];
				if (pName==_name) {
					paramValue = pValue.trim();
					break;
				}
			}
		}
		return paramValue;
	},
	getUserParameter : function() {
		var q = this.search;
		if (q.length>1&&q.indexOf("?")>-1) q = q.substring(1,q.length);
		var param = q.split("&");
		var retParam = "";
		for ( var i=0; i<param.length; i++ ) 
		{
			if ( param[i].indexOf("=")>-1 ) 
			{
				var pName = param[i].split("=")[0];
				var pValue = param[i].split("=")[1];
				if ( this.reservedParam.indexOf(pName) == -1 )
				{
					if ( retParam == "" )
						retParam += pName+"="+unescape(pValue);
					else
						retParam += "&"+pName+"="+unescape(pValue);
				}
			}
		}
		return retParam;
	}
};



/**
* VTS ¿©ºÎ
* µµ¸ÞÀÎ¿¡ "vts"¸¦ Æ÷ÇÔÇÏ°íÀÖ´ÂÁö ¿©ºÎ¿¡ µû¶ó true, false¸¦ ¹ÝÈ¯ÇÑ´Ù.
*/
var IS_VTS_WEB = (request.host.indexOf("vts")>-1||request.pathname.indexOf("/ctx_vts/")==0);
try {
	if (!IS_VTS_WEB) {
		IS_VTS_WEB = (top.location.pathname.indexOf("/ctx_vts/")==0);
	}
} catch(e) {
	
}



/**
* DSMenu °´Ã¼ »ý¼º
*/
var DSMenu = {
	instanceName : "DSMenu",
	menu : [],
	menuCodeMap : {},
	uniqueCodeMap : {},
	trCodeMap : {},
	frameValue : {
		T : "top",
		F : "top.main",
		I : "top.main.content"
	},
	url : {
		intro : "/ctx_kr/svc_intro/main.shtml",
		contents : "/contents.jsp",
		vtsContents : "/ctx_vts/contents_vts.jsp",
		certCenter : "/ctx_kr/sc_common/sg_wts_cert/svc_cert/goCertCenter.jsp",
		loginF : "/contents.jsp?uniqueCode=200710011747060304",
		login : "/ctx_kr/sc_common/sg_wts_cert/svc_signon/signon_input.jsp",
		logout : "/ctx_kr/sc_common/sg_wts_cert/svc_signon/signoff.jsp",
		//vtsHome : "/ctx_vts/",
		vtsHome : "http://vtsweb.daishin.co.kr/",
		webHome : (IS_VTS_WEB) ? "http://www.daishin.co.kr/" : "/index.html",
		dialog : {
			goVtsHome : "/ctx_kr/sc_common/sg_resource/svc_html/dlgGoVTS.html",
			goWebHome : "/ctx_kr/sc_common/sg_resource/svc_html/dlgGoWWW.html"
		}
	},
	msg : {
		NO_MENU_CODE : "¸Þ´ºÄÚµå°¡ ¾ø°Å³ª Àß¸øµÈ ¸Þ´ºÄÚµåÀÔ´Ï´Ù.",
		NO_URL_FROM_MENU_CODE : "ÇØ´ç ¸Þ´ºÄÚµå¿¡ ÇØ´çÇÏ´Â URLÀÌ Á¤ÀÇµÇÁö ¾Ê¾Ò½À´Ï´Ù.",
		BAD_TARGET : "¿Ã¹Ù¸¥ TargetÀÌ ¾Æ´Õ´Ï´Ù.",
		ERROR_CERT_CENTER : "°í°´´Ô²²¼­´Â ÇöÀç ¸â¹ö ID·Î ·Î±×ÀÎµÇ¾î ÀÖ½À´Ï´Ù.\nÀÎÁõ¼¾ÅÍ¸¦ ÀÌ¿ëÇÏ±â À§ÇØ¼­´Â ·Î±×¾Æ¿ôÇÏ½Å ÈÄ¿¡ ´Ù½Ã ÀÌ¿ëÇØÁÖ½Ã±â ¹Ù¶ø´Ï´Ù."
	},
	curMenuInfo : {},
	
	/**
	* ¸Þ´º UI °´Ã¼¸¦ °¡Á®¿Â´Ù.
	* @return DSMenuUI °´Ã¼
	*/
	getDSMenuUI : function() {
		var isExist = true;
		var instanceName = "DSMenuUI";
		try {
			this.getFrame("F")[instanceName].isExist();
		} catch(e) {
			isExist = false;
		}
		return (isExist) ? this.getFrame("F")[instanceName] : null;
	},
	
	/**
	* ÄÚµå¿¡ ¸Â´Â ÇÁ·¹ÀÓÀ» ¸®ÅÏÇÑ´Ù.
	* @param _frameMode ÇÁ·¹ÀÓ¸ðµå(F:ÅëÇÁ·¹ÀÓ, I:ÄÁÅÙÃ÷¿µ¿ª iframe)
	* @return Frame°´Ã¼
	*/
	getFrame : function(_frameMode) {
		return eval(this.frameValue[_frameMode]);
	},
	
	
	/**
	* DSMenu °´Ã¼°¡ »ý¼ºµÇ¾ú´ÂÁö ¿©ºÎ¸¦ ¾Ë·ÁÁØ´Ù.
	* ÇÁ·¹ÀÓÀ» Àß¸øÃ£°Å³ª °´Ã¼°¡¾øÀ¸¸é ExceptionÀ» ¹ß»ý½ÃÅ²´Ù.
	* @return boolean
	*/
	isExist : function() {
		return true;
	},
	
	
	/**
	* TRÄÚµå·Î ÇØ´ç ¸Þ´ºÄÚµå¸¦ °¡Á®¿Â´Ù.
	* @param _trCode TRÄÚµå
	* @return String
	*/
	getMenuCodeFromTrCode : function(_trCode) {
		var menuCode = "";
		try {
			if (this.trCodeMap[_trCode][0]) {
				menuCode = this.trCodeMap[_trCode][0];
			}
		} catch(e) { }
		return menuCode;
	},
	
	
	/**
	* °íÀ¯ÄÚµå·Î ÇØ´ç ¸Þ´ºÄÚµå¸¦ °¡Á®¿Â´Ù.
	* @param _uniqueCode °íÀ¯ÄÚµå
	* @return String
	*/
	getMenuCodeFromUniqueCode : function(_uniqueCode) {
		var menuCode = "";
		if (this.uniqueCodeMap[_uniqueCode]) {
			menuCode = this.uniqueCodeMap[_uniqueCode];
		}
		return menuCode;
	},
	
	/**
	* ¸Þ´ºÄÚµå¿¡ ´ã±ä Á¤º¸¸¦ Object·Î ¸®ÅÏÇÑ´Ù.(µª½ºÁ¤º¸¿Í ºÎ¸ð¸Þ´º Á¤º¸)
	* @param _menuCode ¸Þ´ºÄÚµå
	* @return Object
	*/
	getMenuCodeInfo : function(_menuCode) {
		var menu = null;
		var length = _menuCode.length;
		if (length>=2) {
			var parentMenuCode = [];
			var menuCode = _menuCode;
			var depth = 1;
			if (length>=4) {
				depth = 2;
				parentMenuCode.push(menuCode.substring(0,2));
				if (length>=6) {
					depth = 3;
					parentMenuCode.push(menuCode.substring(0,4));
					if (length>=8) {
						depth = 4;
						parentMenuCode.push(menuCode.substring(0,6));
						if (length==10) {
						depth = 5;
						parentMenuCode.push(menuCode.substring(0,8));
					}
					}
				}
			}
			menu = {
				menuCode : menuCode,
				depth : depth,
				parentMenuCode : parentMenuCode
			};
		}
		return menu;
	},
	
	
	/**
	* ¸Þ´º ArrayÀÇ Index Á¤º¸¸¦ ¸®ÅÏÇÑ´Ù.
	* @param _menuCode ¸Þ´ºÄÚµå
	* @return String
	*/
	getMenuIndex : function(_menuCode) {
		return this.menuCodeMap[_menuCode];
	},
	
	
	/**
	* ¸Þ´º °´Ã¼¸¦ ¸®ÅÏÇÑ´Ù.
	* @param _menuCode ¸Þ´ºÄÚµå
	* @return Object
	*/
	getMenu : function(_menuCode) {
		var menuIndex = this.getMenuIndex(_menuCode);
		return (menuIndex!=undefined) ? eval("this.menu["+menuIndex.replace(/,/g,"].childMenu[")+"]") : null;
	},
	
	/**
	* ¸Þ´ºµ¥ÀÌÅÍ¸¦ Ãß°¡ÇÑ´Ù.
	* @param _menuCode ¸Þ´ºÄÚµå
	* @param _title ¸Þ´º¸í
	* @param _url ¸µÅ©
	* @param _needLogin ·Î±×ÀÎÃ¼Å© (0, 1)
	* @param _needEnc ÇÔÈ£È­¿©ºÎ (0, 1)
	* @param _needWrts ½Ç½Ã°£¿©ºÎ (0, 1)
	* @param _wtsGrade Á¢±Ù±ÇÇÑ ("", "0", "1", "2")
	* @param _target ("F":ÀüÃ¼È­¸é, "I":iframe)
	* @param _uniqueCode ¸Þ´º°íÀ¯ÄÚµå
	* @param _helpName µµ¿ò¸»Á¤º¸
	* @param _trCode trÄÚµå
	* @param _gnbType GNBÅ¸ÀÔ (0:GNB, 1:Util¸Þ´º, 2:µ¶¸³¸Þ´º, 3:ÀÏ¹Ý¸Þ´º)
	* @param _nodeType ³ëµåÅ¸ÀÔ (0:Virtual, 1:Node, 2:Parent)
	* @param _childType ÇÏÀ§¸Þ´ºÅ¸ÀÔ ("","T","D")
	*/
	push : function(_menuCode, _title, _url, _needLogin, _needEnc, _needWrts, _wtsGrade, _target, _uniqueCode, _helpName, _trCode, _gnbType, _nodeType, _childType) {
		
		var menuCodeInfo = this.getMenuCodeInfo(_menuCode);
		
		// Menu Class
		var menu = {
			menuCode : _menuCode,
			title : _title,
			url : _url,
			needLogin : (_needLogin==1),
			needEnc : (_needEnc==1),
			needWrts : (_needWrts==1),
			wtsGrade : _wtsGrade,
			target : _target,
			uniqueCode : _uniqueCode,
			helpName : _helpName,
			trCode : _trCode,
			gnbType : _gnbType,
			nodeType : _nodeType,
			isNotGnbMode : false,
			isVirtual : false,
			depth : menuCodeInfo.depth,
			parentMenuCode : menuCodeInfo.parentMenuCode,
			childMenu : null,
			childType : _childType,
			showProperty : function() {
				var s = "";
				var i = 0;
				for (prop in this ){
					if (prop+""!="showProperty") {
						if (i++>0) s += "\n";
						s += "- " + prop + " : ";
						if (prop+""=="childMenu") {
							try {
								s += this[prop].toString().split(",").length + "°³";
							} catch(e) {
								s += "¾øÀ½";
							}
						} else {
							s += this[prop];
						}
					}
				}
				return s;
			}
		};
		
		// menu.isNotGnbMode Setting.
		if (menu.parentMenuCode.length>0) {
			menu.isNotGnbMode = this.getMenu(menu.parentMenuCode[0]).isNotGnbMode;
		} else {
			if (menu.gnbType==2) {
				menu.isNotGnbMode = true;
			}
		}
		
		// menu.isVirtual Setting.
		if (menu.nodeType==0) {
			menu.isVirtual = true;
		}
		
		// Add Menu
		var menuIndex = "";
		if (menu.depth>1) {
			var parentMenuCode = menu.parentMenuCode[menu.depth-2];
			var parentMenu = this.getMenu(parentMenuCode);
			if (parentMenu) {
				if (parentMenu.childMenu==null) {
					parentMenu.childMenu = [];
				}
				menuIndex = this.menuCodeMap[parentMenuCode] + "," + (parentMenu.childMenu.push(menu)-1);
			}
			parentMenu = null; 
		} else {
			menuIndex = (this.menu.push(menu)-1);
		}
		this.menuCodeMap[menu.menuCode] = menuIndex + "";
		
		// Unique Code Map setting.
		if (menu.uniqueCode!="") {
			this.uniqueCodeMap[menu.uniqueCode] = menu.menuCode;
		}
		
		// TR Code Map setting.
		if (menu.trCode!="") {
			if (this.trCodeMap[menu.trCode]==undefined) {
				this.trCodeMap[menu.trCode] = [];
			}
			this.trCodeMap[menu.trCode].push(menu.menuCode);
		}
		
		menu = null;
		menuCodeInfo = null;
	},
	
	goRefresh : function() {
		this.goPage(this.curMenuInfo._menuCode, this.curMenuInfo._param, this.curMenuInfo._url);
	},
	
	/**
	* ÇØ´ç¸Þ´º·Î ÀÌµ¿ÇÑ´Ù.
	* @param _menuCode ¸Þ´ºÄÚµå
	* @param _param ÆÄ¶ó¹ÌÅÍ
	* @param _url ÀÓÀÇÀÇ URL
	*/
	goPage : function(_menuCode, _param, _url) {

		var url = "";
		var parameter = (_param!=undefined) ? _param : "";
		var menu = (_menuCode!="") ? this.getMenu(_menuCode) : null;
		
		this.curMenuInfo = {_menuCode:_menuCode, _param:_param, _url:_url};
		
		var inst = this.getDSMenuUI();
		try{this.getDSMenuUI().hideLoadingBar();}catch(e){}
		
		var alertMsg="[DSMenu.class.js-goPage]\n\n";
		alertMsg += "[menu.target]=" + menu.target+"\n\n[menuCode]=" + _menuCode+"\n\n[param]="+_param+"\n\n[url]="+_url+"\n\n[currentMenuTarget]="+currentMenuTarget+"\n\n[currentMenuParentMenuCode]="+currentMenuParentMenuCode;
		
		if (menu) {

			if (menu.url!="") {
				
				//·Îµù¹Ù
				if(menu.target == "I")
				{
					//javascript:aa();
					//inst.timerLoadingBar = window.setTimeout(function(){ try{inst.showLoadingBar(inst);} catch(e){} }, 2 * 1000);
					//window.setTimeout(function(){ try{inst.hideLoadingBar(inst);} catch(e){} }, 30 * 1000);
					var temp_url = menu.url;
					
					// ´Ù¸¥ µµ¸ÞÀÎÀÌ³ª javascript ·Î ½ÇÇàµÇ´Â °æ¿ì´Â loding bar Å¸ÀÓ¾Æ¿ô ¼³Á¤À» 0.5ÃÊ·Î ÁöÁ¤
					if(temp_url.charAt(0) == "/"){
						try{inst.showLoadingBar(inst);} catch(e){}
						
						window.setTimeout(function(){ try{inst.hideLoadingBar(inst);} catch(e){} }, 10 * 1000);
					}else{
						//try{inst.showLoadingBar(inst);} catch(e){}
						
						//window.setTimeout(function(){ try{inst.hideLoadingBar(inst);} catch(e){} }, 0.5 * 1000);
					}
				}
				
				var currentMenuTarget = "";
				var currentMenuParentMenuCode = "";
				try { currentMenuTarget = this.getDSMenuUI().currentMenu.target; } catch(e) { }
				try { currentMenuParentMenuCode = this.getDSMenuUI().currentMenu.parentMenuCode[0]; } catch(e) { }
				
				
				
				if (menu.target=="F") {
					// ÀÌµ¿ÇÒ ¸Þ´ºÀÇ Å¸°ÙÀÌ F ÀÎ °æ¿ì.
					this.goContentsPage(_menuCode, _param, _url);
					
					alertMsg += "\n\nÀÌµ¿ÇÒ ¸Þ´ºÀÇ Å¸°ÙÀÌ F ÀÎ °æ¿ì";
					alertMsg += "\n\ngoContentsPage(_menuCode, _param, _url) call";
					try{log(alertMsg);}catch(e){}
					
				} else if (currentMenuTarget=="F"&&menu.target=="I") {
					// ÇöÀç ¸Þ´º´Â Å¸°ÙÀÌ F ÀÌ°í ÀÌµ¿ÇÒ ¸Þ´º´Â Å¸°ÙÀÌ I ÀÎ °æ¿ì.
					url = this.url.contents.appendParameter("menuCode="+menu.menuCode).appendParameter(parameter);
					
					if (_url!=undefined&&_url!="") {
						url = url.appendParameter("url="+escape(_url));

					}
					
					alertMsg += "\n\nÇöÀç ¸Þ´º´Â Å¸°ÙÀÌ F ÀÌ°í ÀÌµ¿ÇÒ ¸Þ´º´Â Å¸°ÙÀÌ I ÀÎ °æ¿ì";
					alertMsg += "\n\n[url]="+url;
					alertMsg += "\n\ngoToThisLink(url, F) call";
					try{log(alertMsg);}catch(e){}
					
					//alert(url);
					this.goToThisLink(url, "F");
				}  else if (currentMenuParentMenuCode!=menu.parentMenuCode[0]&&menu.target=="I") {
					// ÇöÀç ¸Þ´º¿Í ÀÌµ¿ÇÒ ¸Þ´º ¸ðµÎ Å¸°ÙÀÌ I ÀÌ³ª 1µª½º ÄÚµå°¡ ´Ù¸¦ °æ¿ì.
					url = this.url.contents.appendParameter("menuCode="+menu.menuCode).appendParameter(parameter);
					
					if (_url!=undefined&&_url!="") {
						url = url.appendParameter("url="+escape(_url));
					}
					
					alertMsg += "\n\nÇöÀç ¸Þ´º¿Í ÀÌµ¿ÇÒ ¸Þ´º ¸ðµÎ Å¸°ÙÀÌ I ÀÌ³ª 1µª½º ÄÚµå°¡ ´Ù¸¦ °æ¿ì";
					alertMsg += "\n\n[url]="+url;
					alertMsg += "\n\ngoToThisLink(url, F) call";
					try{log(alertMsg);}catch(e){}
					
					this.goToThisLink(url, "F");
				} else {
					
					alertMsg += "\n\nÇöÀç ¸Þ´º¿Í ÀÌµ¿ÇÒ ¸Þ´º ¸ðµÎ Å¸°ÙÀÌ I ÀÌ°í 1µª½º ÄÚµå°¡ °°À» °æ¿ì";
					alertMsg += "\n\n[url]="+_url;
					alertMsg += "\n\ngoContentsPage(_menuCode, _param, _url) call";
					try{log(alertMsg);}catch(e){}
					// ÇöÀç ¸Þ´º¿Í ÀÌµ¿ÇÒ ¸Þ´º ¸ðµÎ Å¸°ÙÀÌ I ÀÌ°í 1µª½º ÄÚµå°¡ °°À» °æ¿ì.
					this.goContentsPage(_menuCode, _param, _url);
					
					// DSMenuUI ÀÇ UI ¼ÂÆÃ ¸Þ¼­µå¸¦ È£Ãâ
					try { this.getDSMenuUI().resetCurrentMenu(_menuCode); } catch(e) { }
					try { this.getFrame("F").scrollTo(0,0); } catch(e) { }
				}
			} else {
				try {
					alertMsg += "\n\nmenu is null [menu.childMenu[0].menuCode - " + menu.childMenu[0].menuCode +" ]";
					alertMsg += "\n\ngoPage(_menuCode, _param, _url) call";
					try{log(alertMsg);}catch(e){}
					this.goPage(menu.childMenu[0].menuCode, _param, _url);
				} catch(e) {
					alert("["+menu.menuCode+"] "+this.msg.NO_URL_FROM_MENU_CODE);
				}
			}
		} else {
			alert(this.msg.NO_MENU_CODE);
		}
		menu = null;
	},
	
	
	/**
	* ·Î±×ÀÎÇÑ »ç¿ëÀÚÀÇ Á¤º¸¿Í ¸Þ´ºÀÇ Á¢±Ù±ÇÇÑ µîÀ» ºñ±³ÇÏ¿©
	* ·Î±×ÀÎ ÆäÀÌÁö·Î ÀÌµ¿ÇÒ Áö ¿©ºÎ¸¦ ÄÚµå·Î ¹ÝÈ¯ÇÑ´Ù.
	* return °ªÀÌ nullÀÌ¸é Á¤»ó
	* return °ªÀÌ nullÀÌ ¾Æ´Ï¸é ¸Þ´º Á¢±Ù±ÇÇÑÀÌ ¾øÀ¸¹Ç·Î ·Î±×ÀÎ ÆäÀÌÁö·Î ÀÌµ¿½ÃÄÑ¾ß ÇÔ.
	* @param _menuCode ¸Þ´ºÄÚµå
	* @return String ·Î±×ÀÎ ¸Þ½ÃÁö ÄÚµå
	*/
	getLoginMsgCode : function(_menuCode) {
		var loginMsgCode = null;
		var menu = (_menuCode!="") ? this.getMenu(_menuCode) : null;
		if (menu) {
			if (menu.needLogin) {
				if (!this.isLogin()) {
					// ·Î±×ÀÎÀÌ ¾ÈµÈ °æ¿ì
					loginMsgCode = "";
				}
				/* 2010.04.06 hwseo ÁØÈ¸¿øµµ ½Ã¼¼¿Í µ¿ÀÏÇÏ°Ô ±ÇÇÑ Ã¼Å©..
				else {
					if (!this.isAccountUser(menu.wtsGrade)) {
						// °èÁÂ ·Î±×ÀÎÀÌ ÇÊ¿äÇÑ ¸Þ´ºÀÏ °æ¿ì
						loginMsgCode = "2";
					}
				}
				*/
			}
			if (!this.isAllowedMenu(menu.wtsGrade)) {
				// ·Î±×ÀÎÀº µÇ¾úÀ¸³ª ¸Þ´º Á¢±Ù±ÇÇÑÀÌ ¾ø´Â °æ¿ì
				var userWtsGrade = Cookie.get("WtsGrade");
				loginMsgCode = userWtsGrade;
			}
		}
		menu = null;
		return loginMsgCode;
	},
	
	
	/**
	* ÇØ´ç¸Þ´º ÆäÀÌÁö·Î ÀÌµ¿ÇÑ´Ù.
	* @param _menuCode ¸Þ´ºÄÚµå
	* @param _param ÆÄ¶ó¹ÌÅÍ
	* @param _url ÀÓÀÇÀÇ URL
	*/
	goContentsPage : function(_menuCode, _param, _url) {
		var menu = (_menuCode!="") ? this.getMenu(_menuCode) : null;
		if (menu) {
			var loginMsgCode = this.getLoginMsgCode(_menuCode);
			if (loginMsgCode!=null) {
				this.goLoginPage(_menuCode, _param, loginMsgCode, _url);
			} else {
				var parameter = (_param!=undefined) ? _param : "";
				
				//°­Á¦·Î±×ÀÎ Ã¼Å©ÇÏ¿© ·Î±×ÀÎÆäÀÌÁö·Î ÀÌµ¿ÇÑ´Ù. 2010.08.26 hwseo
				if ( this.isForceLogin(parameter) )
				{
					this.goLoginPage(_menuCode, _param, "", _url);
					return;
				}
				
				var url = (_url==undefined||_url=="") ? menu.url : unescape(_url);
				if (url.toLowerCase().indexOf("javascript:")!=0) {
					if (menu.target=="F") {
						url = url.appendParameter("menuCode="+menu.menuCode);
					}
					url = url.appendParameter(parameter);
				}
				try{log("[DSMenu.class.js-goContentsPage]\n\n[menu.trCode]="+menu.trCode+"\n\n[param._url]="+url+"\n\n[menu.url]="+menu.url+"\n\n[menu.target]="+menu.target);}catch(e){}
				this.goToThisLink(this.getEncUrl(url, menu.needEnc), menu.target);
			}
		}
		menu = null;
	},
	
	/**
	* °­Á¦·Î ·Î±×ÀÎÇØ¾ßµÇ´ÂÁö ¿©ºÎ È®ÀÎ
	* @param _param ÆÄ¶ó¹ÌÅÍ
	* gateway.jsp?needLogin=trueÀÌ¸é ¹Ì»çÀÎ¿Â½Ã °­Á¦·Î »çÀÎ¿Â»çÅ²´Ù..
	* 2010.08.26 hwseo
	*/
	isForceLogin : function(_param) {
		if ( !this.isLogin() ) 
		{
			var needLogin = "needLogin";
			if ( _param.indexOf(needLogin) != -1 )
			{
				var param = _param.split("&");
				var needLoginValue = "";
				for (var i=0; i<param.length; i++) 
				{
					if (param[i].indexOf("=")>-1) {
						var pName = param[i].split("=")[0];
						var pValue = param[i].split("=")[1];
						if ( pName == needLogin )
						{
							needLoginValue = pValue.trim();
							break;
						}
					}
				}
				if ( needLoginValue == "true" )
				{
					return true;
				}
			}
		}
		return false;
	},
	
	
	/**
	* ·Î±×ÀÎ ÆäÀÌÁö·Î ÀÌµ¿ÇÑ´Ù.
	* @param _menuCode ¸Þ´ºÄÚµå
	* @param _param ÆÄ¶ó¹ÌÅÍ
	* @param _msgCode ¿¡·¯¸Þ¼¼Áö ÄÚµå
	* @param _url ÀÓÀÇÀÇ URL
	*/
	goLoginPage : function(_menuCode, _param, _msgCode, _url) {
		var parameter = (_param!=undefined) ? _param : "";
		var menu = (_menuCode!=undefined&&_menuCode!="") ? this.getMenu(_menuCode) : null;
		var url = "";
		if (menu) {
			var encCommand = (menu.needEnc) ? "yes" : "no";
			url = (_url==undefined||_url=="") ? menu.url : _url;
			var returnUrl = (menu.target!="F") ? url : url.appendParameter("menuCode="+menu.menuCode);
			returnUrl = returnUrl.appendParameter(parameter).encodeLoginParameter();
			url = (menu.target!="F") ? this.url.login : this.url.loginF;
			url = url.appendParameter("target="+menu.target);
			url = url.appendParameter("msgGB="+_msgCode);
			url = url.appendParameter("isEnc="+encCommand);
			url = url.appendParameter("nextPage="+returnUrl);
			url = url.appendParameter(_param);//2010.08.20 hwseo gateway.jsp¿¡¼­ µé¾î¿Ã°æ¿ì
			var signoff = this.isLogin() ? "false" : "true";
			url = url.appendParameter("signoff="+signoff);
			
			try{log("[DSMenu.class.js-goLoginPage]\n\n[menu.trCode]="+menu.trCode+"\n\n[url]="+url+"\n\n[nextPage]="+nextPage);}catch(e){}
			
			this.goToThisLink(this.getEncUrl(url, (menu.target!="F")), menu.target);
		} else {
			if (!this.isVtsWeb()) {
				
				if (this.isLogin())//»çÀÎ¿ÂµÇ¾îÀÖÀ¸¸é.. 2010.01.21 hwseo. believe¿Í ¼¼¼Ç°øÀ¯¶«½Ã..
				{
					try
					{
						//¼¼¼ÇÀÌ Á¸ÀçÇÏ´ÂÁö Ã¼Å©
						var sessionCheck = memberLoginCheck();
					
						if(sessionCheck == "1" || sessionCheck == "2") {
							this.getFrame("F").goPage_TrCode("banking.main", "", "");
						}
						else {
							this.goToThisLink(this.getEncUrl(this.url.loginF, false), "F");
						}
					} catch (e) {
					// Exception 9_;}=C 7N1W@N H-8i@87N 2010.10.28 by jmkim
						this.goToThisLink(this.getEncUrl(this.url.loginF, false), "F");
					}
				}
				else
				{
					this.goToThisLink(this.getEncUrl(this.url.loginF, false), "F");
				}
			} else {
				this.goVtsPage(this.getEncUrl(this.url.login.appendParameter("isEnc=no"), true));
			}
		}
		menu = null;
	},
	
	
	/**
	* ·Î±×ÀÎ ÆäÀÌÁö·Î ÀÌµ¿ÇÑ´Ù.
	* ¸Þ´ºÄÚµå ¾øÀÌ Æ¯Á¤ URL·Î ¸®ÅÏÇÒ °æ¿ì
	* @param _returnUrl µ¹¾Æ¿Ã URL
	* @param _needEnc ¾ÏÈ£È­¿©ºÎ
	* @param _target Å¸°Ù (F, I)
	*/
	goLoginPageWithoutMenuCode : function(_returnUrl, _needEnc, _target) {
		if (_returnUrl==undefined) _returnUrl = "";
		if (_target!=undefined) _target = "I";
		var returnUrl = _returnUrl.encodeLoginParameter();
		var encCommand = (_needEnc) ? "yes" : "no";
		var url = this.url.login;
		url = url.appendParameter("isEnc="+encCommand);
		url = url.appendParameter("nextPage="+returnUrl);
		var signoff = this.isLogin() ? "false" : "true";
		url = url.appendParameter("signoff="+signoff);
		this.goToThisLink(this.getEncUrl(url, true), _target);
	},
	
	
	/**
	* ÇØ´ç¸Þ´º ÆäÀÌÁö·Î ÀÌµ¿ÇÑ´Ù.
	* @param _url URL
	* @param _needEnc ¾ÏÈ£È­ ¿©ºÎ
	*/
	getEncUrl : function(_url, _needEnc) {
		return (_needEnc) ? this.getFrame("F").EncLocation(_url) : _url;
	},
	
	
	/**
	* ÀÓÀÇÀÇ URL·Î ÁöÁ¤ÇÑ Å¸°Ù¿¡¼­ ÀÌµ¿ÇÑ´Ù.
	* @param _url URL
	* @param _target Å¸°Ù (F,I)
	*/
	goToThisLink : function(_url, _target) {
		if (_target==undefined) _target = "I";
		try {
			try{log("[DSMenu.class.js-goToThisLink]\n\n[url]="+_url+"\n\n[target]="+_target);}catch(e){}
			this.getFrame(_target).location.href = _url;
		} catch(e) {
			alert(this.msg.BAD_TARGET + "[DSMenu.goToThisLink()]");
		}
	},
	
	
	/**
	* ·Î±×ÀÎ ¿©ºÎ¸¦ Ã¼Å©ÇÑ´Ù.
	* @return boolean
	*/
	isLogin : function() {
		return (this.isLoginSkipUser() || this.isLoginUser());
	},
	
	
	/**
	* À¥¿¡¼­ ·Î±×ÀÎÇÑ »ç¿ëÀÚ ÀÎÁö¸¦ Ã¼Å©ÇÑ´Ù.
	* ÁÂÃø ¸Þ´º ·Î±×ÀÎ ¿µ¿ª µîÀ» Ç¥½ÃÇÏ±âÀ§ÇØ »ç¿ë
	* ÄÁÅÙÃ÷ ¿µ¿ª¸¸ ¿ÜºÎ¿¡ Á¦°øÇÒ¶§´Â isLoginSkipUser()µµ °í·ÁÇØ¾ßÇÏÁö¸¸
	* È¨ÆäÀÌÁöÀÇ UI¸¦ ±¸¼ºÇÒ ?´Â isLoginSkipUser()´Â ¹«½ÃÇØ¾ßÇÔ.
	* @return boolean
	*/
	isLoginUser : function() {
		return (Cookie.get("DSToken")=="DASSSignOn_OK");
	},
	
	
	/**
	* ¼¼¼ÇÃ¼Å© skip¿ë ¸ÅÃ¼È®ÀÎ
	* ¼¼¼ÇÃ¼Å©ºÎºÐ skip À» À§ÇÑ ¸ÅÃ¼±¸ºÐ ÄíÅ°°¡ ¼³Á¤µÇ¾îÀÖ´ÂÁö
	* ¿©ºÎ¸¦ °Ë»çÇÏ¿© À¥ÀÌ¿ÜÀÇ ¸ÅÃ¼±¸ºÐ°ªÀÌ ¼³Á¤µÇ¾îÀÖ´ÂÁö °á°ú¸¦ µ¹·ÁÁØ´Ù.
	* @return boolean
	*/
	isLoginSkipUser : function() {
	    var s = Cookie.get("M_GB");
		return (s!=null && s!="" && s!="\"\"" && s!="51");// s!="\"\"" Ãß°¡ 2010.01.22 hwseo
	},
	
	
	/**
	* WtsGrade È®ÀÎ.
	* ÇöÀç ¿äÃ»µÈ È­¸éÀÌ Á¶È¸Àü¿ëÀ» Çã¿ëÇÏ´ÂÁö ¿©ºÎ È®ÀÎ
	* ÇöÀç´Â wtsGrade°¡ '':ÀÏ¹Ý, '0':ÅõÀÚÁ¤º¸ ÀÎ°æ¿ì¸¸ Çã¿ëÇÑ´Ù.
	* ¼¼¼ÇÃ¼Å© skip¿ë ¸ÅÃ¼°¡ ¾Æ´Ï°í && Á¶È¸Àü¿ë ·Î±×ÀÎ½Ã È­¸é º¸¿©ÁÙ ¼ö ¾øÀ½. (false)
	* @return boolean
	* 2010.04.06 hwseo »çÀÎ¿Â, ¸Þ´º±ÇÇÑÃ¼Å©..
	*/
	isAllowedMenu : function(_menuWtsGrade) {
		var userWtsGrade = Cookie.get("WtsGrade");
		if (userWtsGrade=="") userWtsGrade = "-1";
		if (_menuWtsGrade=="") _menuWtsGrade = "-1";
		//return !(!this.isLoginSkipUser() && userWtsGrade!="-1" && parseInt(userWtsGrade, 10)<parseInt(_menuWtsGrade, 10));
		
		if ( this.isLoginSkipUser() )
			return true;
		else
		{		
			if ( userWtsGrade == "-1" )//id,pass
			{
				return true;
			}
			else if ( userWtsGrade == "0" )//½Ã¼¼
			{
				if ( ( _menuWtsGrade == "-1" || _menuWtsGrade == "0" ) )//ÀÏ¹Ý, ÅõÀÚ½Ã¼¼
					return true;
			}
			else if ( userWtsGrade == "1" )//Á¶È¸¼º
			{
				if ( ( _menuWtsGrade == "-1" || _menuWtsGrade == "0" || _menuWtsGrade == "1" ) )//ÀÏ¹Ý, ÅõÀÚ½Ã¼¼, Á¶È¸¼º
					return true;
			}
			else if ( userWtsGrade == "2" )//ÁÖ¹®¼º
			{
				if ( ( _menuWtsGrade == "-1" || _menuWtsGrade == "0" || _menuWtsGrade == "1" || _menuWtsGrade == "2" ) )//ÀÏ¹Ý, ÅõÀÚ½Ã¼¼, Á¶È¸¼º, ÁÖ¹®¼º
					return true;
			}
			else if ( userWtsGrade == "3" )//ÀÎÁõ¼­
			{
				if ( ( _menuWtsGrade == "-1" || _menuWtsGrade == "0" || _menuWtsGrade == "1" ) )//ÀÏ¹Ý, ÅõÀÚ½Ã¼¼, Á¶È¸¼º
					return true;
			}
			else if ( userWtsGrade == "4" )//ÁØÈ¸¿ø
			{
				if ( ( _menuWtsGrade == "-1" || _menuWtsGrade == "0" ) )//ÀÏ¹Ý, ÅõÀÚ½Ã¼¼
					return true;
			}
		}
		return false;
	},
	
	
	/**
	* ·Î±×ÀÎ ±¸ºÐ È®ÀÎ
	* loginGB °ªÀÌ "Member"ÀÎ ¸â¹ö·Î±×ÀÎÇÑ °æ¿ì¿¡´Â
	* È­¸é wtsGrade°¡ 0,1,2 ÀÎ °æ¿ì´Â ÀÌ¿ëºÒ°¡. (°èÁÂ·Î±×ÀÎ ÇÊ¿ä)
	* @return boolean
	*/
	isAccountUser : function(_menuWtsGrade) {
		var loginGB = getDSCookie("loginGB");
		
		if(_menuWtsGrade == "") _menuWtsGrade = "-1";
		
		return !(!this.isLoginSkipUser() && loginGB=="Member" && parseInt(_menuWtsGrade, 10)>-1);
	},
	
	
	/**
	* ·Î±×¾Æ¿ô ÆäÀÌÁö·Î ÀÌµ¿ÇÑ´Ù.
	*/
	goLogoutPage : function(_param) {
		var url = this.url.logout;
		if (_param!=undefined) {
			url = url.appendParameter(_param);
		}
		if (!this.isVtsWeb()) {
			url = url.appendParameter("target=F");
			this.getFrame("F").location.href = url;
		} else {
			this.goVtsPage(url);
		}
	},
	
	
	/**
	* ÀÎÁõ¼¾ÅÍ ÆäÀÌÁö·Î ÀÌµ¿ÇÑ´Ù.
	*/
	goCertCenterPage : function() {
		var url = this.url.certCenter;
		var errorCode = "00";
		if (this.isLogin()) {
			if(!this.isAccountUser("1")) {
				errorCode = "99";
			}
		} else {
			url = url.appendParameter("caller=directCertCenter");
		}
		
		if (errorCode!="00") {
			alert(this.msg.ERROR_CERT_CENTER);
		} else {
			this.goPage(this.getMenuCodeFromTrCode('certi.center'));
		}
	},
	
	/**
	* ¸ðÀÇÅõÀÚ È¨À¸·Î ÀÌµ¿ÇÑ´Ù.
	*/
	goVtsHome : function() {
		if (Cookie.get("DSType")=="real") {
			// ·Î±×ÀÎ »óÅÂ
			var arr = showModalDialog(this.url.dialog.goVtsHome, this, "dialogWidth:400px; dialogHeight:240px; status:0");
			if (arr!=null) {
				// ·Î±×¾Æ¿ôÇÏ°í ¸ðÀÇÅõÀÚ·Î...
				if (arr["flag"]=="yes") {
					this.goLogoutPage("nextPage=forwardVTS");
				}
			}
		} else {
			// ·Î±×¾Æ¿ô »óÅÂ
			this.goToThisLink(this.url.vtsHome, "T");
		}
	},
	
	/**
	* È¨ÆäÀÌÁö È¨À¸·Î ÀÌµ¿ÇÑ´Ù.
	*/
	goWebHome : function() {
		if(Cookie.get("DSType")=="vts") {
			// ·Î±×ÀÎ »óÅÂ
			var arr = showModalDialog(this.url.dialog.goWebHome, this, "dialogWidth:400px; dialogHeight:240px; status:0");
			if(arr!=null) {
				// ·Î±×¾Æ¿ôÇÏ°í È¨ÆäÀÌÁö·Î...
				if(arr["flag"]=="yes") {
					this.goLogoutPage("nextPage=forwardWWW");
				}
			}
		} else {
			// ·Î±×¾Æ¿ô »óÅÂ
			this.goToThisLink(this.url.webHome, "T");
		}
	},
	
	/**
	* »ç¿ëÀÚ Á¤º¸¸¦ ¸®ÅÏÇÑ´Ù.
	* @return Object
	*/
	getUserInfo : function() {
		return {
			name : Cookie.get("DSName"),
			loginGB : getDSCookie("loginGB"),
			wtsGrade : Cookie.get("WtsGrade")
		};
	},

	
	/**
	* VTS ¿©ºÎ
	* µµ¸ÞÀÎ¿¡ "vts"¸¦ Æ÷ÇÔÇÏ°íÀÖ´ÂÁö ¿©ºÎ¿¡ µû¶ó true, false¸¦ ¹ÝÈ¯ÇÑ´Ù.
	*/
	isVtsWeb : function() {
		return IS_VTS_WEB;
	},

	
	/**
	* VTS¿¡¼­ »ç¿ë
	* top.main.content ÇÁ·¹ÀÓÀÌ Á¸ÀçÇÏ¸é ÇØ´ç ÇÁ·¹ÀÓ¿¡ ¹Ù·Î _urlÀ» ·Îµù½ÃÅ°°í,
	* top.main.content ÇÁ·¹ÀÓÀÌ ¾øÀ¸¸é ÇØ´çÇÁ·¹ÀÓÀ» ¸¸µç´ÙÀ½¿¡ _urlÀ» ·Îµù½ÃÅ²´Ù.
	* @param _url
	*/
	goVtsPage : function(_url) {
		if (this.getFrame("I")) {
			this.getFrame("I").location.href = _url;
		} else {
			try {
				this.getFrame("F").location.href = this.url.vtsContents.appendParameter("url="+escape(_url));
			} catch(e) {
				alert(this.msg.BAD_TARGET + "[DSMenu.goVtsPage()]");
			}
		}
	},
	
	/**
	 * money2 ¿¡¼­ »ç¿ë
	 * 
	 */
	goPage_TrCode : function(_trCode, _param, _url) {
		var _menuCode = (_trCode!="") ? this.getMenuCodeFromTrCode(_trCode) : null;
		
		this.goPage(_menuCode,_param, _url);
	}
};



