/********************************************************************************/
/* \uc2dc\uc2a4\ud15c            : GLW (Global Window)
/* \ud504\ub85c\uadf8\ub7a8 \uc544\uc774\ub514   :
/* \uc18c\uc2a4\ud30c\uc77c \uc774\ub984     : common.js
/* \uc124\uba85              : \uacf5\ud1b5 \uc2a4\ud06c\ub9bd\ud2b8 \uc601\ubb38 
/* \ubc84\uc804              : 1.0
/* \ucd5c\ucd08 \uc791\uc131\uc790       : \uc784\uc815\uae30
/* \ucd5c\ucd08 \uc791\uc131\uc77c\uc790     : 2006-01-17
/* \ucd5c\uadfc \uc218\uc815\uc790       :
/* \ucd5c\uadfc \uc218\uc815\uc77c\uc2dc     :
/* \ucd5c\uc885 \uc218\uc815\ub0b4\uc6a9     :
/********************************************************************************/


/* =====================================================================================================
   \ud568\uc218\uba85 : zc_xxxx()
   \uc124  \uba85 : Character, String\ucc98\ub9ac (\ub0a0\uc9dc,\uae08\uc561\uc740 \uc81c\uc678)
========================================================================================================= */

// \ud574\ub2f9 \ud3fc \uac1d\uccb4(formObj)\uc758 \uc785\ub825 \ud544\ub4dc \uc911,
// \ud544\uc218\ud56d\ubaa9\uc758 null \uccb4\ud06c, \uae38\uc774 \uccb4\ud06c, \uc8fc\ubbfc\ubc88\ud638,\ubc95\uc778\ubc88\ud638, \uc0ac\uc5c5\uc790 \ubc88\ud638, \uae08\uc561 \ud615\ud0dc\uc758 \ub370\uc774\ud0c0 \uc815\ud569\uc131\uc744 \uccb4\ud06c\ud558\ub294 \ud391\uc158
// \uac01\uac01\uc758 \uccb4\ud06c\ub97c \ud1b5\uacfc \ubabb\ud588\uc744\ub54c\ub294 \uac01 \ud544\ub4dc\uc640 \uc774\ub984\uc744 alert()\ub97c \ud1b5\ud574 \ubcf4\uc5ec\uc8fc\uace0 false\ub97c \ub9ac\ud134\ud558\uace0,
// \ubaa8\ub4e0 \uccb4\ud06c\ub97c \ud1b5\uacfc\ud558\uba74 true\ub97c \ub9ac\ud134\ud558\uba74\uc11c, "\ucc98\ub9ac\uc911\uc785\ub2c8\ub2e4"\ub97c \ubcf4\uc5ec\uc8fc\ub294 \ud31d\uc5c5\ucc3d\uc744 \ud638\ucd9c\ud55c\ub2e4.


function zcCheckForm(formObj){
	var obj = formObj.all;
	var flag = false;
	var msg = "";
	var focusObj;				// focus\ub97c \uc8fc\uc5b4\uc57c \ud560 \uc624\ube0c\uc81d\ud2b8
	var alertFlag = false;		// true \uc774\uba74 alert\ucc3d\uc744
	var confirmFlag = false;	// true \uc774\uba74 confirm\ucc3d\uc744

	for(var i = 0 ; i < obj.length ; i++){

		if(obj.item(i).type=="text" || obj.item(i).type=="textarea"){
			zsDelRLSpace(obj.item(i));
		}

		//  -------------\ud544\uc218 \ud56d\ubaa9 \uccb4\ud06c---------------//
		if(obj.item(i).notnull != undefined ){

			if(obj.item(i).type=="radio" || obj.item(i).type=="checkbox"){	//\uccb4\ud06c\ubc15\uc2a4\ub098 \ub77c\ub514\uc624 \ubc15\uc2a4\ub77c\uba74
				var colObj = document.getElementsByName(obj.item(i).name);
				for(var j = 0 ; j<colObj.length ; j++){	// \uccb4\ud06c\ubc15\uc2a4\ub098 \ub77c\ub514\uc624 \ubc15\uc2a4\uc5d0\uc11c \uccb4\ud06c\ub41c \uac83\uc774 \uc788\ub294\uc9c0 \uac80\uc0ac
					if(colObj[j].checked){
						flag = true;
						break;
					}
				}
				if(!flag){	// \ud544\uc218 \ud56d\ubaa9 \ub204\ub77d\uc774 \uc788\ub2e4\uba74 \uba54\uc2dc\uc9c0\uc5d0 \ucd94\uac00
					//setErrorFld(obj.item(i), obj.item(i).msgTitle + " \uc740(\ub294) \ud544\uc218\uc785\ub825 \ud56d\ubaa9\uc785\ub2c8\ub2e4.\r\n");
					setErrorFld(obj.item(i), obj.item(i).msgTitle + " : It must be input. \r\n");
				}
				flag = false;	// flag \ucd08\uae30\ud654

			}else{	// \uadf8\uc678 input or textarea \ub77c\uba74
				if(obj.item(i).value == ""){	// value\uac00 null\uc774\ub77c\uba74
					//setErrorFld(obj.item(i), obj.item(i).msgTitle + " \uc740(\ub294) \ud544\uc218\uc785\ub825 \ud56d\ubaa9\uc785\ub2c8\ub2e4.\r\n");
					setErrorFld(obj.item(i), obj.item(i).msgTitle + " :  It must be input. \r\n");
				}
			}
		}

		//  ------------- \uae38\uc774 \uccb4\ud06c---------------//
		if(obj.item(i).correctLen != undefined && obj.item(i).value != ""){
			var str = zsRmString(obj.item(i).value, "-");	// "-" \uc81c\uac70
			if(str.length != obj.item(i).correctLen){	// \uc62c\ubc14\ub978 \uae38\uc774\uac00 \uc544\ub2c8\ub77c\uba74
				//setErrorFld(obj.item(i), obj.item(i).msgTitle + "\uc5d0\ub294 " +obj.item(i).correctLen+ "\uc790\uc758 \ub370\uc774\ud0c0\ub97c \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4.\r\n");
				setErrorFld(obj.item(i), obj.item(i).msgTitle + " : " +obj.item(i).correctLen+ ",  You must input the date in the brackets.\r\n");
			}
		}

		if(obj.item(i).minLen != undefined && obj.item(i).value != ""){
			if(zsGetBytesLength(obj.item(i).value)  < parseInt(obj.item(i).minLen)){
				//setErrorFld(obj.item(i), obj.item(i).msgTitle + "\uc5d0\ub294 " +obj.item(i).minLen+ "\uc790 \uc774\uc0c1\uc758 \ub370\uc774\ud130\ub97c \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4.\r\n");
				setErrorFld(obj.item(i), obj.item(i).msgTitle + " : " +obj.item(i).minLen+ ", You must input more than the data in the brackets\r\n");
			}
		}
		
		if(obj.item(i).len != undefined &&  obj.item(i).value != ""){
			
			if(obj.item(i).comma != undefined) {
				var str = obj.item(i).value;
				var arrStr = str.split('.');
				if(arrStr.length > 2) {
					setErrorFld(obj.item(i), obj.item(i).msgTitle + ", You must input just one decimal point in the brackets. \r\n");
				}
				
				if(zsGetBytesLength(arrStr[0])  > (parseInt(obj.item(i).len)-parseInt(obj.item(i).comma))) {
					var commalen = (parseInt(obj.item(i).len)-parseInt(obj.item(i).comma));
					//setErrorFld(obj.item(i), obj.item(i).msgTitle + "\uc5d0\ub294 \uc18c\uc218\uc810 \uc678\uc5d0 " +commalen+ "\uc790 \uc774\ud558\uc758 \ub370\uc774\ud130\ub97c \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4.\r\n");
					setErrorFld(obj.item(i), obj.item(i).msgTitle + " : "+commalen+" , You must input the data following the brackets.\r\n");
				}
		
				if(arrStr.length == 2) {
					if(zsGetBytesLength(arrStr[1])  > parseInt(obj.item(i).comma)) {
						//setErrorFld(obj.item(i), obj.item(i).msgTitle + "\uc5d0\ub294 \uc18c\uc218\uc810 \uc774\ud558 " +obj.item(i).comma+ "\uc790\ub9ac\uc758 \ub370\uc774\ud130\ub97c \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4.\r\n");
						setErrorFld(obj.item(i), obj.item(i).msgTitle + " : " +obj.item(i).comma+ ", You must input the data in the brackets.\r\n");
					}
				}
			
			} else {
				if(zsGetBytesLength(obj.item(i).value)  > parseInt(obj.item(i).len)){	// \uc62c\ubc14\ub978 \uae38\uc774\uac00 \uc544\ub2c8\ub77c\uba74
					//setErrorFld(obj.item(i), obj.item(i).msgTitle + "\uc5d0\ub294 " +obj.item(i).len+ "\uc790 (\ud55c\uae00 " + parseInt(obj.item(i).len/2) +"\uc790) \uc774\ud558\uc758 \ub370\uc774\ud130\ub97c \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4.\r\n");
					setErrorFld(obj.item(i), obj.item(i).msgTitle + " : " +obj.item(i).len+ ", You must input the data following the brackets.\r\n");
				}
			}
		}

		// -------------\uae08\uc561\uc778\uc9c0 \uccb4\ud06c(\uc22b\uc790, "-", ".", "," \ub85c\ub9cc \uc774\ub8e8\uc5b4\uc84c\ub294\uc9c0 \uccb4\ud06c----------------//
		if(obj.item(i).format =="money" && obj.item(i).value !=""){
			if(!zmIsMoney(obj.item(i))) {		// \uc62c\ubc14\ub978 \uae08\uc561\ud615\ud0dc\uac00 \uc544\ub2c8\ub77c\uba74
				//setErrorFld(obj.item(i), obj.item(i).msgTitle + "\uc5d0\ub294 \uc22b\uc790\ub9cc \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4.\r\n");
				setErrorFld(obj.item(i), obj.item(i).msgTitle + " :  You must input the only number.\r\n");
			}
		}
		
		// ------------- \uc22b\uc790\ub9cc \uccb4\ud06c (// --------------//
		if(obj.item(i).format =="number" && obj.item(i).value !=""){
			if(!zcIsNum(obj.item(i))) {		// \uc62c\ubc14\ub978 \uc22b\uc790\ud615\ud0dc\uac00 \uc544\ub2c8\ub77c\uba74
				//setErrorFld(obj.item(i), obj.item(i).msgTitle + "\uc5d0\ub294 \uc22b\uc790\ub9cc \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4.\r\n");
				setErrorFld(obj.item(i), obj.item(i).msgTitle + " : You must input the only number.\r\n");
			}
		}

		// -------------\uc774\uba54\uc77c\uc778\uc9c0 \uccb4\ud06c----------------//
		if(obj.item(i).format =="email" && obj.item(i).value !=""){
			if(!zcIsEmail(obj.item(i))) {		// \uc62c\ubc14\ub978 \uc774\uba54\uc77c\ud615\ud0dc\uac00 \uc544\ub2c8\ub77c\uba74
				//setErrorFld(obj.item(i), obj.item(i).msgTitle + "\uc774(\uac00) \uc62c\ubc14\ub974\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.\r\n");
				setErrorFld(obj.item(i), obj.item(i).msgTitle + " : The brackets are wrong.\r\n");
			}
		}

		// -------------\ub0a0\uc9dc\uc778\uc9c0 \uccb4\ud06c----------------//
		if(obj.item(i).format =="date" && obj.item(i).value !=""){
			if(!zdIsDate(obj.item(i).value)) {		// \uc62c\ubc14\ub978 \ub0a0\uc9dc\ud615\ud0dc\uac00 \uc544\ub2c8\ub77c\uba74
				//setErrorFld(obj.item(i), obj.item(i).msgTitle + "\uc5d0\ub294 \ub0a0\uc9dc\ub9cc \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4.\r\n");
				setErrorFld(obj.item(i), obj.item(i).msgTitle + " : You must input the date in the brackets.\r\n");
			}
		}

		// -------------\ub0a0\uc9dc_\ub144\uc6d4\uc778\uc9c0 \uccb4\ud06c----------------//
		if(obj.item(i).format =="dateYM" && obj.item(i).value !=""){
			if(!zdIsDateYM(obj.item(i).value)) {		// \uc62c\ubc14\ub978 \ub0a0\uc9dc\ud615\ud0dc\uac00 \uc544\ub2c8\ub77c\uba74
				//setErrorFld(obj.item(i), obj.item(i).msgTitle + "\uc5d0\ub294 \ub0a0\uc9dc\ub9cc \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4.\r\n");
				setErrorFld(obj.item(i), obj.item(i).msgTitle + " : You must input the date in the brackets.\r\n");
			}
		}

		// -------------\uc2dc\uac04\uc778\uc9c0 \uccb4\ud06c----------------//
		if(obj.item(i).format =="time" && obj.item(i).value !=""){
			if(!zdIsTime(obj.item(i).value)) {		// \uc62c\ubc14\ub978 \uc2dc\uac04\ud615\ud0dc\uac00 \uc544\ub2c8\ub77c\uba74
				//setErrorFld(obj.item(i), obj.item(i).msgTitle + "\uc774(\uac00) \uc62c\ubc14\ub974\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.\r\n");
				setErrorFld(obj.item(i), obj.item(i).msgTitle + " : The brackets are wrong.\r\n");
			}
		}

		// -------------\uc8fc\ubbfc\ubc88\ud638 \uc815\ud569\uc131 \uccb4\ud06c----------------//
		if(obj.item(i).format =="jumin" && obj.item(i).value !=""){
			if(!zcIsJumin(obj.item(i))) {		// \uc62c\ubc14\ub978 \uc8fc\ubbfc\ubc88\ud638\uac00 \uc544\ub2c8\ub77c\uba74
				//setErrorFld(obj.item(i), obj.item(i).msgTitle + "\uc774(\uac00) \uc62c\ubc14\ub974\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.\r\n");
				setErrorFld(obj.item(i), obj.item(i).msgTitle + " : The brackets are wrong.\r\n");
			}
		}

		// -------------\ubc95\uc778\ubc88\ud638 \uc815\ud569\uc131 \uccb4\ud06c----------------//
		if(obj.item(i).format =="cono" && obj.item(i).value !=""){
			if(!zcIsBupin(obj.item(i))) {		// \uc62c\ubc14\ub978 \ubc95\uc778\ubc88\ud638\uac00 \uc544\ub2c8\ub77c\uba74
				//setErrorFld(obj.item(i), obj.item(i).msgTitle + "\uc774(\uac00) \uc62c\ubc14\ub974\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.\r\n");
				setErrorFld(obj.item(i), obj.item(i).msgTitle + " : The brackets are wrong.\r\n");
			}
		}

		// -------------\uc8fc\ubbfc(\ubc95\uc778)\ubc88\ud638 \uc815\ud569\uc131 \uccb4\ud06c----------------//
		if(obj.item(i).format =="perid" && obj.item(i).value !=""){
			if(!zcIsPerid(obj.item(i))) {		// \uc62c\ubc14\ub978 \uc8fc\ubbfc(\ubc95\uc778)\ubc88\ud638\uac00 \uc544\ub2c8\ub77c\uba74
				//setErrorFld(obj.item(i), obj.item(i).msgTitle + "\uc774(\uac00) \uc62c\ubc14\ub974\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.\r\n");
				setErrorFld(obj.item(i), obj.item(i).msgTitle + " : The brackets are wrong.\r\n");
			}
		}

		// -------------\uc0ac\uc5c5\uc790\ubc88\ud638 \uc815\ud569\uc131 \uccb4\ud06c----------------//
		if(obj.item(i).format =="resno" && obj.item(i).value !=""){
			if(!zcIsResno(obj.item(i))) {		// \uc62c\ubc14\ub978 \uc0ac\uc5c5\uc790\ubc88\ud638\uac00 \uc544\ub2c8\ub77c\uba74
				//setErrorFld(obj.item(i), obj.item(i).msgTitle + "\uc774(\uac00) \uc62c\ubc14\ub974\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.\r\n");
				setErrorFld(obj.item(i), obj.item(i).msgTitle + " : The brackets are wrong.\r\n");
			}
		}

		
		// attach file check...		
		/*
		if(obj.item(i).type == "file") {
			var fileExt = '';
			var realfilename = obj.item(i).value;
			if(realfilename.length > 4 && realfilename.indexOf('.')>0) {
				fileExt = realfilename.substring(realfilename.lastIndexOf('.'));
				if( fileExt=='.asp' || fileExt=='.jsp' || fileExt=='.php'
					|| fileExt=='.html' || fileExt=='.bak' || fileExt=='.inc'
					|| fileExt=='.exe' || fileExt=='.bat' || fileExt=='.com'
					|| fileExt=='.htm' || fileExt=='.bsp' ) {
					//setErrorFld(obj.item(i), "asp, jsp, php, html, bak, inc, exe, bat, com, htm, bsp \ud30c\uc77c\uc740 \uc5c5\ub85c\ub4dc\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.\r\n");
					setErrorFld(obj.item(i), alertMsg[13] + "\r\n");
					
				}
			}
		}
		*/

	}

	if (alertFlag) {	// alert\ucc3d\uc744 \ub744\uc6b8\uac8c \uc788\uc73c\uba74,
		alert(msg);

		if ( focusObj.disabled == false )	focusObj.focus();
		return false;
	/*
	} else if (confirmFlag) {	// confirm\ucc3d\uc744 \ub744\uc6b8\uac8c \uc788\uc73c\uba74,
		msg += "\ucc98\ub9ac\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c ?";
		if ( confirm(msg) ) return true;

		if ( focusObj.disabled == false )	focusObj.focus();
		return false;
	*/
	}else	// \ubaa8\ub4e0 \uccb4\ud06c\ub97c \ud1b5\uacfc\ud588\ub2e4\uba74
		return true;

	//	\ud3ec\ucee4\uc2a4\ub97c \uc904 \uc624\ube0c\uc81d\ud2b8 \uc14b\ud305, alert \uba54\uc2dc\uc9c0 \ud14d\uc2a4\ud2b8 \ucd94\uac00
	function setErrorFld(obj, str){
		var is_show = 'Y';
		try {
			obj.focus();
		} catch(ee) {
			is_show = 'N';
		}
		
		if(is_show == 'Y') {
			alertFlag = true;
			if(focusObj == undefined)		focusObj = obj;		//focusObj \uc14b\ud305
			msg += str;		//\uba54\uc2dc\uc9c0 \uc14b\ud305
		}
	}
}

// input \ud544\ub4dc \uac1d\uccb4(obj)\uc758 \uac12\uc774 \uc21c\uc218\ud55c \uc601\ubb38\uc790("A"-"Z", or "a"-"z") \uc778\uc9c0 \uccb4\ud06c
// \uc601\ubb38\uc774\ub77c\uba74 true, \uc544\ub2c8\ub77c\uba74 false\ub97c \ub9ac\ud134
function zcIsAlphaOnly(obj) {
	var str = obj.value;
	if(zcIsNull(str)) return false;

	var isValid = true;
  	for (var i = 0; i < str.length; i++) {
		if (!(  ((str.charAt(i) >= 'a') && (str.charAt(i) <= 'z')) ||	((str.charAt(i) >= 'A') && (str.charAt(i) <= 'Z')) ) ){
         	isValid = false;
			break;
     	}
   }
	return isValid;
}

//  input \ud544\ub4dc \uac1d\uccb4(obj)\uc758 \uac12\uc774 \uc601\ubb38\uc790("A"-"Z", or "a"-"z") \ub610\ub294 \uc22b\uc790 \uc774\uba74 true
function zcIsAlphaNum( obj ) {
	var str = obj.value;
	if(zcIsNull(str)) return false;

	var isValid = true;
   	for (var i = 0; i < str.length; i++)
   	{
      	if (!(((str.charAt(i) >= "0") && (str.charAt(i) <= "9")) ||
      			((str.charAt(i) >= "a") && (str.charAt(i) <= "z")) ||
      			((str.charAt(i) >= "A") && (str.charAt(i) <= "Z"))))
			{
				isValid = false;
				break;
			}
   	}
   	return isValid;
}


//  input \ud544\ub4dc \uac1d\uccb4(obj)\uc758 \uac12\uc774 \uc815\uc218(0~9)\ub9cc \uc785\ub825\ud558\uc600\ub294\uc9c0 \ud655\uc778
function zcIsNum(obj) {
	var str = obj.value;
	return zcIsNumStr(obj.value);
}

//	\ubb38\uc790\uc5f4(str)\uc774 (0-9)\ub9cc\uc73c\ub85c \uc774\ub8e8\uc5b4\uc84c\ub294\uc9c0 \uccb4\ud06c
function zcIsNumStr(str) {
	if(zcIsNull(str)) return false;

	var temp = "";
	var n = String(str);
	var len = n.length;
	var pos = 0;
  	var ch = '';

	while (pos < len) {
		ch = n.charAt(pos);
		if ((ch >= '0') && (ch <= '9')) {
			temp = temp + ch;
		}else{
			return false;
		}
		pos = pos + 1;
	}
	return true;
}

function zcNotKorean(obj) {
    var deny_pattern = /[^(\uac00-\ud7a3)]/;

	if(!deny_pattern.test(obj.value)) {
		//alert(alertMsg[15]);
		obj.focus();
		obj.select();
		return false;
	}

	return true;
}

//  input \ud544\ub4dc \uac1d\uccb4(obj)\uc758 \uac12\uc774 \uc815\uc218(0~9)\ub9cc \uc785\ub825\ud558\uc600\ub294\uc9c0 \ud655\uc778 +  \ubb38\uc790\uac00 \uc788\ub2e4\uba74 obj \uac12 \ucd08\uae30\ud654
function zcIsNumAndInit(obj) {
	var str = obj.value;

	if(zcIsNumStr(str))
		return true;
	else{
		obj.value="";
		//obj.focus();
		return false;
	}
}

//  input \ud544\ub4dc\uc758 \uac12\uc774 \uc815\uc218(0~9)\ub9cc \uc785\ub825\ud558\uc600\ub294\uc9c0 \ud655\uc778 +  \ubb38\uc790\uac00 \uc788\ub2e4\uba74 obj \uac12 \ucd08\uae30\ud654
function zcIsStrNumAndInit(str) {
	//var str = obj.value;

	if(zcIsNumStr(str))
		return true;
	else{
		obj.value="";
		return false;
	}
}

//  input \ud544\ub4dc \uac1d\uccb4(obj)\uc758 \uac12\uc774 \uc815\uc218(0~9), \uc18c\uc218\uc810('.') \uc774\uba74 true
function zcIsNumDot(obj) {
    var deny_pattern = /[^0-9"."]/;
	var paramValue = obj.value;

	if ( paramValue.substr(0,1) == "-" ) paramValue = paramValue.substr(1,paramValue.length);

	if(deny_pattern.test(paramValue)) {
		//alert(alertMsg[ 8]); // \uc22b\uc790\ub9cc \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4.
		//alert('\uc22b\uc790\ub9cc \uc785\ub825\ud574\uc57c \ud569\ub2c8\ub2e4');
		alert('You must input the only number');
		obj.focus();
		obj.select();
		return false;
	}

	return true;
}

//  input \ud544\ub4dc \uac1d\uccb4(obj)\uc758 \uac12\uc774 \uc815\uc218(0~9), \ub9c8\uc774\ub108\uc2a4('-'), \uc18c\uc218\uc810('.') \uc774\uba74 true
function zcIsNumMinusDot( obj ) {
	var str = obj.value;
	if(zcIsNull(str)) return false;

	var isValid = true;
	var decCount = 0;		// number of decimal points in the string
	//str += "";

	for (var i = 0; i < str.length; i++) {
		// track number of decimal points
		if (str.charAt(i) == ".")
			decCount++;

	    	if (!((str.charAt(i) >= "0") && (str.charAt(i) <= "9") ||
		      (str.charAt(i) == "-") || (str.charAt(i) == "."))) {
	      	 	isValid = false;
	      	 	break;
		} else if ((str.charAt(i) == "-" && i != 0) ||
			   (str.charAt(i) == "." && str.length == 1) ||
			   (str.charAt(i) == "." && decCount > 1)) {
	       		isValid = false;
	      	 	break;
	        }
   	}
   	return isValid;
}
//  input \ud544\ub4dc \uac1d\uccb4(obj)\uc758 \uac12\uc774 \uc815\uc218(0~9), \ub9c8\uc774\ub108\uc2a4('-'), \uc18c\uc218\uc810(':') \uc774\uba74 true
function zcIsNumMinusDouble( obj ) {
	var str = obj.value;
	if(zcIsNull(str)) return false;

	var isValid = true;
	var decCount = 0;		// number of decimal points in the string
	//str += "";

	for (var i = 0; i < str.length; i++) {
		// track number of decimal points

	    	if (!((str.charAt(i) >= "0") && (str.charAt(i) <= "9") ||
		      (str.charAt(i) == "-") || (str.charAt(i) == ":"))) {
	      	 	isValid = false;
	      	 	break;
		}
   	}
   	return isValid;
}
//  input \ud544\ub4dc \uac1d\uccb4(obj)\uc758 \uac12\uc774 \uc815\uc218(0~9)\ub85c \uc774\ub8e8\uc5b4\uc84c\ub2e4\uba74 true, allowNegatives\uac00 true\uc77c\uacbd\uc6b0 \uc74c\uc218(-\ud3ec\ud568\ub41c \uc815\uc218)\ub3c4 true
function zcIsNumMinus( obj, allowNegatives ) {
	var str = obj.value;
	if(zcIsNull(str)) return false;

	var isValid = true;
	//str += "";

	if (allowNegatives+"" == "undefined" || allowNegatives+"" == "null")
		allowNegatives = true;

	for (var i = 0; i < str.length; i++) {
	    	if (!((str.charAt(i) >= "0") && (str.charAt(i) <= "9") || (str.charAt(i) == "-"))) {
	       		isValid = false;
	       		break;
		} else if ((str.charAt(i) == "-" && i != 0) ||
					(str.charAt(i) == "-" && !allowNegatives)) {
	       		isValid = false;
	       		break;
	        }
   	}
   	return isValid;
}

//  input \ud544\ub4dc \uac1d\uccb4(obj)\uc758 \uac12\uc774 \uc62c\ubc14\ub978 email\ud3ec\ub9f7\uc774\uba74 true
function zcIsEmail( obj ) {
    var deny_pattern = /[^(--a-z_A-Z0-9"@.")]/;
    if (deny_pattern.test(obj.value)) return false;

	var str = "";
	if (typeof obj=="object") str = obj.value;
	else			  str = obj;

	if(zcIsNull(str)) return false;	//\uacf5\ubc31\uc774\ub77c\uba74

	var isValid = true;
	str += "";

	namestr = str.substring(0, str.indexOf("@"));  // everything before the '@'
	domainstr = str.substring(str.indexOf("@")+1, str.length); // everything after the '@'

	// Rules : @\uc55e\uc5d0 \uae00\uc790\uac00 \uc788\uc5b4\uc57c \ud558\uba70, \ub3c4\uba54\uc778\ubd80\ubd84\uc5d4 \ubc18\ub4dc\uc2dc "." \uc774 \uc788\uc5b4\uc57c \ud558\uba70,
	//				@\uc640 . \uc774 \uc5f0\uc18d\ud574\uc11c \uc62c \uc218 \uc5c6\uace0, \ub9c8\uc9c0\ub9c9 \uae00\uc790\ub294 \ubc18\ub4dc\uc2dc \uc601\ubb38\uc774\uc5b4\uc57c \ud55c\ub2e4.
   	if (zcIsBlank(obj) || (namestr.length == 0) ||
			(domainstr.indexOf(".") <= 0) ||
			(domainstr.indexOf("@") != -1) ||
			!(	(str.charAt(str.length-1) >= 'a' && str.charAt(str.length-1) <= 'z') || (str.charAt(str.length-1) >= 'A' && str.charAt(str.length-1) <= 'Z')	)
	){
			isValid = false;
	}
   	return isValid;
}

//  input \ud544\ub4dc \uac1d\uccb4(obj)\uc758 \uac12\uc774 blank\uc774\uba74 true
function zcIsBlank( obj ) {
	var str = obj.value;
	return zcIsNull(str);
}


// str\uc774 null, undefined, NaN, \uacf5\ubc31("") \uc774\uba74 true
function zcIsNull(str) {
 	if (str+"" == "undefined" || str+"" == "NaN" || str+"" == "null" || str+"" == "")
 		return true;
	return false;
}

//  input \ud544\ub4dc \uac1d\uccb4(obj)\uc758 \uac12\uc774 \uc62c\ubc14\ub978 \uc8fc\ubbfc\ubc88\ud638\uc778\uc9c0 \uccb4\ud06c(123456-1234567 \ud615\ud0dc, 1234561234567 \ubaa8\ub450 \uccb4\ud06c \uac00\ub2a5)
function zcIsJumin( obj ) {
	var str = "";
	if (typeof obj=="object") str = obj.value;
	else			  str = obj;

	if(zcIsNull(str)) return false;	//\uacf5\ubc31\uc774\ub77c\uba74

	str = zsRmString(str, "-");	// "-" \uc81c\uac70
	var  j=9
	var  id_chk=0

	object =  new Array(13)
	for(var i=0;i < 13;i++) {
		object[i] = str.substring(i,i+1)
	}
	var chkdigit = str.substring(12, 13)
	for(var i=0;i < 12;i++){
	    if( i == 8 )
	    j = 9
	    object[i]=object[i]*j
	    j--
	    id_chk +=object[i]
	}
    if(((id_chk%11 == 0) && (chkdigit == 1)) || ((id_chk%11 ==10)&& (chkdigit ==0))){
         return true;
    }
    else if((id_chk %11 != 0) && (id_chk % 11 != 10 ) && (id_chk % 11 == chkdigit)){
         return true;
    }
    else{
         return false;
    }
}

//  input \ud544\ub4dc \uac1d\uccb4(obj)\uc758 \uac12\uc774 \uc62c\ubc14\ub978 \ubc95\uc778\ubc88\ud638\uc778\uc9c0\uccb4\ud06c
function zcIsBupin(obj) {
	var str = "";
	if (typeof obj=="object") str = obj.value;
	else			  str = obj;

	if(zcIsNull(str)) return false;	//\uacf5\ubc31\uc774\ub77c\uba74

	str = zsRmString(str, "-");	// "-" \uc81c\uac70

	var check = 1;
	var no = new Array(13);
	var sum = 0;
	var rem = 0;
	var m = 0;

	m = parseInt(str.charAt(12),10); // \ubc88\ud638\uc758 \ub9c8\uc9c0\ub9c9 \uc22b\uc790 \uc5bb\uae30

	for(var i=0; i<12; i++) no[i] = parseInt(str.charAt(i),10); // 1~12\uae4c\uc9c0 \uc22b\uc790 \uc5bb\uae30

	for(var i=0; i<12; i++) {
		sum += (check * no[i]);
		check = (check==1) ? 2 : 1;
	}

	rem = sum % 10; // \ub098\uba38\uc9c0 \uad6c\ud558\uae30
	rem = 10 - rem;
	rem = (rem >= 10) ? rem - 10 : rem;

	// \ub9c8\uc9c0\ub9c9\ubc88\uc9f8\uc640 10-rem\uc758 \uac12\uc744 \ube44\uad50
	if(m == rem) return true; // \uc815\ud655
	else return false; // \ubd80\uc815\ud655
}

//  input \ud544\ub4dc \uac1d\uccb4(obj)\uc758 \uac12\uc774 \uc62c\ubc14\ub978 \uc8fc\ubbfc(\ubc95\uc778)\ubc88\ud638\uc778\uc9c0 \uccb4\ud06c(123456-1234567 \ud615\ud0dc, 1234561234567 \ubaa8\ub450 \uccb4\ud06c \uac00\ub2a5)
function zcIsPerid( obj ) {
	if(zcIsJumin(obj) || zcIsBupin(obj))	return true;
    	else  return false;
}

// input \ud544\ub4dc \uac1d\uccb4(obj)\uc758 \uac12\uc774 \uc62c\ubc14\ub978 \uc0ac\uc5c5\uc790\ub4f1\ub85d\ubc88\ud638\uc778\uc9c0 \uccb4\ud06c
function zcIsResno(obj){
	var str = "";
	if (typeof obj=="object") str = obj.value;
	else			  str = obj;

	if(zcIsNull(str)) return false;	//\uacf5\ubc31\uc774\ub77c\uba74

	str = zsRmString(str, "-");	// "-" \uc81c\uac70

	var check = 0;
	var no = new Array(10);
	var sum = 0;
	var tmpNo = 0;
	var tmpStr = 0;

	for(var i=0; i<10; i++) no[i] = parseInt(str.charAt(i),10); // 1~10\uae4c\uc9c0 \uc22b\uc790 \uc5bb\uae30

	for(var i=0; i<10; i++) {
		if((i%3)==0)
			tmpNo = no[i] + 0;
		else if ( (i%3) == 1)
			tmpNo = no[i] * 3;
		else if ( (i%3) == 2)
			tmpNo = no[i] * 7;

		if(i==8)
		{
			tmpNo = no[i] * 5;
			if(tmpNo > 9) {
				tmpStr = tmpNo + "";
				tmpNo = parseInt(tmpStr.charAt(0),10) + parseInt(tmpStr.charAt(1),10);
			}
		}
		sum += tmpNo;
	}
	if( (sum % 10) == 0) return true; // \uc815\ud655
	else return false; // \ubd80\uc815\ud655
}

// input \ud544\ub4dc \uac1d\uccb4(obj)\uc758 \uac12\uc774 \uc8fc\uc5b4\uc9c4 \uae38\uc774(lengthInt)\uc640 \uac19\uc740\uc9c0 \uccb4\ud06c
function zcIsCorrectLen(obj, lengthInt){
	var str = obj.value;
	if(zcIsNull(str)) return false;	//\uacf5\ubc31\uc774\ub77c\uba74

	if( str.length == lengthInt)		// \ubb38\uc790\uc5f4\uc758 \uae38\uc774\uc640 lengthInt \uac00 \uac19\ub2e4\uba74
		return true;
	else return false;
}

// \ucd5c\uc18c \ucca8\ubd80\uc790\ub8cc \ud55c\uac1c \uc774\uc0c1 \uc120\ud0dd\ud558\uac8c \ud558\uae30 \uc704\ud574 \ud30c\uc77c \uc874\uc7ac \uc5ec\ubd80 \uccb4\ud06c
/*
function zcExistFile() {

	if(frmWrite.file1.value=="" && frmWrite.file2.value==""  && frmWrite.file3.value=="" ){
		alert(" \ucca8\ubd80 \uc790\ub8cc\ub97c \uc120\ud0dd\ud574 \uc8fc\uc138\uc694(\ucd5c\uc18c\ud55c\uac1c\uc774\uc0c1)");
		return;
	}

	frmWrite.action = "/ComnWeb/jsp/util/SaveFile.jsp";
	frmWrite.submit();
}
*/

// String\uc744 \ubc1b\uc544\uc11c 0~9 \uae4c\uc9c0\uc758 \uc22b\uc790\ub9cc \ub9ac\ud134\ud574\uc900\ub2e4.
function zcReturnTelNo(str) {
	var retStr = "";

 	if (str+"" == "undefined" || str+"" == "NaN" || str+"" == "null" || str+"" == "") return retStr;

	for (var i = 0; i < str.length; i++) {
		if ( (str.charAt(i) >= '0') && (str.charAt(i) <= '9') ) {
			retStr = retStr + str.charAt(i);
		}
	}
	return retStr;
}


///////////////////////////////////////////////////////////////////////////////////////////////////////////
//		\uc218\uc815\ud398\uc774\uc9c0\uc5d0\uc11c \ubcc0\uacbd\ub41c \uac83\uc774 \uc788\ub294\uc9c0 \uccb4\ud06c
//			\ud568\uc218\uba85 : zcIsChanged() \ucd5c\ucd08 onload \uc2dc zcInitData() \ud568\uc218\uac00 \ud638\ucd9c\ub418\uace0 var oData = new Array() ; \uac00 \uc804\uc5ed\ubcc0\uc218\ub85c \uc120\uc5b8\ub418\uc57c\ud568
//			\uc124  \uba85 : Form \ub0b4\uc6a9\uc911 \ubcc0\uacbd\uc0ac\ud56d\uc744 \uccb4\ud06c\ud558\uc5ec submit\uc2dc alert\ud568 scriptFormTest.html \uc5d0\uc11c \ud655\uc778
///////////////////////////////////////////////////////////////////////////////////////////////////////////
var oData = new Array() ; //\ucd5c\ucd08 form \uc5d0 set \ub418\ub294 \ub370\uc774\ud0c0\ub97c \uc77d\uc744 array

//\ud3fc(diffForm\uc5d0 \uac10\uc2f8\uc9c4 \ud544\ub4dc)\uc758 \ub370\uc774\ud0c0\ub97c \uc77d\uc5b4\uc11c array\uc5d0 \uc800\uc7a5\ud55c\ub2e4.
/*
function zcInitData(){
	for (i=0;i <document.diffForm.length;i++)
	{

		if(document.diffForm.elements[i].type=='button' || document.diffForm.elements[i].type=='submit'){
		}
		else if (document.diffForm.elements[i].type == 'checkbox'||document.diffForm.elements[i].type == 'radio') {
		    if (document.diffForm.elements[i].checked)
		    oData = oData.concat(document.diffForm.elements[i].value);
		}
		else if (document.diffForm.elements[i].type == 'select-one') {
		    if (document.diffForm.elements[i].value=="" ){
				return;
			}
			else{
				//\uc785\ub825\ud544\ub4dc\ub97c String\uc5d0 \ubd99\uc774\uc790
				oData = oData.concat(document.diffForm.elements[i].value);
			}
		}
		else if (document.diffForm.elements[i].type == 'textarea') {
		    if (document.diffForm.elements[i].value=="" ){
				return;
			}
			else{
				oData = oData.concat(document.diffForm.elements[i].value);
			}
		}
		else {
			if (document.diffForm.elements[i].value=="" ){
				return;
			}
			else{
				//\uc785\ub825\ud544\ub4dc\ub97c String\uc5d0 \ubd99\uc774\uc790
				oData = oData.concat(document.diffForm.elements[i].value);
			}
		}
	}
}
*/

/*
//\ucd5c\ucd08 \uc785\ub825\ub41c \uac12\uacfc submit \uc2dc \ubcc0\uacbd\ub41c \uac12\uc744 \ube44\uad50\ud558\uc5ec \uacb0\uacfc\ub97c \ub9ac\ud134\ud55c\ub2e4.
function zcIsChanged(){
var chFlag = false;
var textVal = new Array() ;

	for (i=0;i <document.diffForm.length;i++)
	{

		if(document.diffForm.elements[i].type=='button' || document.diffForm.elements[i].type=='submit'){
		}
		else if (document.diffForm.elements[i].type == 'checkbox'||document.diffForm.elements[i].type == 'radio') {
		    if (document.diffForm.elements[i].checked)
		    textVal = textVal.concat(document.diffForm.elements[i].value);
		}
		else if (document.diffForm.elements[i].type == 'select-one') {
		    if (document.diffForm.elements[i].value=="" ){
				return;
			}
			else{
				//\uc785\ub825\ud544\ub4dc\ub97c String\uc5d0 \ubd99\uc774\uc790
				textVal = textVal.concat(document.diffForm.elements[i].value);
			}
		}
		else if (document.diffForm.elements[i].type == 'textarea') {
		    if (document.diffForm.elements[i].value=="" ){
				return;
			}
			else{
				textVal = textVal.concat(document.diffForm.elements[i].value);
			}
		}
		else {
			if (document.diffForm.elements[i].value=="" ){
				return;
			}
			else{
				//\uc785\ub825\ud544\ub4dc\ub97c String\uc5d0 \ubd99\uc774\uc790
				textVal = textVal.concat(document.diffForm.elements[i].value);
			}
		}
	}

	for (j=0;j <textVal.length;j++)
	{
		if (textVal[j] == oData[j])
		{
		}
		else
		{
		chFlag = true
		}
	}
	if (chFlag)
		alert("\ubcc0\uacbd\ub41c \ud544\ub4dc\uac00 \uc788\uc2b5\ub2c8\ub2e4. \uc218\uc815\uc0ac\ud56d\uc744\n \ubcc0\uacbd\ud558\uc2dc\uaca0\uc2b5\ub2c8\uae4c?");//submit(); \uc73c\ub85c \ub300\uce58!
	else
		alert("\ubcc0\uacbd\ub41c \uc0ac\ud56d\uc774 \uc5c6\uc2b5\ub2c8\ub2e4.");
}
*/

// DDD \ubc88\ud638\ub97c \ub123\uc5b4\uc11c \ub9de\ub294 \ubc88\ud638\uc778\uc9c0 \uccb4\ud06c\ud55c\ub2e4.
// ddd : DDD\ubc88\ud638
// gubun : 'tel'\uc77c\ubc18\uc804\ud654, 'mobile'\ud734\ub300\uc804\ud654
/*
function zcIsDDD(ddd, gubun) {
	if ( gubun == 'tel') {
		if ( ddd=="02"  || ddd=="031"  || ddd=="032" || ddd=="033" || ddd=="041" || ddd=="042" || ddd=="043" || ddd=="051" || ddd=="052" || ddd=="053"  || ddd=="054" || ddd=="055" || ddd=="061" || ddd=="062" || ddd=="063" || ddd=="064" || ddd=="060" || ddd=="080" )
			return true;
		else return false;
	} else if ( gubun == 'mobile') {
		if ( ddd=="010" || ddd=="011"  || ddd=="012" || ddd=="015" || ddd=="016" || ddd=="017" || ddd=="018" || ddd=="019" ) return true;
		else return false;
	} else if ( gubun == 'total') {
		if ( ddd=="02"  || ddd=="031"  || ddd=="032" || ddd=="033" || ddd=="041" || ddd=="042" || ddd=="043" || ddd=="051" || ddd=="052" || ddd=="053"  || ddd=="054" || ddd=="055" || ddd=="061" || ddd=="062" || ddd=="063" || ddd=="064" || ddd=="060" || ddd=="080" ||
		     ddd=="010" || ddd=="011"  || ddd=="012" || ddd=="015" || ddd=="016" || ddd=="017" || ddd=="018" || ddd=="019" )
			return true;
		else return false;
	} else {
		return false;
	}
}
*/



/* =====================================================================================================
   \ud568\uc218\uba85 : zd_xxxx()
   \uc124  \uba85 : \ub0a0\uc9dc\uad00\ub828 \ucc98\ub9ac
========================================================================================================= */

// format\uc758 \ud615\ud0dc\ub85c \ud074\ub77c\uc774\uc5b8\ud2b8 pc\uc758 \ud604\uc7ac \ub0a0\uc790\ub97c \ub9ac\ud134\ud55c\ub2e4.
// format:  'ymd'(yyyymmdd), 'ymd_f'(yyyy-mm-dd), 'ymdhms'(yyyymmddhhmmss), 'ymdhms_f'(yyyy-mm-dd hh:mm:ss)
function zdGetToday(format) {
	var dNow = new Date();
	var yyyy = "";
	var MM   = "";
	var dd   = "";
	var hh = "";
	var mm   = "";
	var sss   = "";

	yyyy = dNow.getYear();
	MM   = dNow.getMonth()+1;
	dd   = dNow.getDate();
	hh   = dNow.getHours();
	mm   = dNow.getMinutes();
	sss  = dNow.getSeconds();

	yyyy = zdSetZero( yyyy, 4 );
	MM   = zdSetZero( MM,   2 );
	dd   = zdSetZero( dd,   2 );
	hh   = zdSetZero( hh,   2 );
	mm   = zdSetZero( mm,   2 );
	sss  = zdSetZero( sss,  2 );

	if (format == "ymd")
		return (yyyy + MM + dd);
	else if (format == "ymd_f")
		return (yyyy + "-" + MM + "-" + dd);
	else if (format == "ymdhms")
		return (yyyy + MM + dd + hh + mm + sss);
	else if (format == "ymdhms_f")
		return (yyyy + "-" + MM + "-" + dd + " " + hh + ":" + mm + ":" + sss);
}

// \ubb38\uc790\uc5f4(str)\uc744 \ub0a0\uc9dc\ud615\uc2dd\uc5d0 \uc758\ud574 '-' \uc0bd\uc785\ud558\uc5ec \ub9ac\ud134
function zdSetDateDashStr(str) {
	//alert(zdIsDate(str));
	if(!zdIsDate(str)){		//\uc62c\ubc14\ub978 \ud615\ud0dc\uac00 \uc544\ub2c8\ub77c\uba74
		return false;
	}
	str = str.substr(0,4)+"-"+str.substr(4,2)+"-"+str.substr(6,2);
	return str;
}

// input \ud544\ub4dc(obj)\uc758 \uac12\uc744 \ub0a0\uc9dc\ud615\uc2dd\uc5d0 \uc758\ud574  4\uc790-2\uc790-2\uc790 \ud615\ud0dc\ub85c \uc911\uac04\uc5d0 dash \uc0bd\uc785(20030101 -> 2003-01-01)
function zdSetDateDash(obj){
	var str = obj.value;
	if(zcIsNull(str)) return;	//\uacf5\ubc31\uc774\ub77c\uba74
	obj.value = zdSetDateDashStr(str);
}

// \ubb38\uc790\uc5f4\uc774 \ub144\ub3c4\ud615\ud0dc \uc774\uba74 true
function zdIsYear(str){
	if(zcIsNull(str)) return false;	//\uacf5\ubc31\uc774\ub77c\uba74
	var isValid=false;

	if(zcIsNumStr(str)){
		if(str.length==4 && (str.charAt(0)==1 || str.charAt(0)==2) && (str.charAt(1)==0 || str.charAt(1)==1 ||str.charAt(1)==9)){
			if(str>1000) isValid = true;
			}
	}
	return isValid;
}

//19000909\ud615\ud0dc, 1900-09-09\ud615\ud0dc\uc758 \ub0a0\uc9dc(str)\uac00  \uc62c\ubc14\ub978 \ub0a0\uc9dc\uc778\uc9c0 \uccb4\ud06c
function zdIsDate(str) {
	if(zcIsNull(str)) return false;	//\uacf5\ubc31\uc774\ub77c\uba74

	var valid = true;
	var msg="";
	str =  zsRmString(str, "-");
	var birth = str;
	var yyyy = birth.substring(0,4);
	var mm = birth.substring(4,6);
	var dd = birth.substring(6,8);

	if ( birth.length != 8 || !zcIsNumStr(birth) ) {
		//alert("\uc62c\ubc14\ub978 \uc77c\uc790\ud615\uc2dd\uc774 \uc544\ub2d9\ub2c8\ub2e4.\n\uc608) 20040101");
		return false;
	}

	if (!(yyyy.substring(0,2)=="19" || yyyy.substring(0,2)=="20" || yyyy.substring(0,4)=="9999")) {
		//msg+="\ub144 \uc785\ub825\uc624\ub958!\n";
		valid= false;
	}

	if (mm > 12 || mm < 1) {
		//msg+="\uc6d4 \uc785\ub825\uc624\ub958! (1~12)\n";
		valid =  false;
	}

	var chkdt = new Date( yyyy, mm-1, dd );
	if( chkdt.getYear() > 1900 && (chkdt.getYear() != yyyy || chkdt.getMonth() != (mm-1) || chkdt.getDate() != dd) ){
		//alert( msg+"\ub0a0\uc9dc\uc758 \uc785\ub825\uc774 \uc798\ubabb\ub418\uc5c8\uc2b5\ub2c8\ub2e4.");
		return false;
	}
	else if( chkdt.getYear() < 1900 && ( chkdt.getYear() != yyyy.substring(2) || chkdt.getMonth() != (mm-1) || chkdt.getDate() != dd )){
		//alert( msg+"\ub0a0\uc9dc\uc758 \uc785\ub825\uc774 \uc798\ubabb\ub418\uc5c8\uc2b5\ub2c8\ub2e4.");
		return false;
	}
	return true;
}


//190009\ud615\ud0dc, 1900-09\ud615\ud0dc\uc758 \ub0a0\uc9dc(str)\uac00  \uc62c\ubc14\ub978 \ub144\uc6d4\uc778\uc9c0 \uccb4\ud06c
function zdIsDateYM(str) {
	if(zcIsNull(str)) return false;	//\uacf5\ubc31\uc774\ub77c\uba74

	var valid = true;
	var msg="";
	var birth = zsRmString(str, "-");
	var yyyy = birth.substring(0,4);
	var mm = birth.substring(4,6);

	if ((zcIsNull(birth) || birth.length != 6) || !zcIsNumStr(birth)) {
		//alert("\uc62c\ubc14\ub978 \ub144\uc6d4\ud615\uc2dd\uc774 \uc544\ub2d9\ub2c8\ub2e4.\n\uc608) 200401");
		return false;
	}

	if (!(yyyy.substring(0,2)=="19" || yyyy.substring(0,2)=="20")) {
		//msg+="\ub144 \uc785\ub825\uc624\ub958!\n";  
		msg+="year input error !\n";
		valid= false;
	}

	if (mm > 12 || mm < 1) {
		//msg+="\uc6d4 \uc785\ub825\uc624\ub958! (1~12)\n";   
		msg+="month input error! (1~12)\n";
		valid =  false;
	}

	if (valid==false) alert(msg);

	return valid;
}

//235959\ud615\ud0dc, 23.59.59\ud615\ud0dc\uc758 \uc2dc\uac04(str)\uc774  \uc62c\ubc14\ub978 \uc2dc\uac04\uc778\uc9c0 \uccb4\ud06c
function zdIsTime(str) {
	if(zcIsNull(str)) return false;	//\uacf5\ubc31\uc774\ub77c\uba74

	var valid = true;
	var msg="";
	str =  zsRmString(str, ".");
	var time = str;
	var hour 	= time.substring(0,2);
	var minute 	= time.substring(2,4);
	var second 	= time.substring(4,6);

	if ((zcIsNull(time) || time.length != 6) || !zcIsNumStr(time)) {
		//alert("\uc62c\ubc14\ub978 \uc2dc\uac04\ud615\uc2dd\uc774 \uc544\ub2d9\ub2c8\ub2e4.\n\uc608) 235959");
		alert('Its not correct form of time');
		return false;
	}

	if (hour > 23 || hour < 0) {
		//msg+="\uc2dc(Hour) \uc785\ub825\uc624\ub958! (00~23)\n";
		msg+="Hour input error! (00~23)\n";
		valid= false;
	}

	if (minute > 59 || minute < 0) {
		//msg+="\ubd84(Minute) \uc785\ub825\uc624\ub958! (00~59)\n";   
		msg+="Minute input error! (00~59)\n";    
		valid =  false;
	}

	if (second > 59 || second < 0) {
		//msg+="\ucd08(Second) \uc785\ub825\uc624\ub958! (00~59)\n";
		msg+="Second input error! (00~59)\n";
		valid =  false;
	}

	if (valid==false) alert(msg);

	return valid;
}

// \ubb38\uc790\uc5f4(str) \uc724\ub144\uc778\uc9c0 \uccb4\ud06c
function zdIsLeafYear(str) {
	if(zcIsNull(str)) return false;	//\uacf5\ubc31\uc774\ub77c\uba74
	var YYYY = parseInt(str,10);
	//alert(YYYY);
	if ( ( (YYYY%4 == 0) && (YYYY%100 != 0) ) || (YYYY%400 == 0) ) {
		return true;
	}
	return false;
}





//	Date\uac1d\uccb4\ub97c  yyyy-mm-dd  hh:mm:ss \uc758 \ubb38\uc790\uc5f4\ub85c \ub9ac\ud134\ud55c\ub2e4.
// paramDateTime\uc758 \ud0c0\uc785\uc740 Date(\ub0b4\uc7a5\uac1d\uccb4)\uc774\ub2e4.
function zdGetDateTime(paramDateTime)
{
	var myDate = paramDateTime;
	var yy, mm, dd; // \ub0a0\uc9dc
	var ho, mi, se; // \uc2dc\uac04

	yy=(myDate.getYear()<100) ? "19" + myDate.getYear() : myDate.getYear();
	mm = myDate.getMonth() + 1 ;
	mm = (mm < 10) ? "0" + mm : mm;
	dd = myDate.getDate();
	dd = (dd < 10) ? "0" + dd : dd;

	ho = myDate.getHours();
	mi = myDate.getMinutes();
	se = myDate.getSeconds();

	return (yy + "-" + mm + "-" + dd + " " + zdSetZero(ho,2) + ":" + zdSetZero(mi,2) + ":" + zdSetZero(se,2));
}

 /*---------------------------------------------------------------------------
    \uc785\ub825\ud544\ub4dc\uc5d0 \uc785\ub825\ud558\uba74\uc11c \ub0a0\uc9dc \ud615\uc2dd \ub9cc\ub4e4\uc5b4 \uc8fc\uae30
    ----------------------------------------------------------------------------*/
    function fn_date_format(obj, flag) {
        if (obj.value == null || obj.value == "" ) return;
        ls_val = (obj.value).substring((obj.value).length-1, (obj.value).length);
        //alert("before");
        zcIsNumAndInit(obj);
        str = zsRmObj(obj, '-');
        if (zcIsStrNumAndInit(str) == false) {
            obj.value = (obj.value).substring(0, (obj.value).length-1);
            obj.focus();
            return;    
        }
        ls_num = zsRmObj(obj, '-')
        //alert(ls_num);
        if (ls_num.length > 8) {
            obj.value = (obj.value).substring(0, (obj.value).length-1);
            obj.focus();
            return;    
        }
        if (ls_num.length == 8) {
            if (zdIsDate(ls_num) == false)    {
                obj.value = "";
                obj.focus();
                return;
            }
        }
        if (ls_num.length > 6) {
            obj.value = ls_num.substring(0,4) +flag+ls_num.substring(4,6)+flag+ls_num.substring(6,ls_num.length);
        }
        else if (ls_num.length > 4) {
            obj.value = ls_num.substring(0,4) +flag+ls_num.substring(4,ls_num.length);
        }
    }





// \ubb38\uc790\uc5f4 sVal\uc744 iLen\uae38\uc774\uac00 \ub420\ub54c\uae4c\uc9c0 sVal\uc758 \uc55e\uc5d0 "0"\uc744 \ubd99\uc778 \ubb38\uc790\uc5f4\uc744 \ub9ac\ud134\ud55c\ub2e4. \uae30\uc5c5\uccb4\ubc88\ud638\ub4f1\uc5d0\uc11c \uc790\ub9ac\uc218 \ub9cc\ud07c 0\uc744 \ubd99\uc5ec\uc11c \ubc18\ud658, \ub0a0\uc9dc \ubb38\uc790\uc5f4\uc758 \uc6d4\uacfc \uc77c\uc5d0 \uc4f0\uc784( 01\uc6d4 02\uc77c)
// sVal - \ubb38\uc790\uc5f4
// iLen - \uae38\uc774(integer)
// \uc608) sVal\uc5d0 '23'\uc744 iLen\uc5d0 5\ub97c \uc8fc\uba74 \ub9ac\ud134\uac12\uc740 '00023' \uc774\ub2e4.
function zdSetZero(sVal, iLen){
	var sStr = "";
	if (typeof sVal=="object") {
		sStr = sVal.value;
		sStr = zsDelRLSpace(sStr);
	} else	sStr = String(sVal);

	if(zcIsNull(sStr)) return;	//\uacf5\ubc31\uc774\ub77c\uba74

	for (ii = sStr.length; ii < iLen; ii++) {
		sStr =  "0" + sStr;
	}
	return sStr;
}

// \ub450 \ub0a0\uc9dc\uc758 \ucc28\uc774\ub97c \ub0a0(\u65e5)\uc218\ub85c \ub9ac\ud134\ud55c\ub2e4.
// basicDayStr\uc5d0\uc11c compareDayStr\uc744 \ube80 \ub0a0\uc9dc\uc218 \ub9ac\ud134
// \ub0a0\uc9dc \ud615\uc2dd\uc740 "YYYY-MM-DD" \ub610\ub294 "YYYYMMDD"\uc774\ub2e4.
function zdGetDifTodayInputday(basicDayStr, compareDayStr) {
	basicDayStr = zsRmString(basicDayStr, '-');		// '-'\uac00 \uc788\ub2e4\uba74 \uc81c\uac70
	compareDayStr = zsRmString(compareDayStr, '-');
	if(!zdIsDate(basicDayStr) ||!zdIsDate(compareDayStr)) return false;		//\ub0a0\uc9dc \ud615\uc2dd\uc774 \uc544\ub2c8\ub77c\uba74

	var date1  = new Date(basicDayStr.substring(0,4), basicDayStr.substring(4,6)-1, basicDayStr.substring(6,8) );
	var date2  = new Date(compareDayStr.substring(0,4), compareDayStr.substring(4,6)-1,compareDayStr.substring(6,8));

	return Math.floor(( date1 - date2 )*(1/(1000*60*60*24)));
}

// toDate\uac00 fromDate\ubcf4\ub2e4 \ud06c\uba74(\ucd5c\uadfc\uc77c\uc790) true \ub9ac\ud134
function zdIsBig(toDate, fromDate) {
	toDate = zsRmString(toDate, '-');		// '-'\uac00 \uc788\ub2e4\uba74 \uc81c\uac70
	fromDate = zsRmString(fromDate, '-');
	if(!zdIsDate(toDate) ||!zdIsDate(fromDate)) return false;		//\ub0a0\uc9dc \ud615\uc2dd\uc774 \uc544\ub2c8\ub77c\uba74
	var fromYear = fromDate.substring(0,4);
	var fromMonth = fromDate.substring(4,6);
	var fromDay = fromDate.substring(6,8);
	var toYear = toDate.substring(0,4);
	var toMonth = toDate.substring(4,6);
	var toDay = toDate.substring(6,8);

	if (toYear > fromYear) return true
	else if (toYear < fromYear) return false

	if (toMonth > fromMonth) return true
	else if (toMonth < fromMonth) return false

	if (toDay > fromDay) return true

	return false
}

//\uae30\uc900\uc77c  - \ube44\uad50\uc77c \uc5d0\uc11c \ucc28\uc774\ub97c \ub144 \uc6d4 \ub85c \ub118\uaca8\uc900\ub2e4.
/*
function zdDaysBetweenTwoDate(obj){

   	var yr,mo,ayr,amo, ry,rm,r1,r2,r3;            //\ubcc0\uc218\ub97c \uc120\uc5b8\ud569\ub2c8\ub2e4.


   	yr = obj.syear.value;
   	mo = obj.smonth.value;

   	ayr = obj.ayear.value;
   	amo = obj.amonth.value;
	if (isNaN(yr) || isNaN(mo) || isNaN(ayr) || isNaN(amo)) {
		window.alert("\uc22b\uc790\ub9cc \uc785\ub825 \ud558\uc138\uc694");
		return;
	}

	if (zcIsNull(yr) || zcIsNull(mo) || zcIsNull(ayr) || zcIsNull(amo) ) {
		window.alert("\ub0a0\uc9dc\ub97c \uc785\ub825\ud558\uc138\uc694");
		return;
	}

	if (mo<1 || mo>12) {
		window.alert("\uc720\ud6a8\ud55c \ub0a0\uc9dc\uac00 \uc544\ub2d9\ub2c8\ub2e4");
		return ;
	}
	if (amo<1 || amo>12) {
		window.alert("\uc720\ud6a8\ud55c \ub0a0\uc9dc\uac00 \uc544\ub2d9\ub2c8\ub2e4");
		return ;
	}

   	r1 = parseInt((ayr - yr),10) ;
   	r2 = parseInt((amo - mo),10) ;
   	r3 = (r1 * 12) + r2

    if (r3 > 11) {
        ry = parseInt((r3/12),10);
        rm = r3%12 ;
    }
    else if (-12<r3< 0 ) {
		ry = 0;
		rm = r3%12 ;
    }
    else if (-12>r3 ) {
		ry = parseInt((r3/12),10);
        rm = r3%12 ;
    }
    else {
    		ry = 0;
		rm = r3 ;
    }
    alert (ry+"\ub144  "+rm+"\uac1c\uc6d4 \ucc28\uc774");
   	//return(r);	                       //\ucc28\uc774\ub97c \ubc18\ud658\ud569\ub2c8\ub2e4.
}
*/


/*
//  \uae30\uc900\ub144\uc6d4\uc77c \uc5d0\uc11c \uba87\ub144 \uba87\uac1c\uc6d4 \ud6c4\uc758 \ub0a0\uc9dc \uac12\uc744 \ubc18\ud658\ud55c\ub2e4.
function zdGetChangeMonth(obj) {

	var yr,mo,dy,ayr,amo ;

   	yr = obj.bdate.value;
   	mo = obj.bdate1.value;
   	dy = obj.bdate2.value;

   	ayr = obj.bdate3.value;
   	amo = obj.bdate4.value;


    mo = zuToLen2(mo);
    dy = zuToLen2(dy);
    amo = zuToLen2(amo);

    if(amo < 0 || amo > 11) {
    	alert ('1 ~ 11 \uc6d4 \uae4c\uc9c0\ub9cc \uc785\ub825\ud558\uc138\uc694');
    	return;
    }

   	fday = yr;
   	fday += mo;
   	fday += dy;
   	if (!zdIsDate(fday)){
   	   	return ;
	}

   	add = parseInt((ayr * 12),10) + parseInt(amo,10) ;

    var _dateObj = yr +""+mo+""+dy;

    var date_length =  _dateObj.length;

        dateYear  = _dateObj.substring(0, 4);
        dateMonth = parseInt( _dateObj.substring(4, 6) ,10);
        dateDay = _dateObj.substring(6, 8);

       var _dateYear  = dateYear
       var _dateMonth = dateMonth
       var _dateDay   = dateDay

    var add_month_time = 0;

    add_month_time += (zdGetEndOfMonthDay(_dateYear,_dateMonth)-_dateDay)*24*60*60*1000;

    for(var i=1; i < add;i++)
    {
        //alert(getEndOfMonthDay(_dateYear,_dateMonth))
        _dateMonth++;
        if(_dateMonth==13)
        {
          _dateYear ++;
          _dateMonth = 1;
        }
        add_month_time += zdGetEndOfMonthDay(_dateYear,_dateMonth)*24*60*60*1000;
    }

    add_month_time +=_dateDay*24*60*60*1000;


    var addDate = new Date(dateYear,dateMonth-1,dateDay);
    //alert(addDate);

    var newtimems=addDate.getTime()+add_month_time;
    addDate.setTime(newtimems);


    var newYear = addDate.getYear();
    if (newYear < 2000) newYear += 1900; // Y2K fix
    var newMonth = addDate.getMonth()+1;
    var newDay = addDate.getDate();

    alert( newYear.toString()+zuToLen2 (newMonth.toString())+ zuToLen2( newDay.toString()));
}
*/

//\ub144\uc6d4 \uc785\ub825\uc2dc \ub9c8\uc9c0\ub9c9 \uc77c\uc790
function  zdGetEndOfMonthDay(  yy,  mm )
{

    var max_days=0;

    if (mm == 1)        max_days = 31 ;
    else if (mm == 2) {

        if ((( yy % 4 == 0) && (yy % 100 != 0)) || (yy % 400 == 0))
                        max_days = 29;
        else
                        max_days = 28;
    }
    else if (mm == 3)   max_days = 31;
    else if (mm == 4)   max_days = 30;
    else if (mm == 5)   max_days = 31;
    else if (mm == 6)   max_days = 30;
    else if (mm == 7)   max_days = 31;
    else if (mm == 8)   max_days = 31;
    else if (mm == 9)   max_days = 30;
    else if (mm == 10)  max_days = 31;
    else if (mm == 11)  max_days = 30;
    else if (mm == 12)  max_days = 31;
    else {

        return '';
    }
        return max_days;
}



/* =====================================================================================================
   \ud568\uc218\uba85 : zm_xxxx()
   \uc124  \uba85 : \uae08\uc561 \ucc98\ub9ac
========================================================================================================= */

//  input \ud544\ub4dc \uac1d\uccb4(obj)\uc758 \uac12\uc774 \uae08\uc561\ud615\ud0dc(\uc815\uc218(0~9), \ub9c8\uc774\ub108\uc2a4('-'), \uc18c\uc218\uc810('.'), \ucf64\ub9c8(',') )\uc774\uba74 true
function zmIsMoney( obj ) {
	var str = obj.value;
	if(zcIsNull(str)) return false;

	var isValid = true;
	var decCount = 0;		// number of decimal points in the string

	for (var i = 0; i < str.length; i++) {
		// track number of decimal points
		if (str.charAt(i) == ".") decCount++;

    	if ( !((str.charAt(i) >= "0" && str.charAt(i) <= "9") || str.charAt(i) == "-" || str.charAt(i) == "." || str.charAt(i) ==",")  ) {
      	 	isValid = false;
      	 	break;
		} else if ((str.charAt(i) == "-" && i != 0) ||
			   (str.charAt(i) == "." && str.length == 1) ||
			   (str.charAt(i) == "." && decCount > 1)) {
	       		isValid = false;
	      	 	break;
	    }
   	}
   	return isValid;
}

// input \ud544\ub4dc \uac1d\uccb4(obj)\uc5d0 \uae08\uc561 \uc785\ub825\uc2dc, \uc2e4\uc2dc\uac04\uc73c\ub85c 3\uc790\ub9ac \ub9c8\ub2e4 ,\ub97c \uc0bd\uc785
// onkeyup\uc5d0 \uc774\ubca4\ud2b8 \ubc1c\uc0dd\uc2dc \ud391\uc158\uc744 \ud638\ucd9c\ud55c\ub2e4!
//  	**CustomTag\uc5d0\uc11c \uc0ac\uc6a9\ud558\uace0 \uc788\uc73c\ubbc0\ub85c \ud391\uc158 \ubcc0\uacbd(\ud2b9\ud788 \uc774\ub984)\uc5d0 \uc8fc\uc758\ub97c \uc694\ud568!
function zmSetCommaRT(obj){
	var str = obj.value;
	var rtVal;

	if( event.keyCode == 37 || event.keyCode == 39 ) return;
	if ( obj.format == 'money' || obj.format == 'moneyDot' || obj.format == 'bigDecimal') rtVal = zmSetMoneyComma(str);
	else if ( obj.format == 'moneyZero' ) 			rtVal = zmSetMoneyZero(str);
	else if ( obj.format == 'millionMoney' ) 		rtVal = zmWon2Million(str);
	else if ( obj.format == 'millionMoneyZero' ) 	rtVal = zmWon2MillionZero(str);
	else if ( obj.format == 'thousandMoney' ) 		rtVal = zmWon2Thousand(str);
	else if ( obj.format == 'thousandMoneyZero' ) 	rtVal = zm_won2ThousandZero(str);

	if(rtVal != str)
		obj.value = rtVal;

}

// \uae08\uc561 \ubb38\uc790\uc5f4(str)\uc5d0 \ucf64\ub9c8(,) \uac00 \uc788\uc73c\uba74 \uc5c6\uc560\uace0 \uc2e4\uc218 \ubb38\uc790\uc5f4\uc744 \ub9ac\ud134
function zmDelComma(str){
	if(zcIsNull(str)) return "";		//\uac12\uc774 null\uc774\ub77c\uba74
	str = zsRmString(str, ',');				// , \uc81c\uac70
	return str;
}

// \uae08\uc561 \ubb38\uc790\uc5f4(str)\uc5d0 3\uc790\ub9ac\ub9c8\ub2e4 \ucf64\ub9c8\ucd94\uac00\ud55c \ubb38\uc790\uc5f4\uc744 \ub9ac\ud134
function zmSetMoneyComma(str){
	var rtStr;	// \ub9ac\ud134\ud560 \ubb38\uc790\uc5f4

	//\uac12\uc774 null \uc774\ub098 0 \uc774\uba74 blank
	if(zcIsNull(str) ) return "";

	//\uccab\uc790\uac00 -\uc77c\ub54c -\ub97c \ube80\uae08\uc561\uc73c\ub85c \ucc98\ub9ac\ud558\uace0 \ub098\uc911\uc5d0 -\ubd99\uc784
	var minus = "";
	if(str.substring(0,1) == "-"){
		rtStr = str.substring(1);		// '-' \ube80 \ubb38\uc790 \uc800\uc7a5
		minus = "-";
	}else								// \uadf8\uc678\uc758 \ubaa8\ub4e0 \uacbd\uc6b0
		rtStr = str;

	//\uc18c\uc218\uc810 \uc788\uc744\ub54c \uc55e\ubd80\ubd84\ub9cc rtStr\uc5d0 \ub123\uc5b4\ucc98\ub9ac\ud558\uace0 \ub4b7\ubd80\ubd84\uc740 \ub530\ub85c \ub5bc \ub450\uc5c8\ub2e4\uac00 \ub098\uc911\uc5d0 \ubd99\uc784.
	var belowzero = "";
	if (zmChkDot(rtStr)==true){
		arr = rtStr.split(".");
		rtStr = arr[0];		     	//\uc18c\uc218\uc810 \uc55e\ubd80\ubd84
		belowzero = "." + arr[1];   //\uc18c\uc218\uc810\uacfc \uadf8 \ub4b7\ubd80\ubd84
	}

	// \uae30\uc874\ucf64\ub9c8\uc81c\uac70
	rtStr = zsRmString(rtStr, ',');

	var len = rtStr.length ;
	var result ="";

	if (len > 1 && str.substring(0,1)=="0") rtStr = rtStr.substring(1); // \uccab\ubc88\uc9f8 0\uc774 \uc788\uc73c\uba74 \uc81c\uac70

	for (var i=0; i < len;i++){  // \uc774\uc81c \uc2e4\uc81c\ub85c \ucf64\ub9c8 \ud45c\uc2dc\ud568
		comma="";
		var schar = rtStr.charAt(i);
		where = len - 1 - i;
		if ((where % 3) == 0 && len > 3 && where != 0) comma = ",";
		result = result +   schar + comma ;
	}
    rtStr = minus + result + belowzero;	// - \uc640 \uc18c\uc218\uc810 \uc774\ud558\ub97c \ubd99\uc784

	return rtStr;
}

// \uae08\uc561 \ubb38\uc790\uc5f4(str)\uc5d0 3\uc790\ub9ac\ub9c8\ub2e4 \ucf64\ub9c8\ucd94\uac00\ud55c \ubb38\uc790\uc5f4\uc744 \ub9ac\ud134
function zmSetMoneyZero(str){
	var rtStr;	// \ub9ac\ud134\ud560 \ubb38\uc790\uc5f4

	//\uac12\uc774 null\uc774\ub77c\uba74 blank
	if ( zcIsNull(str) ) return "";
	//\uac12\uc774 0\uc774\uba74 \uadf8\ub300\ub85c 0
	if ( str=="0" || str=="0.0") return str;

	//\uccab\uc790\uac00 -\uc77c\ub54c -\ub97c \ube80\uae08\uc561\uc73c\ub85c \ucc98\ub9ac\ud558\uace0 \ub098\uc911\uc5d0 -\ubd99\uc784
	var minus = "";
	if(str.substring(0,1) == "-"){
		rtStr = str.substring(1);	// '-' \ube80 \ubb38\uc790 \uc800\uc7a5
		minus = "-";
	}else							// \uadf8\uc678\uc758 \ubaa8\ub4e0 \uacbd\uc6b0
		rtStr = str;

	//\uc18c\uc218\uc810 \uc788\uc744\ub54c \uc55e\ubd80\ubd84\ub9cc rtStr\uc5d0 \ub123\uc5b4\ucc98\ub9ac\ud558\uace0 \ub4b7\ubd80\ubd84\uc740 \ub530\ub85c \ub5bc \ub450\uc5c8\ub2e4\uac00 \ub098\uc911\uc5d0 \ubd99\uc784.
	var belowzero = "";
	if (zmChkDot(rtStr)==true){
		arr = rtStr.split(".");
		rtStr = arr[0];		     	//\uc18c\uc218\uc810 \uc55e\ubd80\ubd84
		belowzero = "." + arr[1];   //\uc18c\uc218\uc810\uacfc \uadf8 \ub4b7\ubd80\ubd84
	}

	// \uae30\uc874\ucf64\ub9c8\uc81c\uac70
	rtStr = zsRmString(rtStr, ',');

	var len = rtStr.length ;
	var result ="";

	if (len > 1 && str.substring(0,1)=="0") rtStr = rtStr.substring(1); // \uccab\ubc88\uc9f8 0\uc774 \uc788\uc73c\uba74 \uc81c\uac70

	for (var i=0; i < len;i++){  // \uc774\uc81c \uc2e4\uc81c\ub85c \ucf64\ub9c8 \ud45c\uc2dc\ud568
		comma="";
		var schar = rtStr.charAt(i);
		where = len - 1 - i;
		if ((where % 3) == 0 && len > 3 && where != 0) comma = ",";
		result = result +   schar + comma ;
	}
    rtStr = minus + result + belowzero;	// - \uc640 \uc18c\uc218\uc810 \uc774\ud558\ub97c \ubd99\uc784
	return rtStr;
}

// "\uc6d0"\ub2e8\uc704 \uae08\uc561(str)\uc744 \ucf64\ub9c8\uae4c\uc9c0 \ucd94\uac00\ud55c "\ubc31\ub9cc" \ub2e8\uc704\ub85c \ubcc0\ud658\ud55c \ubb38\uc790\uc5f4\uc744 \ub9ac\ud134(5000900000 => 5,000)
function zmWon2Million(str) {
	//\uac12\uc774 null\uc774\ub77c\uba74 blank \ub9ac\ud134
	if(zcIsNull(str)) return "";

	if (zmChkDot(str)==true){	//\uc18c\uc218\uc810 \uc774\ud558\ubd80\ubd84\uc740 \uc0ad\uc81c\ud568
		arr = str.split(".");
		str = arr[0];			//\uc18c\uc218\uc810 \uc55e\ubd80\ubd84
	}
	var len = str.length;

	if(len > 6){
		var outputDataLen = len - 6; //\ucd9c\ub825 \uae08\uc561\uc758 \uc790\ub9ac\uc218 : \ud45c\ud604\ud558\ub294 \uae08\uc561\uc758 \ub2e8\uc704\uac00 \ubc31\ub9cc\uc6d0 \uc774\ubbc0\ub85c 000000\uc744 \ube7c\uae30 \uc704\ud574 "\uc804\uccb4\uae38\uc774-6"\uc744 \ud55c\ub2e4.
		var outputData = str.substr(0, outputDataLen);
		if(outputData.length > 3){
			outputData = zmSetMoneyComma(outputData);   // 3\uc790\ub9ac\ub9c8\ub2e4 ","\ub97c \ucd94\uac00\ud558\ub294 \uc2a4\ud06c\ub9bd\ud2b8 \ud638\ucd9c
		}
		return outputData;
	}else{
		return "0"; //\ub118\uc5b4\uc628 \ub370\uc774\ud0c0\uac00 6\uc790\ub9ac \uc774\ud558\uc77c \uacbd\uc6b0 0 \ubfcc\ub9bc.
	}
}

// "\uc6d0"\ub2e8\uc704 \uae08\uc561(str)\uc744 \ucf64\ub9c8\uae4c\uc9c0 \ucd94\uac00\ud55c "\ubc31\ub9cc" \ub2e8\uc704\ub85c \ubcc0\ud658\ud55c \ubb38\uc790\uc5f4\uc744 \ub9ac\ud134(5000900000 => 5,000)
function zmWon2MillionZero(str) {
	//\uac12\uc774 null\uc774\ub77c\uba74 0 \ub9ac\ud134
	if(zcIsNull(str)) return "0";

	if (zmChkDot(str)==true){          //\uc18c\uc218\uc810 \uc774\ud558\ubd80\ubd84\uc740 \uc0ad\uc81c\ud568
		arr = str.split(".");
		str = arr[0];		     //\uc18c\uc218\uc810 \uc55e\ubd80\ubd84
	}
	var len = str.length;

	if(len > 6){
		var outputDataLen = len - 6; //\ucd9c\ub825 \uae08\uc561\uc758 \uc790\ub9ac\uc218 : \ud45c\ud604\ud558\ub294 \uae08\uc561\uc758 \ub2e8\uc704\uac00 \ubc31\ub9cc\uc6d0 \uc774\ubbc0\ub85c 000000\uc744 \ube7c\uae30 \uc704\ud574 "\uc804\uccb4\uae38\uc774-6"\uc744 \ud55c\ub2e4.
		var outputData = str.substr(0, outputDataLen);
		if(outputData.length > 3){
			outputData = zmSetMoneyComma(outputData);   // 3\uc790\ub9ac\ub9c8\ub2e4 ","\ub97c \ucd94\uac00\ud558\ub294 \uc2a4\ud06c\ub9bd\ud2b8 \ud638\ucd9c
		}
		return outputData;
	}else{
		return "0"; //\ub118\uc5b4\uc628 \ub370\uc774\ud0c0\uac00 6\uc790\ub9ac \uc774\ud558\uc77c \uacbd\uc6b0 0 \ubfcc\ub9bc.
	}
}

// "\uc6d0"\ub2e8\uc704 \uae08\uc561(str)\uc744 \ucf64\ub9c8\uae4c\uc9c0 \ucd94\uac00\ud55c "\ucc9c" \ub2e8\uc704\ub85c \ubcc0\ud658\ud55c \ubb38\uc790\uc5f4\uc744 \ub9ac\ud134(5000900900 => 5,000,900)
function zmWon2Thousand(str) {
	//\uac12\uc774 null\uc774\ub77c\uba74 blank \ub9ac\ud134
	if(zcIsNull(str)) return "";

	if (zmChkDot(str)==true){          //\uc18c\uc218\uc810 \uc774\ud558\ubd80\ubd84\uc740 \uc0ad\uc81c\ud568
		arr = str.split(".");
		str = arr[0];		     //\uc18c\uc218\uc810 \uc55e\ubd80\ubd84
	}
	var len = str.length;

	if(len > 3){
		var outputDataLen = len - 3; //\ucd9c\ub825 \uae08\uc561\uc758 \uc790\ub9ac\uc218 : \ud45c\ud604\ud558\ub294 \uae08\uc561\uc758 \ub2e8\uc704\uac00 \ubc31\ub9cc\uc6d0 \uc774\ubbc0\ub85c 000000\uc744 \ube7c\uae30 \uc704\ud574 "\uc804\uccb4\uae38\uc774-6"\uc744 \ud55c\ub2e4.
		var outputData = str.substr(0, outputDataLen);
		if(outputData.length > 3){
			outputData = zmSetMoneyComma(outputData);   // 3\uc790\ub9ac\ub9c8\ub2e4 ","\ub97c \ucd94\uac00\ud558\ub294 \uc2a4\ud06c\ub9bd\ud2b8 \ud638\ucd9c
		}
		return outputData;
	}else{
		return "0"; //\ub118\uc5b4\uc628 \ub370\uc774\ud0c0\uac00 3\uc790\ub9ac \uc774\ud558\uc77c \uacbd\uc6b0 0 \ubfcc\ub9bc.
	}
}

// "\uc6d0"\ub2e8\uc704 \uae08\uc561(str)\uc744 \ucf64\ub9c8\uae4c\uc9c0 \ucd94\uac00\ud55c "\ucc9c" \ub2e8\uc704\ub85c \ubcc0\ud658\ud55c \ubb38\uc790\uc5f4\uc744 \ub9ac\ud134(5000900900 => 5,000,900)
function zm_won2ThousandZero(str) {
	//\uac12\uc774 null\uc774\ub77c\uba74 0 \ub9ac\ud134
	if(zcIsNull(str)) return "0";

	if (zmChkDot(str)==true){          //\uc18c\uc218\uc810 \uc774\ud558\ubd80\ubd84\uc740 \uc0ad\uc81c\ud568
		arr = str.split(".");
		str = arr[0];		     //\uc18c\uc218\uc810 \uc55e\ubd80\ubd84
	}
	var len = str.length;

	if(len > 3){
		var outputDataLen = len - 3; //\ucd9c\ub825 \uae08\uc561\uc758 \uc790\ub9ac\uc218 : \ud45c\ud604\ud558\ub294 \uae08\uc561\uc758 \ub2e8\uc704\uac00 \ubc31\ub9cc\uc6d0 \uc774\ubbc0\ub85c 000000\uc744 \ube7c\uae30 \uc704\ud574 "\uc804\uccb4\uae38\uc774-6"\uc744 \ud55c\ub2e4.
		var outputData = str.substr(0, outputDataLen);
		if(outputData.length > 3){
			outputData = zmSetMoneyComma(outputData);   // 3\uc790\ub9ac\ub9c8\ub2e4 ","\ub97c \ucd94\uac00\ud558\ub294 \uc2a4\ud06c\ub9bd\ud2b8 \ud638\ucd9c
		}
		return outputData;
	}else{
		return "0"; //\ub118\uc5b4\uc628 \ub370\uc774\ud0c0\uac00 3\uc790\ub9ac \uc774\ud558\uc77c \uacbd\uc6b0 0 \ubfcc\ub9bc.
	}
}

// \uae08\uc561\uc5d0 \uc18c\uc218\uc810 \uc788\ub294\uc9c0 \uccb4\ud06c. \uc874\uc7ac\ud55c\ub2e4\uba74 true, \uc5c6\ub2e4\uba74 false
function zmChkDot(str){
	for (var i=0; i< str.length; i++) {
		if(str.charAt(i) == "." )	return true;
	}
	return false;
}


/* =====================================================================================================
   \ud568\uc218\uba85 : zs_xxxx()
   \uc124  \uba85 : Character, String, number \ucc98\ub9ac(\uccb4\ud06c/\uacc4\uc0b0\uc740 \uc81c\uc678 - check.js\uc5d0 \ud3ec\ud568)
========================================================================================================= */

/**
 *  \uc785\ub825\ub41c \uc2a4\ud2b8\ub9c1\uc758 \ubc14\uc774\ud2b8\uc218\ub97c \ub9ac\ud134\ud55c\ub2e4.
 *  @val       : \uae38\uc774\ub97c \uccb4\ud06c\ud560 \uc2a4\ud2b8\ub9c1
 */
function zsGetBytesLength(val) {
    // \uc785\ub825\ubc1b\uc740 \ubb38\uc790\uc5f4\uc744 escape() \ub97c \uc774\uc6a9\ud558\uc5ec \ubcc0\ud658\ud55c\ub2e4.
    // \ubcc0\ud658\ud55c \ubb38\uc790\uc5f4 \uc911 \uc720\ub2c8\ucf54\ub4dc(\ud55c\uae00 \ub4f1)\ub294 \uacf5\ud1b5\uc801\uc73c\ub85c %uxxxx\ub85c \ubcc0\ud658\ub41c\ub2e4.
    var temp_estr = escape(val);
    var s_index   = 0;
    var e_index   = 0;
    var temp_str  = "";
    var cnt       = 0;

    // \ubb38\uc790\uc5f4 \uc911\uc5d0\uc11c \uc720\ub2c8\ucf54\ub4dc\ub97c \ucc3e\uc544 \uc81c\uac70\ud558\uba74\uc11c \uac2f\uc218\ub97c \uc13c\ub2e4.
    while ((e_index = temp_estr.indexOf("%u", s_index)) >= 0)  // \uc81c\uac70\ud560 \ubb38\uc790\uc5f4\uc774 \uc874\uc7ac\ud55c\ub2e4\uba74
    {
      temp_str += temp_estr.substring(s_index, e_index);
      s_index = e_index + 6;
      cnt ++;
    }

    temp_str += temp_estr.substring(s_index);

    temp_str = unescape(temp_str);  // \uc6d0\ub798 \ubb38\uc790\uc5f4\ub85c \ubc14\uafbc\ub2e4.

    // \uc720\ub2c8\ucf54\ub4dc\ub294 2\ubc14\uc774\ud2b8 \uc529 \uacc4\uc0b0\ud558\uace0 \ub098\uba38\uc9c0\ub294 1\ubc14\uc774\ud2b8\uc529 \uacc4\uc0b0\ud55c\ub2e4.
    
    return ((cnt * 2) + temp_str.length) + "";
    
    //return ((cnt * 3) + temp_str.length) + "";
}

/**
 *  \uc785\ub825\ub41c \uc2a4\ud2b8\ub9c1\uc758 \ubc14\uc774\ud2b8\uc218\ub97c \uccb4\ud06c\ud558\uc5ec \ud55c\uacc4\uce58\ubcf4\ub2e4 \ud06c\uba74
 *  alert \uba54\uc138\uc9c0\ub97c \ub744\uc6b4\ub2e4.
 *  onkeypress \uc774\ubca4\ud2b8\uc5d0 \uc801\uc6a9\ud55c\ub2e4.
 *  @obj       : \uae38\uc774\ub97c \uccb4\ud06c\ud560 \uac1d\uccb4
 *  @limitLen  : \ucd5c\ub300\uae38\uc774
 *  @msgFlag   : alert \uba54\uc138\uc9c0 \ucd9c\ub825\uc5ec\ubd80
 */
function zsGetBytesLengthRT(obj, limitLen, msgFlag) {
    var val = obj.value;
    var leng = zsGetBytesLength(val);
    var result = true;
    var msg = '';

    // \ucd5c\ub300\uae38\uc774\uc640 \ud604\uc7ac \uc2a4\ud2b8\ub9c1\uc758 \ubc14\uc774\ud2b8\uc218\uac00 \uac19\uc73c\uba74.
    if (leng == limitLen) {
        msg = "\ub354 \uc774\uc0c1 \uc785\ub825\ud558\uc2e4 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.\n\n" +
              "\uc785\ub825\ud558\uc2e4 \uc218 \uc788\ub294 \ucd5c\ub300 \ubb38\uc790\uc5f4 \uae38\uc774\uac00 \uc774\ubbf8 \uc785\ub825\ub418\uc5c8\uc2b5\ub2c8\ub2e4.";
        result = false;
    }

    if (msgFlag) alert(msg);
    event.returnValue = result;
}

/**
 *  \uc785\ub825\ub41c \uc2a4\ud2b8\ub9c1\uc758 \ubc14\uc774\ud2b8\uc218\ub97c \uccb4\ud06c\ud558\uc5ec \ud55c\uacc4\uce58\ubcf4\ub2e4 \ud06c\uba74
 *  alert \uba54\uc138\uc9c0\ub97c \ub744\uc6b4\ub2e4.
 *  onblur \uc774\ubca4\ud2b8\uc5d0 \uc801\uc6a9\ud55c\ub2e4.
 *  @obj       : \uae38\uc774\ub97c \uccb4\ud06c\ud560 \uac1d\uccb4
 *  @limitLen  : \ucd5c\ub300\uae38\uc774
 *  @msgFlag   : alert \uba54\uc138\uc9c0 \ucd9c\ub825\uc5ec\ubd80
 */
function zsGetBytesLengthRTBlur(obj, limitLen, msgFlag) {
    var val = obj.value;
    var leng = zsGetBytesLength(val);
    var result = true;
    var msg = '';

    if (leng > limitLen) {
        msg = "\uc785\ub825\ud558\uc2e4 \uc218 \uc788\ub294 \ucd5c\ub300 \ubb38\uc790\uc5f4 \uae38\uc774\ub97c \ucd08\uacfc\ud558\uc600\uc2b5\ub2c8\ub2e4.\n\n" +
              "\ucd5c\ub300 \uc785\ub825\uac00\ub2a5 \ubb38\uc790\uc5f4 \uae38\uc774 => " + limitLen + "\n" +
              "\uc785\ub825\ud558\uc2e0 \ubb38\uc790\uc5f4 \uae38\uc774 => " + leng;
        result = false;
    }

    if (!result) {
        if (msgFlag) alert(msg);
        obj.focus();
    }
}

/**
 *  \ud574\ub2f9 textarea\uc758 \ub77c\uc778\uc218\ub97c \ub9ac\ud134\ud569\ub2c8\ub2e4.
 *  @sourceObject  textarea \uac1d\uccb4
 *  @columnSize    \ud55c line\uc73c\ub85c \uac04\uc8fc\ud560 \uceec\ub7fc \uc0ac\uc774\uc988
 *
 *  @columnSize \uac00 \uc785\ub825\ub418\uc9c0 \uc54a\uc73c\uba74 \ud574\ub2f9 \uac1d\uccb4\uc758 cols\uc18d\uc131\uac12\uc744 \uc0ac\uc6a9\ud569\ub2c8\ub2e4.
 */
function zsGetLineCount(sourceObject, columnSize) {
    var sourceString = sourceObject.value;
    var colSize = (arguments.length == 1) ? (new Number(sourceObject.cols)) : columnSize;
    var strArr = sourceString.split('\r\n');
    var arrCnt = strArr.length;
    var tempLeng = 0;
    var tempMod  = 0;
    var append = 0;
    var result = 0;

    for (var i=0; i<arrCnt; i++) {
        append = 0;
        tempLeng = zsGetBytesLength(strArr[i]);

        // \ube48 \ub77c\uc778\uc77c\ub54c
        if (tempLeng == 0) {
            append = 1;
        }
        else {
            if ((tempLeng % colSize) > 0) append = 1;
            append = append + Math.floor(tempLeng / colSize);
        }
        result = result + append;
    }

    return result;
}

// input \ud544\ub4dc \uac1d\uccb4\uc758 \uac12(obj)\uc5d0\uc11c  \ud2b9\uc815\ubb38\uc790(org)\ub97c rep\ubb38\uc790\ub85c \ubcc0\ud658
function zsChgChar(obj,orgStr,repStr){
	str = obj.value;
	re = new RegExp(orgStr, "g");
	obj.value = str.replace(re, repStr);
}

// \ud3fc\uc804\uccb4 \ubb38\uc790\uc5f4\uc5d0 \uc788\ub294 \ub354\ube14\ucffc\ud14c\uc774\uc158(")\uc744 \uc2f1\ud074\ucffc\ud14c\uc774\uc158(')\uc73c\ub85c \ubcc0\uacbd\ud55c\ub2e4.
function zsDouble2SingleQuatForm(formObj) {
	var len=formObj.elements.length;
	var i=0;

	for ( i=0; i<len; i++ ) {
		formObj.elements[i].value = top.zsDouble2SingleQuat(formObj.elements[i].value);
	}
}
// \ub354\ube14\ucffc\ud14c\uc774\uc158(")\uc744 \uc2f1\ud074\ucffc\ud14c\uc774\uc158(')\uc73c\ub85c \ubcc0\uacbd\ud55c\ub2e4.
function zsDouble2SingleQuat(Str) {
	while (true) {
	   if ( Str.indexOf("\"") < 0)
	      break;
	   Str = Str.replace("\"", "'");
	}
	return Str;
}



// RealTime\uc73c\ub85c \uc0ac\uc6a9\uc790\uac00 \uc22b\uc790\ub97c \uc785\ub825\ud558\ub294\uc21c\uac04 .(dot)\ub97c \uc911\uac04\uc5d0 \ubc14\ub85c \ucd94\uac00
//	onkeyup \uc774\ubca4\ud2b8\uc5d0 \ud638\ucd9c\ud558\ub3c4\ub85d \ud55c\ub2e4!
// gubun : dash \uc0bd\uc785\ud328\ud134 \uad6c\ubd84\uc790 \ubb38\uc790\uc5f4
//	"time":\uc2dc\uac04(\uc2dc.\ubd84.\ucd08)
//				*** CustomTag\uc5d0\uc11c \uc0ac\uc6a9\ud558\uace0 \uc788\uc73c\ubbc0\ub85c \ud391\uc158 \ubcc0\uacbd(\ud2b9\ud788 \ud391\uc158\uba85\uacfc gubun)\uc5d0 \uc8fc\uc758\ub97c \uc694\ud568!
function zsSetDotRT(obj, gubun) {
	if ( gubun == "time" && (!(event.keyCode == 8 || event.keyCode <= 46)) ) zsSetDot(obj, gubun);
}

// RealTime\uc774 \uc544\ub2cc\uacbd\uc6b0\uc5d0 \ub300\ud574 .(dot)\ub97c \uc911\uac04\uc5d0 \ucd94\uac00\ud574\uc900\ub2e4
function zsSetDot(obj, gubun) {
	obj.value = zsSetDotStr(obj.value, gubun);
}

// RealTime\uc774 \uc544\ub2cc\uacbd\uc6b0\uc5d0 \ub300\ud574 .(dot)\ub97c \uc911\uac04\uc5d0 \ucd94\uac00\ud55c \ubb38\uc790\uc5f4\uc744 \ub9ac\ud134
function zsSetDotStr(str, gubun) {
	var retStr = str;
	data = str.toUpperCase();
	data_1 = zsRmString(data, ".");	// "." \uc81c\uac70

	// \uc2dc\uac04 2\uc790.2\uc790.2\uc790 \ud615\ud0dc\ub85c \uc911\uac04\uc5d0 .(dot) \uc0bd\uc785
	if (gubun == "time") {
		if (data.length > 8) {
			retStr = data_1.substring(0,2) + "." + data_1.substring(2,4) + "." + data_1.substring(4,6);
		} else if (data.length > 5) {
			if (data.substring(2,3)=="." && data.substring(4,5)==".") return str;
			else retStr = data_1.substring(0,2) + "." + data_1.substring(2,4) + "." + data_1.substring(4,6);
		} else if (data.length > 2) {
			if (data.substring(2,3)==".") return str;
			else retStr = data_1.substring(0,2) + "." + data_1.substring(2);
		}
	}

	return retStr;
}




// str\uc758 \ubb38\uc790\uc5f4\uc911 rmChar\uc758 \ud2b9\uc815 \ubb38\uc790\ub9cc \uc0ad\uc81c\ud55c \ubb38\uc790\uc5f4\uc744 \ub9ac\ud134.
//	rmChar\ub294 \uae38\uc774 1\uc758 \ubb38\uc790
function zsRmString(str, rmChar){
	//null\uc774 \uc788\ub2e4\uba74
	if(zcIsNull(str) || zcIsNull(rmChar)) return false;

	// \ud55c\uc790\ub9ac\uc758 rmChar\uc778\uc9c0 \uccb4\ud06c
	if(rmChar.length != 1){
		//alert("[\uc2a4\ud06c\ub9bd\ud2b8 \uc0ac\uc6a9 \uc624\ub958]\r\n rmStr\uc5d0\ub294 1\uc790\ub9ac\uc758 \ubb38\uc790\ub9cc \uc62c \uc218 \uc788\uc2b5\ub2c8\ub2e4.");   
		alert("[sript error]");
		return;
	}
	var len = str.length;
	var rtValue = "";

	for(var i =0 ; i < len ; i++){
		if(str.charAt(i) != rmChar && str.charAt(i) != " "){
			rtValue += str.charAt(i);
		}
	}
	return rtValue;
}

// obj\uc758 value \ubb38\uc790\uc5f4\uc911 rmChar\uc758 \ud2b9\uc815 \ubb38\uc790\ub9cc \uc0ad\uc81c\ud55c \ubb38\uc790\uc5f4\uc744 \ub9ac\ud134.
//	rmChar\ub294 \uae38\uc774 1\uc758 \ubb38\uc790
function zsRmObj(obj, rmChar){
	str = obj.value;
	//null\uc774 \uc788\ub2e4\uba74
	if(zcIsNull(str) || zcIsNull(rmChar)) return false;

	// \ud55c\uc790\ub9ac\uc758 rmChar\uc778\uc9c0 \uccb4\ud06c
	if(rmChar.length != 1){
		//alert("[\uc2a4\ud06c\ub9bd\ud2b8 \uc0ac\uc6a9 \uc624\ub958]\r\n rmStr\uc5d0\ub294 1\uc790\ub9ac\uc758 \ubb38\uc790\ub9cc \uc62c \uc218 \uc788\uc2b5\ub2c8\ub2e4.");
		alert("[sript error]");
		return;
	}
	var len = str.length;
	var rtValue = "";

	for(var i =0 ; i < len ; i++){
		if(str.charAt(i) != rmChar && str.charAt(i) != " "){
			rtValue += str.charAt(i);
		}
	}
	return rtValue;
}

// input \ud544\ub4dc \uac1d\uccb4\uc758 \uac12(obj)\uc5d0\uc11c  \uc591\ucabd \uc2a4\ud398\uc774\uc2a4\ub4e4 \uc81c\uac70
function zsDelRLSpace(obj) {
		str = zsDelLSpace( obj );
		str = zsDelRSpace( obj );
}

// input \ud544\ub4dc \uac1d\uccb4\uc758 \uac12(obj)\uc5d0\uc11c  \uc67c\ucabd\uc2a4\ud398\uc774\uc2a4\ub4e4 \uc81c\uac70
function zsDelLSpace(obj) {
	var str = obj.value;

	if(str != ""){
		var iLen = str.length;
		var idx = 0;
		for(idx=0 ; idx<iLen; idx++)
		{
			if(str.charAt(idx)!=' ') break;
		}
		obj.value = str.substring(idx, iLen);
	}
}

// input \ud544\ub4dc \uac1d\uccb4\uc758 \uac12(obj)\uc5d0\uc11c \uc624\ub978\ucabd \uc2a4\ud398\uc774\uc2a4\ub4e4 \uc81c\uac70
function zsDelRSpace(obj) {
	var str = obj.value;

	if(str != ""){
		var iLen = str.length;
		var idx = 0;
		for(idx=iLen-1 ; idx>=0; idx--)
		{
			if(str.charAt(idx)!=' ') break;
		}
		obj.value = str.substring( 0,idx+1 );
	}
}

function zsRLTrim(str) {
	str = zsLTrim(str);
	str = zsRTrim(str);
	return str;
}
function zsLTrim(str) {
	if (str == "") return "";

	var iLen = str.length;
	var idx = 0;
	for(idx=0 ; idx<iLen; idx++)
	{
		if(str.charAt(idx)!=' ') break;
	}
	return str.substring(idx, iLen);

}
function zsRTrim(str) {
	if (str == "") return "";

	var iLen = str.length;
	var idx = 0;
	for(idx=iLen-1 ; idx>=0; idx--)
	{
		if(str.charAt(idx)!=' ') break;
	}
	return str.substring( 0,idx+1 );
}


/* =====================================================================================================
   \ud568\uc218\uba85 : zu_xxxx() , \uc774\ubbf8\uc9c0\ucc98\ub9ac\ubd80\ubd84\uc740 \uc81c\uc678 MM_xxxx
   \uc124  \uba85 : \uc720\ud2f8\uc131 \uc2a4\ud06c\ub9bd\ud2b8 \ud391\uc158
========================================================================================================= */

// \uc624\uc9c1 \uc22b\uc790\ub9cc \uc785\ub825\uac00\ub2a5\ud558\uac8c \ub9cc\ub4dc\ub294 \ud391\uc158.(onkeypress \uc774\ubca4\ud2b8\uc5d0 \ud638\ucd9c\ud55c\ub2e4)
function zuInputNumRT(obj){
	var keycode = event.keyCode;

	if( !((48 <= keycode && keycode <=57) || keycode == 13 || keycode == 45) )
		event.keyCode = 0;		// \uc774\ubca4\ud2b8 cancel
}

// \ud3fc\uac1d\uccb4(formObj) \ub0b4\uc5d0 \uc788\ub294 text(read only\uc81c\uc678) \ubc15\uc2a4, radio , single select box \uac12\uc744 \ucd08\uae30\ud654\uc2dc\ud0a8\ub2e4.
// readonly\ub3c4 \ucd08\uae30\ud654 button skip hidden textarea \ucd08\uae30\ud654 \ucc98\ub9ac - 2004.08.17
function zuClearTRS(formObj){
	var len=formObj.elements.length;
	var i=0;
	var message="";
	for(i=0;i<len;i++){
		if( formObj.elements[i].tagName=="INPUT" ) {
			//if(formObj.elements[i].type=="text" && !formObj.elements[i].readOnly) formObj.elements[i].value="";
			if(formObj.elements[i].type=="text" || formObj.elements[i].type == "hidden" ) formObj.elements[i].value="";
			else if(formObj.elements[i].type=="select-one") formObj.elements[i].selectedIndex=0;
			else if(formObj.elements[i].type=="radio") formObj.elements[i].checked=false;
			else if(formObj.elements[i].type=="button") continue;
		} else if( formObj.elements[i].tagName=="TEXTAREA" ) {
			formObj.elements[i].innerText="";
		} else if( formObj.elements[i].tagName=="SELECT" ) {
			formObj.elements[i].selectedIndex=0;
			//formObj.elements[i].value="";
		}
	}
	window.defaultStatus = "\uc900\ube44(Ready)";
}

//\ud398\uc774\uc9c0 \ubaa8\ub4e0 \uc785\ub825\ud544\ub4dc\ub4e4\uc744 disabled \uc2dc\ud0a8\ub2e4.
//bln : boolean type (true\ube44\ud65c\uc131,false \ud65c\uc131)
function zuMakeDisable(bln) {
	for (var i=0;i <document.transform.length;i++){
    	document.transform.elements[i].disabled=bln;
    }
}

// 1\uc790\ub9ac \uc22b\uc790\uc5d0 0\ubd99\uc5ec\uc11c 2\uc790\ub9ac \ubc18\ud658
function zuToLen2  ( nums ) {
        var num=0;

        if ( nums >= 1 && nums <=9 )
            num = '0' + nums;
        else
            num=nums;
        return num;
    }


function setCalDate(targetName, returnStr) {
    eval(targetName).value = returnStr;
}


function calPopForCMon(name, target){
    dateName = target;
    var dateVal = name.value;

    if(dateVal == "")
    {
        callCalPop(name, target);
    }
    else
    {
        var chk = zdIsDate(dateVal, 'YYYY-MM-DD');
        if(!chk) {

			var dNow = new Date();
			var yyyy = dNow.getYear();
			var MM   = dNow.getMonth()+1;
			if(MM < 10) MM = '0' + MM;
			var dd   = dNow.getDate();
			name.value = yyyy + '-' + MM + '-' + dd;

            callCalPopForCMon(name, target, yyyy, MM, dd);
        } else {
        	//callCalPopForCMon(name, target, dateVal.substring(0,4), dateVal.substring(5,7), dateVal.substring(8));
        	dateVal = zsRmString(dateVal, "-");
        	callCalPopForCMon(name, target, dateVal.substring(0,4), dateVal.substring(4,6), dateVal.substring(6));
        }
    }
}

function checkSpecial(target) {
                //~$@#'_- ., + \uc0ad\uc81c
                var eng = new String("!%^&()={}[]|?><");
                var t = new String(target);                             
                var tempStr;
                for(i=0;i<t.length;i++) {
                        tempStr = t.substring(i,i+1);
                        //34(") 39(') 92(\)
                        if(eng.indexOf(tempStr) >= 0 || tempStr.charCodeAt(0) ==
 34 || tempStr.charCodeAt(0) == 92) {                                
                             //alert(alertMsg[16]);//"\ud2b9\uc218\ubb38\uc790\ub294 \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4."
                             alert('\ud2b9\uc218\ubb38\uc790\ub294 \uc0ac\uc6a9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.');
                             return false;
                        }
                }
                return true;
}

// \uac1d\uccb4\uc758 \uc874\uc7ac \uc720\ubb34 return
function chkExist( args ){
	if( args != "undefined" &&  args != "NaN" &&  args != null )
		return true;
	else
		return false;
}


// checkbox\uc758 \uc804\uccb4 \uc120\ud0dd\uc2dc \uc804\uccb4 \ubcc0\uacbd
function allChk(arg_str){
	var chk = "";

    if( chkExist(arg_str) ){
		if( chkExist(arg_str.length) ){
			var len = arg_str.length;

			for( i = 0 ; i < len; i ++){
				if( arg_str[i].checked == true ){
      	  	    	chk = "YES";
      	  	    	break;
      	  	    }
			}

			if( chk == "YES" ){
				for( i = 0 ; i < len; i ++){
					arg_str[i].checked = false;
				}
			}else{
				for( i = 0 ; i < len; i ++){
					arg_str[i].checked = true;
				}
			}
		}else{
			if( arg_str.checked == true ){
      		    arg_str.checked = false;
      		}else{
      			arg_str.checked = true;
      		}
		}
    }
}

	// \uc774\ubbf8\uc9c0 \ud06c\uae30 \ub9cc\ud07c \ud31d\uc5c5\uc73c\ub85c \uc774\ubbf8\ub9cc \ubcf4\uc5ec\uc900\ub2e4.
	function print_view(image) {
		var imgwin = window.open("", 'wall', 'scrollbars=yes, status=no, toolbar=no, resizable=0, location=no, menu=no, width=100, height=100');
		imgwin.focus();
		imgwin.document.open();
		imgwin.document.write("<html>\n");
		imgwin.document.write("<head>\n");
		imgwin.document.write("<title></title>\n");
		imgwin.document.write("<sc"+"ript>\n");
		imgwin.document.write("function resize() {\n");
		imgwin.document.write("pic = document.il;\n");
		imgwin.document.write("if(eval(pic).height) { var name = navigator.appName\n");
		imgwin.document.write(" if(name == 'Microsoft Internet Explorer'){ myHeight = eval(pic).height + 49; myWidth = eval(pic).width + 27;\n");
		imgwin.document.write(" } else { myHeight = eval(pic).height + 9; myWidth = eval(pic).width; }\n");
		imgwin.document.write(" clearTimeout();\n");
		imgwin.document.write(" var height = screen.height;\n");
		imgwin.document.write(" var width = screen.width;\n  ");
		imgwin.document.write(" var leftpos = width / 2 - myWidth / 2;\n");
		imgwin.document.write(" var toppos = height / 2 - myHeight / 2; \n");
		imgwin.document.write(" if( leftpos < 0) leftpos = 0; \n ");
		imgwin.document.write(" if( toppos < 0) toppos = 0; \n ");
		imgwin.document.write(" self.moveTo(leftpos, toppos);\n");
		imgwin.document.write(" self.resizeTo(myWidth, myHeight);\n");
		imgwin.document.write("} else setTimeOut(resize(), 100);}\n");
		imgwin.document.write("</sc"+"ript>\n");
		
		imgwin.document.write("</head>\n");
		imgwin.document.write('<body topmargin="0" leftmargin="0" marginheight="0" bottommargin="0" rightmargin="0" marginwidth="0" bgcolor="#FFFFFF">\n');
		
		imgwin.document.write("<img border=0 src="+image+" xwidth=100 xheight=9 name=il onload='resize();' onClick='javascript:window.close();' style='cursor:hand;'><br>\n");
		imgwin.document.write("</body>\n");
		imgwin.document.close();
	}
