//////HI.co.kr xecureweb.js///////////////////////////////////////////////
//	2007-04-13 Version Up 7.2.0.2
//  2005-11-10 Update by Jun
//  ..initial version
//////////////////////////////////////////////////////////////////////////
//////////////////////////////Update Zhang////////////////////////////////
// XecureWeb SSL Client Java Script ver4.1  2001.5.30
//
// ¾ÆÁ÷ : Netscape 6.0Àº Áö¿øµÇÁö ¾Ê½À´Ï´Ù....
// Edit List 2000,05,30
// process_error() --> XecureWebError() // by Zhang º¯°æ
// function IsNetscape60()		// by Zhang Ãß°¡
// function XecureUnescape(Msg)		// by Zhang Ãß°¡
// function XecureEscape(Msg)		// by Zhang Ãß°¡
// function XecurePath(xpath)		// by zhang Ãß°¡

var gIsContinue=0;
var busy_info = "¾ÏÈ£È­ ÀÛ¾÷ÀÌ ÁøÇàÁßÀÔ´Ï´Ù. È®ÀÎÀ» ´©¸£½Ã°í Àá½Ã ±â´Ù·Á ÁÖ½Ê½Ã¿À."

// YESSIGN CA ADDRESS//////////////////////////////////////////////////////
// TEST : 203.233.91.234
// REAL : 203.233.91.71
var ca_ip =  "203.233.91.234";
var ca_port = 4512;
//var ca_type = 1; // Real
var ca_type = 11; // Test

// SIGNGATE CA ADDRESS/////////////////////////////////////////////////////
// Test : 128.134.254.166
// Real : ??
var signgate_ca_ip =  "128.134.254.166";
var signgate_ca_port = 4502;
// var signgate_ca_type = 2;// Real
var signgate_ca_type = 22;// Test

// SIGNKOREA CA ADDRESS//////////////////////////////////////////////////////
// Test : 211.58.248.101
// Real : 210.207.195.100
var signkorea_ca_ip =  "211.58.248.101";
var signkorea_ca_port = 4099;
//var signkorea_ca_type = 3; // Real
var signkorea_ca_type = 33;  // Test

///////////////////////////////////////////////////////////////////////////////
// !!!!!!!!!!!!!!< ÁÖÀÇ >!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// Sign, RequestCertificate, RevokeCertificate ½Ã ³ªÅ¸³ª´Â ÀÎÁõ¼­ ¸ñ·Ï
// XecureWeb ver 4.1 ¿¡¼­´Â accept_cert ¿¡ À¯È¿ÇÑ ÀÎÁõ±â°ü ÀÎÁõ¼­ÀÇ
// CN À» Á¤È®È÷ Àû¾îÁØ´Ù.
// ver 4.0 ¿¡¼­ yessign ÀÌ¶ó Àû¾ú´ø °ÍÀº yessignCA-TEST, yessignCA ·Î ¼¼ºÐÈ­ µÈ´Ù.
// YESSIGN TEST : yessignCA-TEST
// YESSIGN REAL : yessignCA
// SIGNGATE TEST : SignGateFTCA
// SIGNGATE REAL : signGate CA
// SIGNKOREA TEST : SignKorea Test CA
// SIGNKOREA REAL : SignKorea CA
////////////////////////////////////////////////////////////////////////////////
//var accept_cert = "yessignCA,signGATE CA,SignKorea CA,NCASign CA,CrossCertCA,TradeSignCA";

// ±ÝÀ¶°áÁ¦¿ø ÀÎÁõ¼­ ¼ö¿ë ºÎºÐ
var accept_cert="yessignCA:1.2.410.200005.1.1.1";
accept_cert+=":1.2.410.200005.1.1.2:1.2.410.200005.1.1.4:1.2.410.200005.1.1.5";
// ÇÑ±¹Á¤º¸ÀÎÁõ ÀÎÁõ¼­ ¼ö¿ë ºÎºÐ
accept_cert+=",signGATE CA:1.2.410.200004.5.2.1.1:1.2.410.200004.5.2.1.2";
accept_cert+=":1.2.410.200004.5.2.1.7.1:1.2.410.200004.5.2.1.7.2";
// Áõ±ÇÀü»ê¿ø ÀÎÁõ¼­ ¼ö¿ë ºÎºÐ
accept_cert+=",SignKorea CA:1.2.410.200004.5.1.1.5:1.2.410.200004.5.1.1.7:1.2.410.200004.5.1.1.9";
accept_cert+=":1.2.410.200004.5.1.1.9";
// ÇÑ±¹Àü»ê¿ø ÀÎÁõ¼­ ¼ö¿ë ºÎºÐ
accept_cert+=",NCASign CA:1.2.410.200004.5.3.1.9:1.2.410.200004.5.3.1.2";
// ÇÑ±¹ÀüÀÚÀÎÁõ ÀÎÁõ¼­ ¼ö¿ë ºÎºÐ
accept_cert+=",CrossCertCA:1.2.410.200004.5.4.1.1:1.2.410.200004.5.4.1.2";
accept_cert+=":1.2.410.200004.5.4.1.101";
// ÇÑ±¹¹«¿ªÁ¤º¸Åë½Å ÀÎÁõ¼­ ¼ö¿ë ºÎºÐ
accept_cert+=",TradeSignCA:1.2.410.200012.1.1.1:1.2.410.200012.1.1.3";
accept_cert+=":1.2.410.200012.1.1.101:1.2.410.200012.1.1.103";

// ½Å ÇÑ±¹Á¤º¸ÀÎÁõ ÀÎÁõ¼­ ¼ö¿ë ºÎºÐ
accept_cert+=",signGATE CA2:1.2.410.200004.5.2.1.1:1.2.410.200004.5.2.1.2:1.2.410.200004.5.2.1.7.1:1.2.410.200004.5.2.1.7.2";
// ½Å ÇÑ±¹Àü»ê¿ø ÀÎÁõ¼­ ¼ö¿ë ºÎºÐ
accept_cert+=",NCASignCA:1.2.410.200004.5.3.1.1:1.2.410.200004.5.3.1.2:1.2.410.200004.5.3.1.9";
// ½Å ÇÑ±¹ÀüÀÚÀÎÁõ ÀÎÁõ¼­ ¼ö¿ë ºÎºÐ
accept_cert+=",CrossCert Certificate Authority:1.2.410.200004.5.4.1.1:1.2.410.200004.5.4.1.2:1.2.410.200004.5.4.1.101";

/////////////////////////////////////////////////////////////////////////////////
// ÀüÀÚ¼­¸í, ÀÎÁõ¼­ °»½Å, ÀÎÁõ¼­ Æó±â½Ã¿¡ ÀÎÁõ¼­ ¾ÏÈ£¿À·ù¸¦ Çã¿ëÈ¸¼ö
var pwd_fail = 3;

//////////////////////////////////////////////////////////////////////////////////
// ·Î±×ÀÎ Ã¢¿¡ º¸ÀÏ ÀÌ¹ÌÁö¸¦ ´Ù¿î·Îµå ¹ÞÀ» URL
//var bannerUrl =  "http://" + window.location.host + "/XecureObject/xecure.bmp";
//var bannerUrl =  "http://" + window.location.host + "/XecureObject/xecure_big.bmp.sig";
var bannerUrl =  "http://" + window.location.host + "/XecureObject/xecure_big2010_3_16.bmp.sig"; //2010-03-29

///////////////////////////////////////////////////////////////////////////////////
// ÀÎÁõ±â°ü ÀÎÁõ¼­ ´Ù¿î·Îµå½Ã ÀÎÁõ±â°ü ÀÎÁõ¼­¿Í ÀÎÁõ¼­ CN
//var pCaCertUrl= "http://" + window.location.host + "/XecureObject/signed_cacert.bin";
//var pCaCertName = "³Ø¼­ºê CA";
var pCaCertUrl= "http://" + window.location.host + "/XecureObject/signed_cacert.bin";
var pCaCertName = "";


//////////////////////////////////////////////////////////////////////////////////
// ÀüÀÚ¼­¸í È®ÀÎÃ¢¿¡ º¸ÀÏ ¸Þ¼¼Áö¿Í ÀüÀÚ¼­¸í È®ÀÎÃ¢ º¸±â ¿É¼Ç
// 0 : ¼­¸í ¿ø¹® Ãâ·Â ¾ÈÇÔ, 1: ¼­¸í ¿ø¹® Ãâ·Â
var sign_desc = "";
var show_plain = 0;

///////////////////////////////////////////////////////////////////////////////////
// xgate ¼­¹ö ¸í:Æ÷Æ® ÁöÁ¤ , Æ÷Æ® »ý·«½Ã µðÆúÆ®·Î 443 Æ÷Æ® »ç¿ë
var xgate_addr	= window.location.hostname + ":443:8080";

///////////////////////////////////////////////////////////////////////////////////
// Netscape plugin version information
//var packageURL = 'http://' + window.location.host + '/XecureObject/NPXecSSL40_Install.jar';
var packageURL = 'http://download.softforum.co.kr/XecureObject41/NPXecSSL40_Install.jar';
var versionMaj = 4;
var versionMin = 2;
var versionRel = 6;

//////////////////////////////////////////////////////////////////////////////////
//	Xecure Big ÇÔ¼öµé....
function SetConvertTable() {


	//±ÝÀ¶°áÀç¿ø
	document.XecureWeb.SetPolicyConvertTableFirst(0, "1.2.410.200005.1.1.1", "¹ü¿ë°³ÀÎ");
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200005.1.1.2", "±ÝÀ¶±â¾÷");
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200005.1.1.4", "ÀºÇà/º¸Çè¿ë");
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200005.1.1.5", "¹ü¿ë±â¾÷");
	//ÇÑ±¹ Á¤º¸ÀÎÁõ
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200004.5.2.1.2", "¹ü¿ë°³ÀÎ");
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200004.5.2.1.1", "¹ü¿ë±â¾÷");
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200004.5.2.1.7.1", "ÀºÇà/º¸Çè¿ë");
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200004.5.2.1.7.2", "Áõ±Ç/º¸Çè¿ë");
	//ÇÑ±¹ Áõ±ÇÀü»ê
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200004.5.1.1.5", "¹ü¿ë°³ÀÎ");
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200004.5.1.1.7", "¹ü¿ë¹ýÀÎ");
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200004.5.1.1.9", "Áõ±Ç/º¸Çè¿ë");
	//ÇÑ±¹ Àü»ê¿ø
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200004.5.3.1.9", "¹ü¿ë°³ÀÎ");
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200004.5.3.1.2", "¹ü¿ë±â¾÷");
	//ÇÑ±¹ ÀüÀÚÀÎÁõ
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200004.5.4.1.1", "¹ü¿ë°³ÀÎ");
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200004.5.4.1.2", "¹ü¿ë±â¾÷");
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200004.5.4.1.101", "ÀºÇà/º¸Çè¿ë");
	//ÇÑ±¹¹«¿ª Á¤º¸Åë½Å
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200012.1.1.1", "¹ü¿ë°³ÀÎ");
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200012.1.1.3", "¹ü¿ë±â¾÷");
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200012.1.1.101", "ÀºÇà/º¸Çè¿ë");
	document.XecureWeb.SetPolicyConvertTableNext("1.2.410.200012.1.1.103", "Áõ±Ç/º¸Çè¿ë");
	document.XecureWeb.SetPolicyConvertTableFinal(0);

	document.XecureWeb.SetIssuerConvertTableFirst("yessignCA", "±ÝÀ¶°áÁ¦¿ø");
	document.XecureWeb.SetIssuerConvertTableNext("SignKorea CA", "Áõ±ÇÀü»ê");
	document.XecureWeb.SetIssuerConvertTableNext("signGate CA", "Á¤º¸ÀÎÁõ");
	document.XecureWeb.SetIssuerConvertTableNext("NCASign CA", "Àü»ê¿ø");
	document.XecureWeb.SetIssuerConvertTableNext("TradeSignCA", "¹«¿ªÁ¤º¸Åë½Å");
	document.XecureWeb.SetIssuerConvertTableNext("CrossCertCA", "ÀüÀÚÀÎÁõ");
	document.XecureWeb.SetIssuerConvertTableNext("CertRSA01", "KISAÀÎÁõ±â°ü");
	document.XecureWeb.SetIssuerConvertTableFinal();

}

//////////////////////////////////////////////////////////////////////////////////
//	Xecure ÇÔ¼öµé....
function UserAgent()
{
	return navigator.userAgent.substring(0,9);
}

function IsNetscape()			// by Zhang
{
	if(navigator.appName == 'Netscape')
		return true ;
	else
		return false ;
}

function IsNetscape60()			// by Zhang
{
	if(IsNetscape() && UserAgent() == 'Mozilla/5')
		return true ;
	else
		return false ;
}

function XecureUnescape(Msg)		// by Zhang
{
	if(IsNetscape())
		return unescape(Msg) ;
	else
		return Msg ;
}

function XecureEscape(Msg)		// by Zhang
{
	if(IsNetscape())
		return escape(Msg) ;
	else
		return Msg ;
}

function XecurePath(xpath)		// by zhang
{
	if(IsNetscape())
		return (xpath) ;
	else
		return ("/" + xpath) ;
}

function XecureWebError()		// by zhang
{
	var errCode = 0 ;
	var errMsg = "" ;

	if( IsNetscape60() )		// Netscape 6.0
	{
		errCode = document.XecureWeb.nsIXecurePluginInstance.LastErrCode();
		errMsg  = document.XecureWeb.nsIXecurePluginInstance.LastErrMsg();
	}
	else
	{
		errCode = document.XecureWeb.LastErrCode();
		errMsg  = document.XecureWeb.LastErrMsg();
	}

	if(errCode == -144)
	{
		if(confirm("¿¡·¯ÄÚµå : " + errCode + "\n\n" + XecureUnescape(errMsg) + "\n\n ÀÎÁõ¼­°ü¸®Ã¢À» ¿­°Ú½À´Ï±î?"))
			ShowCertManager() ;
	}
	if(errCode == -1201)
	{
		toggle('N');
		return false;
	} else {
		alert( "¿¡·¯ÄÚµå : " + errCode + "\n\n" + XecureUnescape(errMsg) );
	}
	return false;
}

function escape_url(url) {
	var i;
	var ch;
	var out = '';
	var url_string = '';

	url_string = String(url);

	for (i = 0; i < url_string.length; i++) {
		ch = url_string.charAt(i);
		if (ch == ' ')		out += '%20';
		else if (ch == '%')	out += '%25';
		else if (ch == '&')	out += '%26';
		else if (ch == '+')	out += '%2B';
		else if (ch == '=')	out += '%3D';
		else if (ch == '?') out += '%3F';
		else				out += ch;
	}
	return out;
}

function ran_gen()
{
	var maxnumbers = "999999";
	var r = Math.round(Math.random() * (maxnumbers-1))+1+"";

	for(var i=0; i < 6-r.length; i++)
		r = "0" + r;

	return r;
}

function XecureNavigate_NoEnc( url, target )
{
	var qs ;
	var path = "/";
	var sid;
	var xecure_url;

	// get path info & query string & hash from url
	qs_begin_index = url.indexOf('?');
	path = getPath(url)

	// get query string action url
	if ( qs_begin_index < 0 ) {
		qs = "";
	}
	else {
		qs = url.substring(qs_begin_index + 1, url.length );
	}

	if( gIsContinue == 0 ) {
		gIsContinue = 1;
		if( IsNetscape60() )		// Netscape 6.0
			sid = document.XecureWeb.nsIXecurePluginInstance.BlockEnc(xgate_addr, path, "", "GET");
		else
			sid = document.XecureWeb.BlockEnc ( xgate_addr, path, "", "GET" );
		gIsContinue = 0;
	}
	else {
		alert(busy_info);
		return false ;
	}

	if( sid == "")	return XecureWebError() ;

	if ( qs == "" )
		xecure_url = path + "?q=" + sid ;
	else
		xecure_url = path + "?q=" + sid + "&" + qs;

	open ( xecure_url, target );
}

function XecureNavigate( url, target, feature )
{
	var qs ;
	var path = "/";
	var cipher;
	var xecure_url;

	// get path info & query string & hash from url
	qs_begin_index = url.indexOf('?');
	path = getPath(url)
	// get query string action url
	if ( qs_begin_index < 0 ) {
		qs = "";
	}
	else {
		qs = url.substring(qs_begin_index + 1, url.length );
	}

	if( gIsContinue == 0 ) {
		gIsContinue = 1;
		if( IsNetscape60() )		// Netscape 6.0
			cipher = document.XecureWeb.nsIXecurePluginInstance.BlockEnc(xgate_addr, path, XecureEscape(qs), "GET");
		else
			cipher = document.XecureWeb.BlockEnc(xgate_addr, path, XecureEscape(qs),"GET");
		gIsContinue = 0;
	}
	else {
		alert(busy_info);
		return false;
	}

	if( cipher == "" )	return XecureWebError() ;

	xecure_url = path + "?q=" + escape_url(cipher);

	if ( target=="_opener"){
		opener.location.href = xecure_url;
		
	}else{
		if (feature=="" || feature==null) open ( xecure_url, target );
		else open(xecure_url, target, feature );
	}
}

function XecureLink( link )
{
	var qs ;
//	var path = "/";
	var cipher;

	// get path info & query string from action url

	if ( link.protocol != "http:" ) {
		// alert ( "http ÇÁ·ÎÅäÄÝ¸¸ »ç¿ë °¡´ÉÇÕ´Ï´Ù." );
		return true;
	}

	qs = link.search;
	if ( qs.length > 1 ) {
		qs = link.search.substring(1);
	}

	hash = link.hash;

	if( gIsContinue == 0 ) {
		path = XecurePath(link.pathname) ;
		gIsContinue = 1;

		if( IsNetscape60() )		// Netscape 6.0
			cipher = document.XecureWeb.nsIXecurePluginInstance.BlockEnc(xgate_addr, path, XecureEscape(qs), "GET");
		else
			cipher = document.XecureWeb.BlockEnc(xgate_addr, path, XecureEscape(qs),"GET");

		gIsContinue = 0;
	}
	else {
		alert(busy_info);
		return false;
	}
	if( cipher.length == 0)	return XecureWebError() ;

	// link.search = "?q=" + escape_url(cipher);
	xecure_url = "http://" + link.host + path + hash + "?q=" + escape_url(cipher);
	if ( link.target == "" || link.target == null ) open ( xecure_url, "_self" );
	else open( xecure_url, link.target );
	return false;
}

function XecureSubmit( form )
{
	var qs ;
	var path ;
	var cipher;
	qs_begin_index = form.action.indexOf('?');
	// if action is relative url, get base url from window location
	path = getPath(form.action)
	// get path info & query string & hash from action url
	if ( qs_begin_index < 0 ) {
		qs = "";
	}
	else {
		qs = form.action.substring(qs_begin_index + 1, form.action.length );
	}
	document.xecure.target = form.target;

	if ( form.method == "get" || form.method=="GET" ) {
		// collect input field values
		qs = XecureMakePlain( form );

		// encrypt QueryString
		if( gIsContinue == 0 ) {
			gIsContinue = 1;
			if( IsNetscape60() )		// Netscape 6.0
				cipher = document.XecureWeb.nsIXecurePluginInstance.BlockEnc(xgate_addr, path, XecureEscape(qs),"GET");
			else
				cipher = document.XecureWeb.BlockEnc(xgate_addr, path, XecureEscape(qs),"GET");
			gIsContinue = 0;
		}
		else {
			alert(busy_info);
			return false;
		}

		if( cipher == "" )	return XecureWebError() ;

		xecure_url = path + "?q=" + escape_url(cipher);
		if ( form.target == "" || form.target == null ) open( xecure_url, "_self");
		else open ( xecure_url, form.target );
	}
	else {
		document.xecure.method = "post";
		// encrypt QueryString of action field
		if( gIsContinue == 0 ) {
			gIsContinue = 1;
			if( IsNetscape60() )		// Netscape 6.0
				cipher = document.XecureWeb.nsIXecurePluginInstance.BlockEnc(xgate_addr, path, XecureEscape(qs),"GET");
			else
				cipher = document.XecureWeb.BlockEnc(xgate_addr, path, XecureEscape(qs),"GET");
			gIsContinue = 0;
		}
		else {
			alert(busy_info);
			return false;
		}

		if( cipher == "" )	return XecureWebError() ;

		document.xecure.action = path + "?q=" + escape_url(cipher);
		posting_data = XecureMakePlain( form );

		if( gIsContinue == 0 ) {
			gIsContinue = 1;
			if( IsNetscape60() )		// Netscape 6.0
				cipher = document.XecureWeb.nsIXecurePluginInstance.BlockEnc ( xgate_addr, path, XecureEscape(posting_data), "POST" );
			else
				cipher = document.XecureWeb.BlockEnc ( xgate_addr, path, XecureEscape(posting_data), "POST" );
			gIsContinue = 0;
		}
		else {
			alert(busy_info);
			return false;
		}

		if( cipher == "" )	return XecureWebError() ;

		document.xecure.p.value = cipher;
		document.xecure.submit();
	}
	return false;
}

function XecureMakePlain(form)
{
	var name = new Array(form.elements.length);
	var value = new Array(form.elements.length);
	var flag = false;
	var j = 0;
	var plain_text="";


	len = form.elements.length;
	for (i = 0; i < len; i++) {
		if ((form.elements[i].type != "button") && (form.elements[i].type != "reset") && (form.elements[i].type != "submit")) {
			if (form.elements[i].type == "radio" || form.elements[i].type == "checkbox") { // Leejh 99.11.10 checkboxÃß°¡
				if (form.elements[i].checked == true) {
					name[j] = form.elements[i].name;
					value[j] = form.elements[i].value;
					j++;
				}
			}
			else {
				name[j] = form.elements[i].name;
				if (form.elements[i].type == "select-one") {
					var ind = form.elements[i].selectedIndex;
					if (form.elements[i].options[ind].value != '')
						value[j] = form.elements[i].options[ind].value;
					else
						value[j] = form.elements[i].options[ind].text;
					// form.elements[i].selectedIndex = 0;
				}
				else {
					value[j] = form.elements[i].value;
				}
				j++;
			}
		}
	}
	for (i = 0; i < j; i++) {
		str = value[i];
		value[i] = escape_url(str);
	}

	for (i = 0; i < j; i++) {
		if (flag)
			plain_text += "&";
		else
			flag = true;
		plain_text += name[i] ;
		plain_text += "=";
		plain_text += value[i];
	}


	return plain_text;
}

/*************For Applet**********************/
function BlockEnc(auth_type,plain_text)
{
	var cipher = "";

	if( IsNetscape60() )		// Netscape 6.0
		cipher =  XecureUnescape(document.XecureWeb.nsIXecurePluginInstance.BlockEnc(xgate_addr,auth_type,plain_text,"GET"));
	else
		cipher =  XecureUnescape(document.XecureWeb.BlockEnc(xgate_addr,auth_type,plain_text,"GET"));

	if( cipher == "" ) XecureWebError() ;

	return cipher;
}

function BlockDec(cipher)
{
	var plain = "";

	if( IsNetscape60() )		// Netscape 6.0
		plain = XecureUnescape(document.XecureWeb.nsIXecurePluginInstance.BlockDec( xgate_addr, cipher));
	else
		plain = XecureUnescape(document.XecureWeb.BlockDec( xgate_addr, cipher));

	if( plain == "" ) XecureWebError() ;

	return plain;
}

function BlockXMLDec(cipher)
{
	var path = "";

	if( IsNetscape60() )		// Netscape 6.0
		path = XecureUnescape(document.XecureWeb.nsIXecurePluginInstance.BlockXMLDec( xgate_addr, cipher));
	else
		path = XecureUnescape(document.XecureWeb.BlockXMLDec( xgate_addr, cipher));

	if( path == "" ) 	XecureWebError() ;

	return path;
}

function XecureLogIn( link )
{
	EndSession();
	return XecureLink(link);
}

function EndSession()
{
	if( IsNetscape60() )		// Netscape 6.0
		document.XecureWeb.nsIXecurePluginInstance.EndSession( xgate_addr );
	else
		document.XecureWeb.EndSession(xgate_addr);
}

// XecureWeb ver 4.1 add
// option : 0 : no confirm window, all certificates
// option : 1 : confirm window, all certificates
// option : 2 : no confirm window, log-on certificate only
// option : 3 : confirm window, log-on certificate only

function Sign_with_option( option, plain )
{
	var signed_msg;

	if(IsNetscape())
	{
		if( IsNetscape60() )		// Netscape 6.0
			signed_msg = document.XecureWeb.SignData2( xgate_addr,
								escape(accept_cert),
								escape(plain),
								option,
								escape(sign_desc),
								pwd_fail);
		else
			signed_msg = document.XecureWeb.nsIXecurePluginInstance.SignData2 (
									xgate_addr,
									escape(accept_cert),
									escape(plain),
									option,
									escape(sign_desc),
									pwd_fail);
	}
	else
		signed_msg = document.XecureWeb.SignData ( xgate_addr,accept_cert, plain, option, sign_desc, pwd_fail );

        if( signed_msg == "" )	XecureWebError() ;

        return signed_msg;
}

function Sign( plain )
{
	var signed_msg;

	if( IsNetscape60() )		// Netscape 6.0
		signed_msg = document.XecureWeb.nsIXecurePluginInstance.SignData( xgate_addr, XecureEscape(accept_cert), XecureEscape(plain), show_plain, XecureEscape(sign_desc) );
	else
		signed_msg = document.XecureWeb.SignData( xgate_addr, XecureEscape(accept_cert), XecureEscape(plain), show_plain, XecureEscape(sign_desc) );

	if( signed_msg == "" )	XecureWebError() ;

	return signed_msg;
}

function Sign_with_desc( plain, desc )
{
	var signed_msg;

	if( IsNetscape60() )		// Netscape 6.0
		signed_msg = document.XecureWeb.nsIXecurePluginInstance.SignData( xgate_addr, XecureEscape(accept_cert), XecureEscape(plain), show_plain, XecureEscape(desc) );
	else
		signed_msg = document.XecureWeb.SignData( xgate_addr, XecureEscape(accept_cert), XecureEscape(plain), show_plain, XecureEscape(desc) );

	if( signed_msg == "" )	XecureWebError() ;

	return signed_msg;
}

function Sign_with_vid( option, plain, svrCert )
{
        var signed_msg;

        if(IsNetscape())
        {
                if( IsNetscape60() )            // Netscape 6.0
                        signed_msg = document.XecureWeb.nsIXecurePluginInstance.SignDataCMS( xgate_addr,
                                                                escape(accept_cert),
                                                                escape(plain),
                                                                option,
                                                                escape(sign_desc),
                                                                pwd_fail);
                else
                        signed_msg = document.XecureWeb.SignDataCMS(
                                                                        xgate_addr,
                                                                        escape(accept_cert),
                                                                        escape(plain),
                                                                        option,
                                                                        escape(sign_desc),
                                                                        pwd_fail);
        }
        else {
                signed_msg = document.XecureWeb.SignDataWithVID ( xgate_addr, accept_cert, plain, svrCert, option, sign_desc, pwd_fail );
                if(signed_msg != null) {
                        var     vid_msg;
                        vid_msg = send_vid_info();
                        if(vid_msg == null || vid_msg.length == 0)
                                XecureWebError();
                }
        }

    if( signed_msg == "" )      XecureWebError();

    return signed_msg;
}


function send_vid_info()
{
	var	vid_info;

	if( IsNetscape() )
	{
		alert("Not supported function");
	}
	else
	{
		vid_info = document.XecureWeb.GetVidInfo();
	}

	return vid_info;
}

// default YESSIGN
function RequestCertificate ( ref_code, auth_code )
{
	var r;

	if( IsNetscape60() )		// Netscape 6.0
		r = document.XecureWeb.nsIXecurePluginInstance.RequestCertificate ( ca_port, ca_ip, ref_code, auth_code);
	else
		r = document.XecureWeb.RequestCertificate ( ca_port, ca_ip, ref_code, auth_code);

	if ( r != 0 )	XecureWebError() ;

	return r;
}

function RequestCertificate_yessign ( ref_code, auth_code )
{
	var r;

	if(IsNetscape())
	{
		if( IsNetscape60() )	// Netscape 6.0
			r = document.XecureWeb.nsIXecurePluginInstance.RequestCertificate2 ( ca_port, ca_ip, ref_code, auth_code, ca_type );
		else
			r = document.XecureWeb.RequestCertificate2 ( ca_port, ca_ip, ref_code, auth_code, ca_type );
	}
	else
	{
		r = document.XecureWeb.RequestCertificate ( ca_port, ca_ip, ref_code, auth_code, ca_type);
	}

	if ( r != 0 )	XecureWebError() ;

	return r;
}

function RequestCertificate_signGate ( ref_code, auth_code )
{
	var r;

	if(IsNetscape())
	{
		if( IsNetscape60() )	// Netscape 6.0
			r = document.XecureWeb.nsIXecurePluginInstance.RequestCertificate2 ( signGate_ca_port, signgate_ca_ip, ref_code, auth_code, signgate_ca_type );
		else
			r = document.XecureWeb.RequestCertificate2 ( signGate_ca_port, signgate_ca_ip, ref_code, auth_code, signgate_ca_type );
	}
	else
	{
		r = document.XecureWeb.RequestCertificate ( signgate_ca_port, signgate_ca_ip, ref_code, auth_code, signgate_ca_type);
	}

	if ( r != 0 )	XecureWebError() ;

	return r;
}

function RequestCertificate_signKorea ( ref_code, auth_code )
{
	var r;

	if(IsNetscape())
	{
		if( IsNetscape60() )	// Netscape 6.0
			r = document.XecureWeb.nsIXecurePluginInstance.RequestCertificate2( signkorea_ca_port, signkorea_ca_ip, ref_code, auth_code, signkorea_ca_type);
		else
			r = document.XecureWeb.RequestCertificate2( signkorea_ca_port, signkorea_ca_ip, ref_code, auth_code, signkorea_ca_type);
	}
	else{
		r = document.XecureWeb.RequestCertificate ( signkorea_ca_port, signkorea_ca_ip, ref_code, auth_code, signkorea_ca_type);
	}

	if ( r != 0 )	XecureWebError() ;

	return r;
}

function RenewCertificate ( )
{
	var r;

	if( IsNetscape60() )		// Netscape 6.0
		r = document.XecureWeb.nsIXecurePluginInstance.RenewCertificate ( ca_port, ca_ip );
	else
		r = document.XecureWeb.RenewCertificate ( ca_port, ca_ip );

	if ( r != 0 )	XecureWebError() ;

	return r;
}

function RenewCertificate_yessign ( )
{
	var r;

	if(IsNetscape())
	{
		if( IsNetscape60() )	// Netscape 6.0
			r = document.XecureWeb.nsIXecurePluginInstance.RenewCertificate2( ca_port, ca_ip, ca_type, pwd_fail );
		else
			r = document.XecureWeb.RenewCertificate2( ca_port, ca_ip, ca_type, pwd_fail );
	}
	else{
		r = document.XecureWeb.RenewCertificate ( ca_port, ca_ip, ca_type, pwd_fail );
	}

	if ( r != 0 ) 	XecureWebError() ;

	return r;
}

function RenewCertificate_signGate ( )
{
	var r;

	if(IsNetscape())
	{
		if( IsNetscape60() )	// Netscape 6.0
			r = document.XecureWeb.nsIXecurePluginInstance.RenewCertificate2( signgate_ca_port, signgate_ca_ip, signgate_ca_type, pwd_fail );
		else
			r = document.XecureWeb.RenewCertificate2( signgate_ca_port, signgate_ca_ip, signgate_ca_type, pwd_fail );
	}
	else{
		r = document.XecureWeb.RenewCertificate ( signgate_ca_port, signgate_ca_ip, signgate_ca_type, pwd_fail );
	}

	if ( r != 0 )	XecureWebError() ;

	return r;
}

function RenewCertificate_signKorea ( )
{
	var r;

	if(IsNetscape())
	{
		if( IsNetscape60() )	// Netscape 6.0
			r = document.XecureWeb.nsIXecurePluginInstance.RenewCertificate2 ( signkorea_ca_port, signkorea_ca_ip, signkorea_ca_type, pwd_fail );
		else
			r = document.XecureWeb.RenewCertificate2 ( signkorea_ca_port, signkorea_ca_ip, signkorea_ca_type, pwd_fail );
	}
	else {
		r = document.XecureWeb.RenewCertificate ( signkorea_ca_port, signkorea_ca_ip, signkorea_ca_type, pwd_fail );
	}

	if ( r != 0 )	XecureWebError() ;

	return r;
}

function RevokeCertificate ( jobcode, reason )
{
	var r;

	if( IsNetscape60() )	// Netscape 6.0
		r = document.XecureWeb.nsIXecurePluginInstance.RevokeCertificate ( ca_port, ca_ip, jobcode, reason );
	else
		r = document.XecureWeb.RevokeCertificate ( ca_port, ca_ip, jobcode, reason );

        if ( r != 0 )	XecureWebError() ;

	return r;
}

function RevokeCertificate_yessign ( jobcode, reason )
{
	var r;

	if(IsNetscape())
	{
		if( IsNetscape60() )	// Netscape 6.0
			r = document.XecureWeb.nsIXecurePluginInstance.RevokeCertificate2( ca_port, ca_ip, jobcode, reason, ca_type, pwd_fail );
		else
			r = document.XecureWeb.RevokeCertificate2( ca_port, ca_ip, jobcode, reason, ca_type,  pwd_fail);
	}
	else {
		r = document.XecureWeb.RevokeCertificate ( ca_port, ca_ip, jobcode, reason, ca_type, pwd_fail );
	}

        if ( r != 0 ) 	XecureWebError() ;

	return r;
}

function RevokeCertificate_signGate ( jobcode, reason )
{
	var r;

	if(IsNetscape())
	{
		if( IsNetscape60() )	// Netscape 6.0
			r = document.XecureWeb.nsIXecurePluginInstance.RevokeCertificate2( signgate_ca_port, signgate_ca_ip, jobcode, reason, signgate_ca_type, pwd_fail );
		else
			r = document.XecureWeb.RevokeCertificate2( signgate_ca_port, signgate_ca_ip, jobcode, reason, signgate_ca_type, pwd_fail );

	}
	else {
		r = document.XecureWeb.RevokeCertificate ( signgate_ca_port, signgate_ca_ip, jobcode, reason, signgate_ca_type, pwd_fail );
	}

        if ( r != 0 )	XecureWebError() ;

	return r;
}

function RevokeCertificate_signKorea ( jobcode, reason )
{
	var r;

	if(IsNetscape())
	{
		if( IsNetscape60() )	// Netscape 6.0
			r = document.XecureWeb.nsIXecurePluginInstance.RevokeCertificate2( signkorea_ca_port, signkorea_ca_ip, jobcode, reason, signkorea_ca_type, pwd_fail );
		else
			r = document.XecureWeb.RevokeCertificate2( signkorea_ca_port, signkorea_ca_ip, jobcode, reason, signkorea_ca_type, pwd_fail );
	}
	else {
		r = document.XecureWeb.RevokeCertificate ( signkorea_ca_port, signkorea_ca_ip, jobcode, reason, signkorea_ca_type, pwd_fail );
	}

        if ( r != 0 )	XecureWebError() ;

	return r;
}

function GenCertReq ( )
{
	if( IsNetscape60() )		// Netscape 6.0
		cert_req = document.XecureWeb.nsIXecurePluginInstance.GenerateCertReq( 1024 );
	else
		cert_req = document.XecureWeb.GenerateCertReq( 1024 );

	if ( cert_req == "" )	XecureWebError() ;

	return cert_req;
}

function InstallCertificate (cert_type, cert)
{
	if( IsNetscape60() )		// Netscape 6.0
		document.XecureWeb.nsIXecurePluginInstance.InstallCertificate(cert_type, cert );
	else
		document.XecureWeb.InstallCertificate(cert_type, cert );
}

function ShowCertManager()
{
	if( IsNetscape60() )		// Netscape 6.0
		document.XecureWeb.nsIXecurePluginInstance.ShowCertManager();
	else
		document.XecureWeb.ShowCertManager();
}

function DeleteCertificate( dn )
{
	var r;

	if( IsNetscape60() )		// Netscape 6.0
		r = document.XecureWeb.nsIXecurePluginInstance.DeleteCertificate( XecureEscape(dn) );
	else
		r = document.XecureWeb.DeleteCertificate ( XecureEscape(dn) );

	if( r != 0 )	XecureWebError() ;
	else 		alert('ÀÎÁõ¼­¸¦ »èÁ¦ÇÏ¿´½À´Ï´Ù.');
}

function PutBannerUrl()
{
	if( IsNetscape60() )		// Netscape 6.0
	{
		document.XecureWeb.nsIXecurePluginInstance.PutBigBannerUrl( xgate_addr, bannerUrl);
		//document.XecureWeb.nsIXecurePluginInstance.PutBannerUrl( xgate_addr, bannerUrl);
	}
	else
	{
		document.XecureWeb.PutBigBannerUrl( xgate_addr, bannerUrl);
		//document.XecureWeb.nsIXecurePluginInstance.PutBannerUrl( xgate_addr, bannerUrl);
	}
}

function PutCACert()
{
	var r ;

	if( IsNetscape60() )		// Netscape 6.0
		r = document.XecureWeb.nsIXecurePluginInstance.PutCACert( XecureEscape(pCaCertName), pCaCertUrl);
	else
		r = document.XecureWeb.PutCACert( XecureEscape(pCaCertName), pCaCertUrl);

	if( r != 0 )	XecureWebError() ;
}

function isNewPlugin(desc)
{
	index = desc.indexOf('v.', 0);
	if (index < 0)
		return false;
	desc += ' ';

	versionString = desc.substring(index +2, desc.length);
	arrayOfStrings = versionString.split('.');
	thisMajor = parseInt(arrayOfStrings[0], 10);
	thisMinor = parseInt(arrayOfStrings[1], 10);
	thisBuild = parseInt(arrayOfStrings[2], 10);

	if (thisMajor > versionMaj)	return true;
	if (thisMajor < versionMaj)	return false;

	if (thisMinor > versionMin)	return true;
	if (thisMinor < versionMin)	return false;

	if (thisBuild > versionRel)	return true;
	if (thisBuild < versionRel)	return false;

	return true;
}

function downloadNow () {
	if ( navigator.javaEnabled() ) {
		trigger = netscape.softupdate.Trigger;
		if ( trigger.UpdateEnabled() ) {
			if (navigator.platform == "Win32") {
				trigger.StartSoftwareUpdate( packageURL, trigger.DEFAULT_MODE);
			}
			else alert('ÀÌ ÇÃ·¯±× ÀÎÀº À©µµ¿ìÁî 95/98/NT È¯°æ¿¡¼­¸¸ ÀÛµ¿ÇÕ´Ï´Ù.')
		}
		else
			alert('³Ý½ºÄÉÀÔÀÇ SmartUpdate ¼³Ä¡¸¦ °¡´ÉÇÏµµ·Ï ÇØ¾ßÇÕ´Ï´Ù.');
	}
	else
		alert('Java ½ÇÇàÀ» °¡´ÉÇÏµµ·Ï ÇØ¾ßÇÕ´Ï´Ù.');
}

function isOldPlugin(desc,version)	// by Zhang
{
	index = desc.indexOf('v.', 0);
	if (index < 0)	return true;

	desc += ' ';
	versionString = desc.substring(index +2, desc.length);
	arrayOfStrings = versionString.split('.');
	thisMaj = parseInt(arrayOfStrings[0], 10);
	thisMin = parseInt(arrayOfStrings[1], 10);
	thisRel = parseInt(arrayOfStrings[2], 10);

	arrayOfStrings = version.split('.');
	verMaj = parseInt(arrayOfStrings[0], 10);
	verMin = parseInt(arrayOfStrings[1], 10);
	verRel = parseInt(arrayOfStrings[2], 10);

	if (thisMaj > s_verMaj)	return false;
	if (thisMaj < s_verMaj)	return true;

	if (thisMin > s_verMin)	return false;
	if (thisMin < s_verMin)	return true;

	if (thisRel > s_verRel)	return false;
	if (thisRel < s_verRel)	return true;

	return false;
}

function DownloadPackage(packageURL) // by Zhang
{
	if ( navigator.javaEnabled() ) {
		trigger = netscape.softupdate.Trigger;
		if ( trigger.UpdateEnabled() ) {
			if (navigator.platform == "Win32") {
				trigger.StartSoftwareUpdate( packageURL, trigger.DEFAULT_MODE);
			}
			else
				alert('ÀÌ ÇÃ·¯±× ÀÎÀº À©µµ¿ìÁî 95/98/NT È¯°æ¿¡¼­¸¸ ÀÛµ¿ÇÕ´Ï´Ù.');
		}
		else
			alert('³Ý½ºÄÉÀÔÀÇ SmartUpdate ¼³Ä¡¸¦ °¡´ÉÇÏµµ·Ï ÇØ¾ßÇÕ´Ï´Ù.');
	}
	else
		alert('Java ½ÇÇàÀ» °¡´ÉÇÏµµ·Ï ÇØ¾ßÇÕ´Ï´Ù.');
}

function XecureWebPlugin(version)	// by Zhang
{
	if (navigator.appName == 'Netscape' && UserAgent() == "Mozilla/4")
	{
  		var XecureMime = navigator.mimeTypes["application/x-SoftForum-XecSSL40"];
		if (XecureMime) {   // Xecure PlugIn ÀÌ ÀÌ¹Ì ¼³Ä¡µÇ¾î ÀÖ´Â °æ¿ì
			if ( isOldPlugin(XecureMime.enabledPlugin.description,version))
				DownloadPackage(packageURL);
		}
		else {     // Xecure PlugIn ÀÌ ¼³Ä¡µÇ¾î ÀÖÁö ¾ÊÀº °æ¿ì
			DownloadPackage(packageURL);
		}
	}
}

function PrintObjectTag()
{
	//alert("Xecureweb ::: PrintObjectTag()");
	if(IsNetscape60())	alert("Netscape 6.0Àº Áö¿øÇÏÁö ¾Ê½À´Ï´Ù") ;
	else
	{
		if(navigator.appName == 'Netscape')
		{
			//document.write("<EMBED type='application/x-SoftForum-XecSSL40' hidden=true name='XecureWeb'></EMBED><NOEMBED>No XecureWeb 4.0 PlugIn</NOEMBED>") ;
			document.write("<EMBED type='application/x-SoftForum-XecSSL40' hidden=true name='XecureWeb' lang = 'ENGLISH'></EMBED><NOEMBED>No XecureWeb 4.0 PlugIn</NOEMBED>") ;
		}
		else
		{
			if( checkIE8() == 1 )
			{
				
				document.write('<OBJECT ID="XecureWeb" CLASSID="CLSID:7E9FDB80-5316-11D4-B02C-00C04F0CD404" CODEBASE="http://download.softforum.co.kr/Published/XecureWeb/v7.2.2.7/xw_install.cab#Version=7,2,2,7" width=0 height=0><PARAM NAME="SECKEY" VALUE="XW_SKS_INCA_DRIVER"><PARAM NAME="STORAGE" VALUE="HARD,REMOVABLE,ICCARD,MPHONE,PKCS11"><PARAM NAME="lang" VALUE="korean">No XecureWeb 7.0 PlugIn</OBJECT>') ;
			} else {
				document.write('<OBJECT ID="XecureWeb" CLASSID="CLSID:7E9FDB80-5316-11D4-B02C-00C04F0CD404" CODEBASE="http://download.softforum.co.kr/Published/XecureWeb/v7.2.2.5/xw_install.cab#Version=7,2,2,5" width=0 height=0><PARAM NAME="SECKEY" VALUE="XW_SKS_INCA_DRIVER"><PARAM NAME="STORAGE" VALUE="HARD,REMOVABLE,ICCARD,MPHONE,PKCS11"><PARAM NAME="lang" VALUE="korean">No XecureWeb 7.0 PlugIn</OBJECT>') ;	
			}
			//document.write('<OBJECT ID="XecureWeb" CLASSID="CLSID:7E9FDB80-5316-11D4-B02C-00C04F0CD404" CODEBASE="/XecureObject/xw_install.cab#Version=7,2,0,2" width=0 height=0>No XecureWeb 7.0 PlugIn</OBJECT>') ;
			//document.write('<OBJECT ID="XecureWeb" CLASSID="CLSID:7E9FDB80-5316-11D4-B02C-00C04F0CD404" CODEBASE="http://download.softforum.co.kr/Published/XecureWeb/v7.2.0.2/xw_install.cab#Version=7,2,0,2" width=0 height=0><PARAM NAME="SECKEY" VALUE="XW_SKS_INCA_DRIVER"><PARAM NAME="STORAGE" VALUE="HARD,REMOVABLE,ICCARD,MPHONE"><PARAM NAME="lang" VALUE="korean">No XecureWeb 7.0 PlugIn</OBJECT>') ;
			
		}
	}
	
	PutUBIKey();
}

function XecureNavigate2iframe( url, target, feature, sid)
{
	var qs ;
	var path = "/";
	var cipher;
	var xecure_url;

	path = getPath(url);

	cipher = document.XecureWeb.BlockEnc(xgate_addr, path, XecureEscape(qs),"POST");

	if( cipher.length == 0 ) 	return XecureWebError() ;

	xecure_url = path + "?q=" + sid + ";" + escape_url(cipher);
	if (feature=="" || feature==null) open ( xecure_url, target );
	else open(xecure_url, target, feature );
}

function getPath(url)
{
	var path = "/";
	// get path info & query string & hash from url
	qs_begin_index = url.indexOf('?');
	// if action is relative url, get base url from window location
	if ( url.charAt(0) != '/' && url.substring(0,7) != "http://" ) {
		path_end = window.location.href.indexOf('?');
		if(path_end < 0)	path_end_str = window.location.href;
		else				path_end_str = window.location.href.substring(0,path_end);
		path_relative_base_end = path_end_str.lastIndexOf('/');
		path_relative_base_str = path_end_str.substring(0,path_relative_base_end+1);
		path_begin_index = path_relative_base_str.substring (7,path_relative_base_str.length).indexOf('/');
		if (qs_begin_index < 0){
			path = path_relative_base_str.substring( 7+path_begin_index,path_relative_base_str.length ) + url;
		}
		else {
			path = path_relative_base_str.substring( 7+path_begin_index,path_relative_base_str.length )
				 + url.substring(0, qs_begin_index );
		}
	}
	else if ( url.substring(0,7) == "http://" ) {
		path_begin_index = url.substring (7, url.length).indexOf('/');
		if (qs_begin_index < 0){
			path = url.substring( path_begin_index + 7, url.length);
		}
		else {
			path = url.substring(path_begin_index + 7, qs_begin_index );
		}
	}
	else if (qs_begin_index < 0){
		path = url;
	}
	else {
		path = url.substring(0, qs_begin_index );
	}
	return path;
}
function VerifyVirtualID(Idn, TimeStamp, ServerCertPem)
{
        var msg;

        if( IsNetscape() )
                msg = document.XecureWeb.VerifyAndGetVID(xgate_addr, ServerCertPem, TimeStamp, escape(accept_cert), 0, escape(Idn));
        else
                msg = document.XecureWeb.VerifyAndGetVID(xgate_addr, ServerCertPem, TimeStamp, accept_cert, 0,Idn);

        return msg;

}


function Sign_with_vid_web( option, plain, svrCert, idn )
{
	var ret;
	var signed_msg;

	option = option + 12;

	if(IsNetscape())
	{
		alert("Not supported function");
	}
	else {
		ret = Set_ID_Num(idn);
		if(ret != 0) {
			XecureWebError();
			return signed_msg;
		}

		signed_msg = document.XecureWeb.SignDataWithVID ( xgate_addr, accept_cert, plain, svrCert, option, sign_desc, pwd_fail );
	}

    if( signed_msg == "" )	XecureWebError();

    return signed_msg;
}

function Set_ID_Num(idn)
{
	var ret;

	if( IsNetscape() )
	{
		alert("Not supported function");
	}
	else
	{
		ret = document.XecureWeb.SetIDNum(idn);
	}

	return ret;
}

function toggle(a) {

	var b_click = a;

	if(b_click == "Y")
	{
		//document.all.check1.style.display = "none";
		//document.all.check2.style.display = "none";
	}else if( b_click == "N") {
		//document.all.check1.style.display = "";
	    //document.all.check2.style.display = "";
	}
}
function PutMPhoneData()
{
	var bankUrl = "HYUNDAI_HI|";
	var coUrl = "SOFTFORUM|INCA";
	var popUrl = "http://" + window.location.host + "/infovine/download.html|width=450,height=400,left=10,top=10";
	var mphone_data = "MPHONE:" + xgate_addr + "&" + bankUrl + "&" + coUrl + "&" + popUrl + "|" + window.location.hostname;
	var version = document.XecureWeb.GetVerInfo(1);
	
	// Xecureweb Ctrl¹öÀüÀÌ 7,2,0,0 ºÎÅÍ Ubikey ¹öÀü Ã¼Å© °¡´É
	if( version.replace(/\s/g, "") >= "7,2,0,0" )
	{
		mphone_data += "|1.0.4.6";
	}
	document.XecureWeb.PutUserData( xgate_addr, mphone_data );	
	
	// Xecureweb Ctrl¹öÀüÀÌ 7,2,0,7ºÎÅÍ ¹ß±ÞÀû¿ë
	if( version.replace(/\s/g, "") >= "7,2,0,7" )
          document.XecureWeb.SetPhoneData(mphone_data,1);
}

function PutStorageImage()
{
	var PhonebannerUrl = "http://" + window.location.host + "/infovine/xweb004.bmp";
	var version = document.XecureWeb.GetVerInfo(1);
	
	/* Xecureweb Ctrl VersionÀÌ 7,2,2,0 ÀÌÇÏ ±âÁ¸ ÈÞ´ëÆùÀÌ¹ÌÁö ³»·Á¹ÞÀ½ (2008.09.04) */
    if( version.replace(/\s/g, "") < "7,2,2,0" ) {

		// Xecureweb Ctrl¹öÀüÀÌ 7,2,0,0ºÎÅÍ ¼­¸íµÈ ¹è³Ê »ç¿ë.
		if( version.replace(/\s/g, "") >= "7,2,0,0" )
		{
			PhonebannerUrl += ".sig";
		}
		document.XecureWeb.PutBigBannerUrl( "IMAGE:" + xgate_addr, PhonebannerUrl );
	}
}

function HaveControl_web()
{
	if(document.XecureWeb==null || typeof(document.XecureWeb) == "undefined" || document.XecureWeb.object==null) {
		return false;
	} else {
		return true;
	}
}
function PutUBIKey()
{
	if( HaveControl_web() )
	{
		PutMPhoneData();
		PutStorageImage();
	}
}

// IE8 ¿©ºÎ Ã¼Å©
function checkIE8()
{
	var rv = -1; // Return value assumes failure
	
	if (navigator.appName == 'Microsoft Internet Explorer')
 	{
		var ua = navigator.userAgent.toLowerCase();
		if( ua.indexOf('trident/4.0') != -1 )
		{
  			rv = 1;
	  	}
		else
		{
			rv = 0;
		}
	}
 	return rv;
}




// IE8¿¡¼­ ¼¼¼Ç°øÀ¯ ¹®Á¦ Ã³¸® 2009.06.22 Ãß°¡
// #362 [2009/01/30 by Lee,GuenHee] Restart IE8 nomerge mode.
//
// RestartWebBrowser()
//
//         - vender : Àç½ÃÀÛ ½ÃÅ³ À¥ºê¶ó¿ìÀú Á¾·ù ¼³Á¤
//
//                   - Internet Explorer 8      1
//
//
//         - mode   : Àç½ÃÀÛ ¹æ¹ý ¸ðµå¿¡ ´ëÇÑ ¼³Á¤
//                      (»ç¿ë ¾ÈµÇ°í ÀÖ´Â ÀÎÀÚÀÌ°í, ±âº»ÀûÀ¸·Î IE8¿¡¼­ nomerge¸ðµå Àç½ÇÇà ±â´É µ¿ÀÛÁß)
//
//         - Option : - 0 : Àç½ÇÇà ¿©ºÎ¸¦ ¹¯Áö ¾Ê°í ¹Ù·Î Àç½ÇÇàÀ» ½ÇÇà ½ÃÅ²´Ù.
//                      - 1 : Àç½ÇÇàÀ» ¾Ë¸®°í Àç½ÇÇà ¿©ºÎ¸¦ »ç¿ëÀÚ¿¡°Ô ¹¯´Â´Ù.
//
//         - restartUrl : Àç½ÇÇàµÈ Ã¢ÀÌ ¿¬°áµÉ URLÀÇ path Á¤º¸¸¦ ÀÔ·ÂÇÑ´Ù. 
//                              host´Â Àç½ÇÇàÇÑ ÆäÀÌÁöÀÇ °ªÀÌµÈ´Ù. »ó´ë °æ·Î¸¦ °¡¸®Å°´Â ./ ../ »ç¿ë¸øÇÑ´Ù.(º¸¾È°­È­)
//
//         - reserved : ¿¹¾àµÈ ÀÎÀÚ. APIÀÇ ¸¶Áö¸· °ª.
//
//         - ret     : 
//                     - 1  : BrowserÀÇ Restart°¡ Á¤»óÀûÀ¸·Î µ¿ÀÛµÇ¾î »õ ºê¶ó¿ìÀú ½ÇÇàµÇ°í ÇöÀç Ã¢ ´Ý±è.
//                     - 0  : ±âÁ¸¿¡ RestartµÈ ºê¶ó¿ìÀúÀÌ¹Ç·Î »õ ºê¶ó¿ìÀú ¶ç¿ìÁö ¾ÊÀ½.
//                     - -1 : RestartÃ³¸®Áß ¿¡·¯ ¹ß»ý.
//                     - -2 : ÇöÀç ¼³Ä¡µÈ ºê¶ó¿ìÀú°¡ IE8ÀÌ ¾Æ´Ñ ºê¶ó¿ìÀúÀÓ.
//                     - -3 : »ç¿ëÀÚ¿¡ ÀÇÇØ ºê¶ó¿ìÀú Restart°¡ Ãë¼ÒµÊ.
//
//         - ErrorCode : -2100 : ÇÑ IE¿¡¼­ µ¿½Ã¿¡ RestartIE ½ÇÇàµÇ¾úÀ»¶§.(½ºÅ©¸³Æ® ¹Ýº¹µÇ¾î È£Ãâ)
//                         -2101 : Àß¸øµÈ ÀÔ·Â ÀÎ¼ö.
//                         -2102 : »õ·Î ¶ç¿î IEÀÇ processId threadId È¹µæ ½ÇÆÐ
//                       -2103 : Nomerge·Î IE »õ·Î ¶ç¿ì±â ½ÇÆÐ
//                       -2104 : ÇöÀç Max 128·Î ¼³Á¤µÈ pid ¸®½ºÆ®(nomerge·Î ¶ç¿ï ¼ö ÀÖ´Â ÃÖ´ë IEÃ¢ °³¼ö)°¡ ³Ñ¾úÀ» ¶§.
//                         -2110 : ÀÔ·ÂµÈ restartUrl °ª¿¡ »ó´ë °æ·Î¸¦ ³ªÅ¸³»´Â ./ ../ ¿Í °°Àº °ª ÀÔ·Â½Ã ¿¡·¯.

function RestartWebBrowser( vender, mode, restartUrl, Option )
{
	//alert("xecureweb :::: RestartWebBrowser");	
           var ret;
           var vender;
           var errCode;
           
           //alert("Called RestartWebBrowser js function");

           if ( checkIE8() == 1 )
           {
                     //alert("return ture checkIE8 of javascript checking");
                     vender = 1;
                     if(HaveControl_web())
                                ret = document.XecureWeb.RestartWebBrowser(vender, mode, restartUrl, Option, 0);
                     else
                                ret = 0;
           }
           else
           {
                     //alert("return false checkIE8 of javascript checking");
                     return 0;
           }
           
           if( ret == 1 )
           {
                     // alert("nomerge Àç½ÇÇàÀÌ ½ÇÇàµÇ¾ú´Ù. ÇöÀçÀÇ IE Ã¢Àº °ð ´ÝÈù´Ù.");
           }
           
           if( ret == 0 )
           {
                     // alert("ÀÌ¹Ì nomerge Àç½ÇÇàµÈ ºê¶ó¿ìÀú ÆäÀÌÁöÀÌ´Ù.");
           }
           
           if( ret < 0 )
           {
                     // ¿¡·¯ Ã³¸® ºÎºÐ.
           }
           
           return ret;
}

/*
¹®Á¦Á¡ ÀÔ´Ï´Ù
1.	Çö»ó : À©µµ¿ìXP(ºñ½ºÅ¸µµ °£È¤ ¹ß»ý)¿¡¼­ Àç½ÇÇà µÇ¾î »õ·Î ½ÇÇàµÈ Ã¢ÀÌ Á¦´ë·Î ÆäÀÌÁö Á¢±ÙÀ» ¸øÇÑ´Ù. (³×Æ®¿öÅ© Á¢¼Ó ½ÇÆÐ·Î ³ª¿È) Refresh ÇÏ°Å³ª 
´Ù½Ã ÁÖ¼ÒÃ¢¿¡ ¿£ÅÍÄ¡¸é È­¸é ³ª¿Â´Ù.
PC¸¶´Ù Çö»óÀÌ ´Ù¸£¸ç °£ÇæÀûÀ¸·Î ¹ß»ýÇÏ´Â PCµµ ÀÖ°í 100% ¹ß»ýÇÏ´Â PCµµ ÀÖÀ½. ¹°·Ð F5 Å°¸¦ ´­·¯ refresh ½ÃÅ°¸é ÆäÀÌÁö ¿¬°áµÊ.

±âÁ¸¿¡ Å×½ºÆ® ´ç½Ã ¹ß°ßµÈ ¹®Á¦Á¡ Áß ¸¹Àº ºÎºÐÀÌ ÇØ°áÀÌ µÇ¾úÀ¸³ª À§ Çö»óÀ» Æ÷ÇÔÆÇ IE8 ÀÇ Á¾¼ÓÀûÀÎ ¹®Á¦Á¡¿¡ ´ëÇØ ÇØ°áÀÌ µÇÁö ¾Ê¾Æ
¾ÈÁ¤¼ºÀº °ËÁõÇÒ ¼ö ¾øÀ¸¸ç, ÃßÈÄ Ãß°¡ÀûÀÎ ¹®Á¦Á¡ÀÌ ¹ß»ýµÈ´Ù ÇÏ´õ¶óµµ Áö¿øÀ» ÇÏ±â°¡ ¾î·Æ½À´Ï´Ù.
*/