	
	/**
	 * ???????? byte length?? ??????.
	 *
	 * @param	str ??????
	 * @return	byte length
	 */
	function jsByteLength(str) {
		if (str == "") {
			return	0;
		}

		var len = 0;

		for (var i = 0; i < str.length; i++) {
			if (str.charCodeAt(i) > 128) {
				len++;
			}
			len++;
		}

		return	len;
	}


	/**
	 * Object?? ???? ????????.
	 *
	 * @param	obj
	 * @param	value
	 */
	function jsSetValue(obj, value) {
		if (obj) {
			if (obj.type == "text") {
				obj.value = value;
			} else if (obj.tagName == "SELECT") {
				for (var i = 0; i < obj.length; i++) {
					if (obj.options[i].value == value) {
						obj.options[i].selected = true;
						break;
					}
				}
			}
		}
	}


	/**
	 * ???? ???????? ???????? ?????? ???? ????.
	 *
	 * @param	num
	 * @return	boolean
	 */
	function isNumber(num) {
		re = /[0-9]*[0-9]$/;

		if (re.test(num)) {
			return	true;
		}

		return	false;
	}

	/**
	 * ???? ????
	 *
	 * 1. +, - ?????? ?????????? ???? ?? ???? : ^[\+-]?
	 * 2. 0???? 9???? ?????? 0?? ???? ?? ?? ???? : [0-9]*
	 * 3. ???????? ?????? ?????? ???? : [0-9]$
	 *
	 * @param	num
	 * @return	boolean
	 */
	function isInteger(num) {
		re = /^[\+-]?[0-9]*[0-9]$/;

		if (re.test(num)) {
			return	true;
		}

		return	false;
	}

	/**
	 * ?????? ????
	 *
	 * 1. +, - ?????? ?????????? ???? ?? ???? : ^[\+-]?
	 * 2. 0???? 9???? ?????? 0?? ???? ?? ?? ???? : [0-9]*
	 * 3. ???????? ???? ?? ???? : [.]?
	 * 4. ?????? ???? ?????? 0???? 9???? ?????? ?? ?? ???? : [0-9]*
	 * 5. ???????? ?????? ?????? ???? : [0-9]$
	 *
	 * @param	num
	 * @return	boolean
	 */
	function isFloat(num) {
		re = /^[\+-]?[0-9]*[.]?[0-9]*[0-9]$/;

		if (re.test(num)) {
			return	true;
		}

		return	false;
	}

	/**
	 * ?????? ????
	 *
	 * @param	email
	 * @return	boolean
	 */
	function isEmail(email) {
		re = /[^@]+@[A-Za-z0-9_-]+[.]+[A-Za-z]+/;

		if (re.test(email)) {
			return	true;
		}

		return	false;
	}

	/**
	 * ???? ????
	 *
	 * @param	date
	 * @return	boolean
	 */
	function isDate(date) {
		
		if (date == null || date.length != 8) {
			return	false;
		}

		if (!isNumber(date)) {
			return	false;
		}

		var year = eval(date.substring(0, 4));
		var month = eval(date.substring(4, 6));
		var day = eval(date.substring(6, 8));

		if (month > 12) {
			return	false;
		}

		var totalDays;

		switch (eval(month)){

			case 1 :
				totalDays = 31;
				break;
			case 2 :
				if (((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0))
					totalDays = 29;
				else
					totalDays = 28;
				break;
			case 3 :
				totalDays = 31;
				break;
			case 4 :
				totalDays = 30;
				break;
			case 5 :
				totalDays = 31;
				break;
			case 6 :
				totalDays = 30;
				break;
			case 7 :
				totalDays = 31;
				break;
			case 8 :
				totalDays = 31;
				break;
			case 9 :
				totalDays = 30;
				break;
			case 10 :
				totalDays = 31;
				break;
			case 11 :
				totalDays = 30;
				break;
			case 12 :
				totalDays = 31;
				break;
		}

		if (day > totalDays) {
			return	false;
		}

		return	true;
	}
	
	function isYearMonth(date)
	{
		if (date == null || date.length != 6) {
			return	false;
		}

		if (!isNumber(date)) {
			return	false;
		}

		var year = eval(date.substring(0, 4));
		var month = eval(date.substring(4, 6));

		if (month > 12) {
			return	false;
		}
		
		return true;
	}
	
	function is_empty( p_str ) {
	if( p_str == null || trim(p_str) == "" || p_str == "undefined" ) return true;
    return false;
}
	
	
	function is_english( p_str ) {
		var v_chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
		return containsCharsOnly( p_str, v_chars );
	}
	
	function is_num( p_str ) {
		var v_chars = '0123456789';
		return containsCharsOnly( p_str, v_chars );
	}
	

	/**
	 * ?????? ???????? ????????.
	 *
	 * @param	form
	 */
	function validate(form) {
		var obj;
		var dispName;
		var dataType;
		var minValue;
		var maxValue;
		var isValid;
		var value;

		for (i = 0; i < form.elements.length; i++) {

			obj = form.elements(i);			
			obj.value = trim(obj.value);
			dispName = obj.getAttribute("dispName");
			dataType = obj.getAttribute("dataType");
			minValue = obj.getAttribute("minValue");
			maxValue = obj.getAttribute("maxValue");
			len = obj.getAttribute("len");
			value = obj.value;

			if (dispName == null) {
				dispName = obj.name;
			}

			// ???? ???? ???? ????
			if (obj.getAttribute("notNull") != null) {
				isValid = false;

				if (obj.type == "radio" || obj.type == "checkbox") {
					if (form.elements(obj.name).length) {
						for (j = 0; j < form.elements(obj.name).length; j++) {
							if (form.elements(obj.name)[j].checked) {
								isValid = true;
								break;
							}
						}
					} else {
						if (obj.checked) {
							isValid = true;
						}
					}
				} else {
					if (value != "") {
						isValid = true;
					} else {
						if (obj.getAttribute("comma") != null) {
							obj.value = 0;
							isValid = true;
						}
					}
				}

				if (!isValid) {
					alert(dispName + "??(??) ????????????.");
					obj.focus();
					if (window.event) {
						window.event.returnValue = false;
					}
					return	false;
				}
			}

			// ?????? ???? ????
			if (len != null) {
				if (value.length != eval(len)) {
					alert(dispName + "??(??) " + len + "?????? ???????? ??????.");
					obj.focus();
					if (window.event) {
						window.event.returnValue = false;
					}
					return	false;
				}
			}

			if (obj.type == "text") {
				// ?????? ???? ????
				if (dataType == null) { // 2002.01.30 ????
					if (obj.readOnly == false && jsByteLength(value) > obj.maxLength) {
						alert(dispName + " ?????? " + obj.maxLength + " ??(??) ????????.");
						obj.focus();
						if (window.event) {
							window.event.returnValue = false;
						}

						return	false;
					}
				} else if ((value != "") && (dataType != null)) {
					isValid = true;
					checkValue = false;

					if (dataType == "date") {
						value = deleteDateFormatStr(value);
						isValid = isDate(value);
						checkValue = true;
					} else if (dataType == "email") {
						isValid = isEmail(value);
					} else if (dataType == "float") {
						value = deleteCommaStr(value);
						isValid = isFloat(value);
						checkValue = true;
					} else if (dataType == "integer") {
						value = deleteCommaStr(value);
						isValid = isInteger(value);
						checkValue = true;
					} else if (dataType == "number") {
						value = deleteCommaStr(value);
						isValid = isNumber(value);
						checkValue = true;
					} else if (dataType == "double") {
						value = deleteCommaStr(value);
						isValid = isNumber(value);
						checkValue = true;
					}

					if (!isValid) {
						alert(dispName + " ?????? ???????? ????????.");
						if (dataType == "float" || dataType == "integer" || dataType == "number" || dataType == "double") {
							obj.value = "0";
						}
						obj.focus();
						if (window.event) {
							window.event.returnValue = false;
						}
						return	false;
					}

					if (checkValue) {
						if (minValue != null) {
							if (eval(minValue) > eval(value)) {
								alert(dispName + " ???? ??????(" + minValue + ") ??????????.");
								obj.focus();
								if (window.event) {
									window.event.returnValue = false;
								}
								return	false;
							}
						}

						if (isValid && (maxValue != null)) {
							if (eval(maxValue) < eval(value)) {
								alert(dispName + " ???? ??????(" + maxValue + ")?? ??????????.");
								obj.focus();
								if (window.event) {
									window.event.returnValue = false;
								}
								return	false;
							}
						}
					}
				}
			}
		}

		return	true;
	}

	/**
	 * ?????? comma?? ??????.
	 *
	 * @param	obj
	 */
	function addComma(obj) {
		obj.value = trim(obj.value);
		var value = obj.value;

		if (value == "") {
			return;
		}

		value = deleteCommaStr(value);

		if (!isFloat(value)) {
			dispName = obj.getAttribute("dispName");

			if (dispName == null) {
				dispName = "";
			}

			alert(dispName + " ?????? ???????? ????????.");
			obj.value = "0";
			obj.focus();
			if (window.event) {
				window.event.returnValue = false;
			}
			return;
		}

		obj.value = addCommaStr(value);
	}

	/**
	 * ?????? comma?? ??????.
	 */
	function addComma2() {
		var obj = window.event.srcElement;
		addComma(obj);
	}

	/**
	 * ?????? comma?? ??????.
	 *
	 * @param	str
	 */
	function addCommaStr(str) {
      var rxSplit = new RegExp('([0-9])([0-9][0-9][0-9][,.])');
      var arrNumber = str.split('.');
      arrNumber[0] += '.';
      do {
          arrNumber[0] = arrNumber[0].replace(rxSplit, '$1,$2');
      } while (rxSplit.test(arrNumber[0]));

        if (arrNumber.length > 1) {
         replaceStr = arrNumber.join("");
      } else {
           replaceStr = arrNumber[0].split(".")[0];
      }
      return replaceStr;
	    /*
		var num = "";
		var sign = "";

		if (str.charAt(0) == "+" || str.charAt(0) == "-") {
			sign = str.charAt(0);
			str = str.substr(1);
		}

		var index = str.indexOf('.');

		if (index != -1) {
			num = str.substr(index);
		} else {
			index = str.length;
		}

		for (var i = index - 3; i > 0; ) {
			num = ',' + str.substr(i, 3) + num;

			index = i;
			i -= 3;
		}

		num = sign + str.substr(0, index) + num;

		return	num;
		*/
	}

	/**
	 * ???????? comma?? ??????.
	 *
	 * @param	obj
	 */
	function deleteComma(obj) {
		obj.value = deleteCommaStr(obj.value);
	}

	/**
	 * ???????? comma?? ??????.
	 */
	function deleteComma2() {
		var obj = window.event.srcElement;
		deleteComma(obj);
		obj.select();
	}

	/**
	 * ???????? comma?? ??????.
	 *
	 * @param	str
	 */
	function deleteCommaStr(str) {
		var temp = '';

		for (var i = 0; i < str.length; i++) {
			if (str.charAt(i) == ',') {
				continue;
			} else {
				temp += str.charAt(i);
			}
		}

		return	temp;
	}

	/**
	 * ?????? "/"?? ??????.
	 *
	 * @param	obj
	 */
	function addDateFormat(obj) {
		var value = obj.value;

		if (trim(value) == "") {
			return;
		}

		value = deleteDateFormatStr(value);

		if (!isDate(value)) {
			dispName = obj.getAttribute("dispName");

			if (dispName == null) {
				dispName = "";
			}

			alert(dispName + " ?????? ???????? ????????.");
			obj.focus();

			return;
		}

		obj.value = addDateFormatStr(value);
	}

	/**
	 * ????(????)?? "/"?? ??????.
	 *
	 * @param	obj
	 */
	function addYmFormat(obj) {
		var value = obj.value;

		if (trim(value) == "") {
			return;
		}

		value = deleteDateFormatStr(value);

		if (!isDate(value + "01")) {
			dispName = obj.getAttribute("dispName");

			if (dispName == null) {
				dispName = "";
			}

			alert(dispName + " ?????? ???????? ????????.");
			obj.focus();

			return;
		}

		obj.value = addYmFormatStr(value);
	}
	
	/**
	 * ?????? "/"?? ??????.
	 */
	function addDateFormat2() {
		var obj = window.event.srcElement;
		addDateFormat(obj);
	}

	/**
	 * ?????? "/"?? ??????.
	 */
	function addYmFormat2() {
		var obj = window.event.srcElement;
		addYmFormat(obj);
	}
	
	function is_english_num( p_str ) {
	var v_chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
	return containsCharsOnly( p_str, v_chars );
}
	
	function containsCharsOnly( p_str, chars ) {
	if( is_empty(p_str) ) return false;

	for (var inx = 0; inx < p_str.length; inx++) {
		if (chars.indexOf(p_str.charAt(inx)) == -1){
			return false;
		}
	}
	return true;
}

	/**
	 * ?????? "/"?? ??????.
	 *
	 * @param	str
	 */
	function addDateFormatStr(str) {
		return	str.substring(0, 4) + "/" + str.substring(4, 6) + "/" + str.substring(6, 8);
	}

	/**
	 * ????(????)?? "/"?? ??????.
	 *
	 * @param	str
	 */
	function addYmFormatStr(str) {
		return	str.substring(0, 4) + "/" + str.substring(4, 6);
	}
	
	/**
	 * ???????? "/"?? ??????.
	 *
	 * @param	obj
	 */
	function deleteDateFormat(obj) {
		obj.value = deleteDateFormatStr(obj.value);
	}

	/**
	 * ???????? "/"?? ??????.
	 */
	function deleteDateFormat2() {
		var obj = window.event.srcElement;
		deleteDateFormat(obj);
		obj.select();
	}

	/**
	 * ???????? "/"?? ??????.
	 *
	 * @param	str
	 */
	function deleteDateFormatStr(str) {
		var temp = '';

		for (var i = 0; i < str.length; i++) {
			if (str.charAt(i) == '/') {
				continue;
			} else {
				temp += str.charAt(i);
			}
		}

		return	temp;
	}

	/**
	 * trim
	 *
	 * @param	text
	 * @return	string
	 */
	function trim(text) {
		if (text == "") {
			return	text;
		}

		var len = text.length;
		var st = 0;

		while ((st < len) && (text.charAt(st) <= ' ')) {
			st++;
		}

		while ((st < len) && (text.charAt(len - 1) <= ' ')) {
			len--;
		}

		return	((st > 0) || (len < text.length)) ? text.substring(st, len) : text;
	}

	/**
	 * ltrim
	 *
	 * @param	text
	 * @return	string
	 */
	function ltrim(text) {
		if (text == "") {
			return	text;
		}

		var len = text.length;
		var st = 0;

		while ((st < len) && (text.charAt(st) <= ' ')) {
			st++;
		}

		return	(st > 0) ? text.substring(st, len) : text;
	}

	/**
	 * rtrim
	 *
	 * @param	text
	 * @return	string
	 */
	function rtrim(text) {
		if (text == "") {
			return	text;
		}

		var len = text.length;
		var st = 0;

		while ((st < len) && (text.charAt(len - 1) <= ' ')) {
			len--;
		}

		return	(len < text.length) ? text.substring(st, len) : text;
	}

	/**
	 * ?????? ???????? ????????.
	 */
	function setEventHandler() {
		for (i = 0; i < document.forms.length; i++) {

			var elements = document.forms(i).elements;

			for (j = 0; j < elements.length; j++) {
				// INPUT ?????? onblur ???????? ???????? ????????.
				if (elements(j).tagName == "INPUT") {

					dataType = elements(j).getAttribute("dataType");

					if (dataType == "date") {
						elements(j).onblur = addDateFormat2;
						elements(j).onfocus = deleteDateFormat2;
						addDateFormat(elements(j));
					} else if (dataType == "number" || dataType == "integer" || dataType == "float" || dataType == "double") {
						if (elements(j).getAttribute("comma") != null) {
							elements(j).onblur = addComma2;
							elements(j).onfocus = deleteComma2;
							addComma(elements(j));
						}
					} else if (dataType == "yyyymm") {
						elements(j).onblur = addYmFormat2;
						elements(j).onfocus = deleteDateFormat2;
						addYmFormat(elements(j));
					}
				}
			}
		}
	}

	/**
	 * ???????????? comma?? ??????, ???????????? "/" ?? ??????.
	 *
	 * @param	form
	 */
	function makeValue(form) {
		for (i = 0; i < form.elements.length; i++) {
			obj = form.elements(i);

			if (obj.tagName == "INPUT") {
				dataType = obj.getAttribute("dataType");

				if (dataType == "date") {
					deleteDateFormat(obj);
				} else if (dataType == "number" || dataType == "integer" || dataType == "float" || dataType == "double") {
					if (obj.getAttribute("comma") != null) {
						deleteComma(obj);
					}
				} else if (dataType == "yyyymm") {
					deleteDateFormat(obj);
				}
			}
		}
	}

	/**
	 * ?????? ???????? ????????.
	 * ?????? ?????????? ???? ????.
	 *
	 * @param 	form
	 * @param	obj
	 */
	function validateObj(form, obj) {

		var dispName;
		var dataType;
		var minValue;
		var maxValue;
		var isValid;
		var value;
		
		obj.value = trim(obj.value);
		dispName = obj.getAttribute("dispName");
		dataType = obj.getAttribute("dataType");
		minValue = obj.getAttribute("minValue");
		maxValue = obj.getAttribute("maxValue");		
		len = obj.getAttribute("len");
		value = obj.value;

		if (dispName == null) {
			dispName = obj.name;
		}

		// ???? ???? ???? ????
		if (obj.getAttribute("notNull") != null) {
			isValid = false;

			if (obj.type == "radio" || obj.type == "checkbox") {
				if (form.elements(obj.name).length) {
					for (j = 0; j < form.elements(obj.name).length; j++) {
						if (form.elements(obj.name)[j].checked) {
							isValid = true;
							break;
						}
					}
				} else {
					if (obj.checked) {
						isValid = true;
					}
				}
			} else {
				if (value != "") {
					isValid = true;
				} else {
					if (obj.getAttribute("comma") != null) {
						obj.value = 0;
						isValid = true;
					}
				}
			}

			if (!isValid) {
				alert(dispName + "??(??) ????????????.");
				obj.focus();
				if (window.event) {
					window.event.returnValue = false;
				}
				return	false;
			}
		}

		// ?????? ???? ????
		if (len != null) {
			if (value.length != eval(len)) {
				alert(dispName + "??(??) " + len + "?????? ???????? ??????.");
				obj.focus();
				if (window.event) {
					window.event.returnValue = false;
				}
				return	false;
			}
		}

		if (obj.type == "text") {
			// ?????? ???? ????
			if ((value != "") && (dataType != null)) {
				isValid = true;
				checkValue = false;

				if (dataType == "date") {
					value = deleteDateFormatStr(value);
					isValid = isDate(value);
					checkValue = true;
				} else if (dataType == "email") {
					isValid = isEmail(value);
				} else if (dataType == "float") {
					value = deleteCommaStr(value);
					isValid = isFloat(value);
					checkValue = true;
				} else if (dataType == "integer") {
					value = deleteCommaStr(value);
					isValid = isInteger(value);
					checkValue = true;
				} else if (dataType == "number") {
					value = deleteCommaStr(value);
					isValid = isNumber(value);
					checkValue = true;
				} else if (dataType == "double") {
					value = deleteCommaStr(value);
					isValid = isNumber(value);
					checkValue = true;
				}

				if (!isValid) {
					alert(dispName + " ?????? ???????? ????????.");
					if (dataType == "float" || dataType == "integer" || dataType == "number" || dataType == "double") {
						obj.value = "0";
					}
					obj.focus();
					if (window.event) {
						window.event.returnValue = false;
					}
					return	false;
				}

				if (checkValue) {
					if (minValue != null) {
						if (eval(minValue) > eval(value)) {
							alert(dispName + " ???? ??????(" + minValue + ") ??????????.");
							obj.focus();
							if (window.event) {
								window.event.returnValue = false;
							}
							return	false;
						}
					}

					if (isValid && (maxValue != null)) {
						if (eval(maxValue) < eval(value)) {
							alert(dispName + " ???? ??????(" + maxValue + ")?? ??????????.");
							obj.focus();
							if (window.event) {
								window.event.returnValue = false;
							}
							return	false;
						}
					}
				}
			}
		}

		return	true;
	}

	/**
	 * ???????????? comma?? ??????, ???????????? "/" ?? ??????.
	 * ?????? ?????????? ???? ????.
	 *
	 * @param	form
	 * @param	obj
	 */
	function makeValueObj(form, obj) {
		if (obj.tagName == "INPUT") {
			dataType = obj.getAttribute("dataType");

			if (dataType == "date") {
				deleteDateFormat(obj);
			} else if (dataType == "number" || dataType == "integer" || dataType == "float" || dataType == "double") {
				if (obj.getAttribute("comma") != null) {
					deleteComma(obj);
				}
			}
		}
	}

	 /**
	 * ???????? Hyphen?? ??????.
	 *
	 * @param	str
	 */
	function deleteHyphen(str) {
		var temp = '';

		for (var i = 0; i < str.length; i++) {
			if (str.charAt(i) == '-') {
				continue;
			} else {
				temp += str.charAt(i);
			}
		}

		return	temp;
	}

	/**
	 * ?? ???? ???? ?????????? ?????? ????????.
	 */
	function setComma() {

		for (i = 0; i < document.forms.length; i++) {
			var elements = document.forms(i).elements;
			for (j = 0; j < elements.length; j++) {
				if (elements(j).tagName == "INPUT") {
					dataType = elements(j).getAttribute("dataType");
					if (dataType == "number" || dataType == "integer" ||
					dataType == "float" || dataType == "double") {
						if (elements(j).getAttribute("comma") != null) {
							addComma(elements(j));
						}
					}
				}
			}
		}
	}


	/**
	* ???????? ???????? ?????? ???? ????.
	*
	* @param	num
	* @return	boolean
	*/
	function isNumber2(num){
		var inText = num.value;
		var ret;

		for (var i = 0; i < inText.length; i++) {
			ret = inText.charCodeAt(i);
			if (!((ret > 47) && (ret < 58)))  {
				alert("?????? ???? ??????????.");
				num.value = "";
				num.focus();
				return false;
			}
		}
		return true;
	}

	/**
	* ???????? ???????? ?????? ???? ????.
	*
	* @param	han
	* @return	boolean
	*/

   function isHangul(han) {
	var inText = han.value;
	var ret;

	ret = inText.charCodeAt();
	if (ret > 31 && ret < 127) {
		alert("?????? ???? ??????????.");
		han.value = "";
		han.focus();
		return false;
	}

	return true;
} 


   /* ?????????????? ????(??????)
	* param obj
	* return 
	*/
	function checkChar(obj)
	{
		var strValue = obj.value
		
		var retChar = strValue.toUpperCase();

		if (retChar <  "A" || retChar  > "Z")
		{
			alert("???????? ?????? ??????????.");
			obj.value = "";
			obj.focus();
			return;
		}
		obj.value = retChar;
	}
	
	// ?????? ?????? ?????? ???? ????
	function onlyNumber(){
		
		if ((event.keyCode >= 32 && event.keyCode < 48)
		     || (event.keyCode > 57 && event.keyCode < 65)
		     || (event.keyCode > 90 && event.keyCode < 97)
		     || (event.keyCode >= 97 && event.keyCode <= 122)
		     || (event.keyCode >= 65 && event.keyCode <= 90))
	         
	         event.returnValue = false;
	
	}
	// ?????? ?????? ???? ?? ','?? ???? ????
	function AmtNumber(){
	
		if ((event.keyCode >= 32 && event.keyCode < 44)
	         || (event.keyCode >= 45 && event.keyCode < 48)
			 || (event.keyCode > 57 && event.keyCode < 65)
			 || (event.keyCode > 90 && event.keyCode < 97)
			 || (event.keyCode >= 97 && event.keyCode <= 122)
			 || (event.keyCode >= 65 && event.keyCode <= 90))
			 event.returnValue = false;
	
	}
	// ?????? ?????? ???? ?? '.'?? ???? ????
	function RateNumber(){
	
		if ((event.keyCode >= 32 && event.keyCode < 46)
	         || (event.keyCode >= 47 && event.keyCode < 48)
			 || (event.keyCode > 57 && event.keyCode < 65)
			 || (event.keyCode > 90 && event.keyCode < 97)
			 || (event.keyCode >= 97 && event.keyCode <= 122)
			 || (event.keyCode >= 65 && event.keyCode <= 90))
			event.returnValue = false;
	
	}
	
	// ?????? ????
	function loginSubmit(frm){
		if (!validate(frm)) {
		    return;
        }
        frm.submit();
	}
	
	// Enter ???????? loginSubmit
	function enterSubmit(frm){
		if(event.keyCode == 13) {
			loginSubmit(frm);
		}
	}
	
	// Enter ???????? ?????? ????
	function enterFocus(obj){
		if(event.keyCode == 13) {
			obj.focus();
		}
	}
	
	function handleEnter(frm){
		if(event.keyCode == 13) {
			frm.submit();
		}
	}
	
//email ?? ?????? ?????? ???????? ????
function is_email( p_email ) {
	//var re = /[^@]+@[A-Za-z0-9_-]+[.]+[A-Za-z]+/;
	var format = /^((\w|[\-\.])+)@((\w|[\-\.])+)\.([A-Za-z]+)$/;

	if (p_email.search(format) != -1) {
        return true; //?????? ???? ????
    }
    return false;
}
//ip ???? ?????? ?????? ???????? ????
/*
function is_ip( p_ip ){
	var format = /^((\\\)+).((\\\)+).((\\\)+).((\\\)+).([0-9]+)$/;
	
	if(p_ip.search(format) != -1) {
		return true;
	}
}
*/
function is_ip( p_ip ){
	var format = /^(\d+).(\d+).(\d+).(\d+)$/;
	
	if(p_ip.search(format) != -1) {
		return true;
	}
}


//?????? ???? ????
function is_id( p_id ){
	var count = 0;
		
	for(var i = 0; i < p_id.length; i++ ){
		if( p_id.charAt(i) == ' '){
			count++;
		}
	}
	
	if( count == 0 ){
		return true;
	}		
}

function checkPwd(pwd) {
	
	var check= false;
	var numCheck=0;
	var strCheck=0;
	var str="~!@#$%^&*_+";
	
	if (pwd.length >= 8 && pwd.length < 10) {
		for (i=0; i<pwd.length; i++) {
			if (!isNaN(pwd.charAt(i))) {
			 	numCheck ++;
			 }
			if (str.indexOf(pwd.charAt(i)) > -1){
				strCheck ++;
			}				
		}
		if(numCheck > 0 && strCheck > 0) {
			check= true;
		}
	} else if (pwd.length >=10) {			
		for (i=0; i<pwd.length; i++) {
			if (!isNaN(pwd.charAt(i))) {
			 	numCheck ++;
			 	//check = true;
			 }
		}
		if (numCheck > 0 && numCheck < pwd.length) {
			check = true;
		}
	} else { return check; }
	
	return check;
}

function checkIP(strIP){
    var expUrl = /^(1|2)?\d?\d([.](1|2)?\d?\d){3}$/;
    
    return expUrl.test(strIP);
}

function numbersonly(e, decimal) {
    var key;
    var keychar;

    if (window.event) {
        key = window.event.keyCode;
    } else if (e) {
        key = e.which;
    } else {
        return true;
    }
    keychar = String.fromCharCode(key);

    if ((key == null) || (key == 0) || (key == 8) || (key == 9) || (key == 13)
            || (key == 27)) {
        return true;
    } else if ((("0123456789").indexOf(keychar) > -1)) {
        return true;
    } else if (decimal && (keychar == ".")) {
        return true;
    } else
        return false;
}

function onlyNumber2(chknum){ 
	if(chknum==""){ 
	alert("숫자를 입력하여 주십시요"); 
	return false; 
	} 
	for(i=0;i<chknum.length;i++){ 
	if(chknum.charAt(i)<"0" || chknum.charAt(i) >"9"){ 
	alert("\n숫자만 입력 가능합니다."); 
	return false; 
	} 
	} 
	return true; 
	}

function jsNumber(obj)
{
        //숫자키만 입력
        if (event.keyCode >= 48 && event.keyCode <= 57) 
        { 
             return true;
         } 
        else 
        {
             event.returnValue = false;
         }
}

function isNumber2(obj)
{
 var strValue = obj.value;
    for(i = 0; i < strValue.length; i++)
 {    
        var ch = strValue.charCodeAt(i);
        
  if((ch>33 && ch <45) ||(ch >46 && ch < 48) || ch > 57)
  {
   return false;
  }
  if(strValue.charCodeAt(0) == 32)
  {
   return false;
  }
    }    
    return true;
}

function fn_numbersonly(evt)
{
    var myEvent = window.event ? window.event : evt;
    var isWindowEvent = window.event ? true : false;
    var keyVal = fnGetEvent(evt);
    var result = false;
    if(myEvent.shiftKey)
    {
        result = false;
    }
    else
    {
        if((keyVal >= 48 && keyVal <=57) || (keyVal >= 96 && keyVal <=105) || (keyVal == 8) || (keyVal == 9))
        {
            result = true;
        }
        else
        {
            result = false;
        }
    }
    if(!result)
    {
        if(!isWindowEvent)
        {
            myEvent.preventDefault();
        }
        else
        {
            myEvent.returnValue=false;
        }
    }
}

function fn_GetEvent(e)
{
   
    if(navigator.appName == 'Netscape')
    {
        keyVal = e.which;
    }
    else
    {
        keyVal = event.keyCode ;
    }
    return keyVal;
}

function fn_numbersonly(evt)
{
  alert(evt);
	var myEvent = window.event ? window.event : evt;
    var isWindowEvent = window.event ? true : false;
    var keyVal = fn_GetEvent(evt);
    var result = false;
    if(myEvent.shiftKey)
    {

        result = false;
    }
    else
    {
        if((keyVal >= 48 && keyVal <=57) || (keyVal >= 96 && keyVal <=105) || (keyVal == 8) || (keyVal == 9))
        {
            result = true;
        }
        else
        {
            result = false;
        }
    }
    if(!result)
    {
        if(!isWindowEvent)
        {
            myEvent.preventDefault();
        }
        else
        {
            myEvent.returnValue=false;
        }
    }
}

