/*************************************************************************/
/*  1. ½Ã ½º ÅÛ ¸í : °øÅë                                                */
/*  2. ÇÁ·Î±×·¥ ID : valid.js                                            */
/*  3. ÇÁ·Î±×·¥ ¸í : Àü·«¹°ÀÚ À¯È¿¼ºÁ¡°ËÀ» À§ÇÑ JavaScript ÇÔ¼ö ¸ðÀ½     */
/*  4. ÀÛ  ¼º   ÀÏ : 2004.10.25                                          */
/*  5. ÀÛ  ¼º   ÀÚ : ÇÑ½ÂÈÆ                                              */
/*  6. °³       ¿ä : ¾÷¹« ³»¿ë°ú °ü·ÃµÈ JavaScript ÇÔ¼ö¸¦ Á¤ÀÇÇÑ´Ù.      */
/*************************************************************************/
/* LAST DATE    Author   DESCRIPTION                                     */
/* -----------  -------  ----------------------------------------------- */
/* 2004.10.25   ÇÑ½ÂÈÆ   ÃÖÃÊ»ý¼º                                        */
/*************************************************************************/

/**
 * ÁÖ¾îÁø ¹®ÀÚ¿­ °ªÀÌ À¯È¿ÇÑ ³¯Â¥ Çü½ÄÀÎÁö¸¦ È®ÀÎÇÏ¿©
 * À¯È¿ÇÏ¸é true¸¦ µ¹·ÁÁÖ°í, À¯È¿ÇÏÁö ¾ÊÀ¸¸é ÀûÀýÇÑ ¿À·ù ¸Þ½ÃÁö¸¦
 * º¸¿©ÁØ ´ÙÀ½ false¸¦ µ¹·ÁÁØ´Ù.
 */
function checkYearMonth(dateStr) {
	// ¾Æ¹«°ªµµ ¾øÀ¸¸é ÁøÇàÇÏÁö ¾Ê´Â´Ù.
	if ( trim(dateStr) == "" ) return true;

	dateStr = removeChar(dateStr, '/');

	// ½½·¡½¬¸¦ Á¦°ÅÇÑ ³ª¸ÓÁö ÀÚ¸´¼ö°¡ 8ÀÚÀÎÁö °Ë»çÇÑ´Ù.
	if (dateStr.length != 6) {
		alert("YYYYMMÀÇ Çü½ÄÀ¸·Î ÀÔ·ÂÇØ ÁÖ½Ê½Ã¿À.");
		return false;
	}

	// ¼ýÀÚ·Î¸¸ ±¸¼ºµÇ¾ú´ÂÁö È®ÀÎÇÑ´Ù.
	if ( isNaN(dateStr) ) {
		alert("³¯Â¥¿¡´Â ¹®ÀÚ°¡ ÀÔ·ÂµÉ ¼ö ¾ø½À´Ï´Ù.");
		return false;
	}

	// ¿¬µµ 4ÀÚ¸®, ¿ù 2ÀÚ¸®·Î ÀÚ¸¥´Ù.
	var yearStr  = dateStr.substring(0, 4);
	var monthStr = dateStr.substring(4);


	// ¿¬µµ °ªÀÌ 1900 ~ 2050 »çÀÌÀÎÁö Á¡°ËÇÑ´Ù.
	if ( yearStr < 1900 || yearStr > 2050 ) {
		alert("¿¬µµ´Â 1900³â ~ 2050³â »çÀÌÀÇ °ªÀ» ÀÔ·ÂÇØ¾ß ÇÕ´Ï´Ù.");
		return false;
	}

	// ¿ùÀÌ 1~12¿ù »çÀÌÀÎÁö Á¡°ËÇÑ´Ù.
	if ( monthStr < 1 || monthStr > 12 ) {
		alert("¿ùÀº 01¿ù¿¡¼­ 12¿ù »çÀÌÀÇ °ªÀÔ´Ï´Ù.");
		return false;
	}

	return true;
}


/**
 * TextÇü ÀÔ·ÂÆûÀÇ ¹®ÀÚ¿­ °ªÀÌ À¯È¿ÇÑ ³¯Â¥ Çü½ÄÀÎÁö¸¦ È®ÀÎÇÏ¿©
 * À¯È¿ÇÏ¸é ¿¬¿ù °ª »çÀÌ¿¡ ½½·¡½¬(/)¸¦ ³ÖÀº ¹®ÀÚ¿­·Î ¹Ù²Û ÈÄ true¸¦ µ¹·ÁÁÖ°í,
 * À¯È¿ÇÏÁö ¾ÊÀ¸¸é ÀûÀýÇÑ ¿À·ù ¸Þ½ÃÁö¸¦ º¸¿©ÁØ ´ÙÀ½ false¸¦ µ¹·ÁÁØ´Ù.
 */
function checkYearMonthObj(obj) {
	var dateStr = removeChar(obj.value, '/');

	var valid = true;

	// ºó ¹®ÀÚ¿­ÀÌ¸é Á¡°ËÇÏÁö ¾Ê´Â´Ù.
	if ( trim(dateStr) != "" ) {
		valid = checkYearMonth(dateStr);
		if ( valid ) {
			var yearStr  = dateStr.substring(0, 4);
			var monthStr = dateStr.substring(4);

			obj.value = yearStr + "/" + monthStr;
		}
		else {
			obj.focus();
		}
	}

	return valid;
}


/**
 * TextÇü ÀÔ·ÂÆû ¿¡ ÀÔ·ÂµÈ ³¯Â¥°¡ À¯È¿ÇÑÁö Ã¼Å©ÇÏ¿©
 * À¯È¿ÇÏ¸é YYYY/MM/DDÀÇ ÇüÅÂ·Î º¯È¯ÇÏ¿© return
 * ÇÏ°í, À¯È¿ÇÏÁö ¾ÊÀ¸¸é ¿¡·¯¸Þ¼¼Áö º¸¿©ÁÜ
 * (³â¿ùÀÏ ÀÔ·ÂÇÊµåÀÇ onblur event¿¡ »ç¿ëÇÒ°Í)
 *
 * @param obj TextÇü ÀÔ·ÂÆû °´Ã¼
 */
function checkDateObj(obj) {
	var dateStr = removeChar(obj.value, '/');

	var valid = true;

	// ºó ¹®ÀÚ¿­ÀÌ¸é Á¡°ËÇÏÁö ¾Ê´Â´Ù.
	if ( trim(dateStr) != "" ) {
		valid = checkDate(dateStr);
		if ( valid ) {
			var yearStr  = dateStr.substring(0, 4);
			var monthStr = dateStr.substring(4, 6);
			var dayStr   = dateStr.substring(6);
			obj.value = yearStr +  monthStr +  dayStr;
		}
		else {
			obj.focus();
		}
	}

	return valid;
}

//ÀÚ¸´¼ö¿Í ÇØ´ç object¸¦ ¹Þ¾Æ¼­ Ã¼Å©ÇÔ...onFocusOutÀÌ³ª³ª validation checkÇÒ¶§ »ç¿ë
function checkHSKCd(obj, len){
	var hsk = obj.value;
	//alert(isNumeric(hsk) );
	
	if( isNumeric(hsk) ){
		if( hsk.length == len ){
			return true;
		}else if( hsk.length > len ){
			alert('hskÄÚµå ÀÚ¸´¼ö¸¦ ÃÊ°úÇÏ¿´½À´Ï´Ù.');
			obj.focus();
			return false;
		}else if( hsk.length < len ){
			alert('hskÄÚµå ÀÚ¸´¼ö°¡ ¸ðÀÚ¶ø´Ï´Ù.');
			obj.focus();
			return false;
		}
	}else{
		alert('HSKÄÚµå°ª¿¡ ¹®ÀÚ¸¦ ÀÔ·ÂÇÏ¿´½À´Ï´Ù.');
		obj.focus();
		return false;
	}
}

function checkNum() {
	if (event.keyCode < 48 || event.keyCode > 57) {
		event.returnValue = false;
	}
}

// ¼ýÀÚÀÎÁö Ã¼Å©ÇÏ´Â ÇÔ¼ö
function isNumeric(numStr) {

	return !isNaN(numStr);
}

/**
 * ÁÖ¾îÁø ¹®ÀÚ¿­°ªÀÌ À¯È¿ÇÑ ³¯Â¥°ªÀÎÁö Á¡°ËÇÏ¿©
 * À¯È¿ÇÏ¸é true¸¦ µ¹·ÁÁÖ°í, À¯È¿ÇÏÁö ¾ÊÀ¸¸é
 * ¿¡·¯¸Þ¼¼Áö¸¦ º¸¿©ÁÖ°í false¸¦ µ¹·ÁÁØ´Ù.
 * (³â¿ùÀÏ ÀÔ·ÂÇÊµåÀÇ onblur event¿¡ »ç¿ëÇÒ°Í)
 *
 * @param dateStr ³¯Â¥Çü°ªÀ» °¡Áö´Â ¹®ÀÚ¿­
 */
function checkDate(dateStr) {
	// ¾Æ¹«°ªµµ ¾øÀ¸¸é ÁøÇàÇÏÁö ¾Ê´Â´Ù.
	if ( trim(dateStr) == "" ) return true;

	dateStr = removeChar(dateStr, '/');

	// ½½·¡½¬¸¦ Á¦°ÅÇÑ ³ª¸ÓÁö ÀÚ¸´¼ö°¡ 8ÀÚÀÎÁö °Ë»çÇÑ´Ù.
	if (dateStr.length != 8) {
		alert("YYYYMMDDÀÇ Çü½ÄÀ¸·Î ÀÔ·ÂÇØ ÁÖ½Ê½Ã¿À.");
		return false;
	}

	// ¼ýÀÚ·Î¸¸ ±¸¼ºµÇ¾ú´ÂÁö È®ÀÎÇÑ´Ù.
	if ( isNaN(dateStr) ) {
		alert("³¯Â¥¿¡´Â ¹®ÀÚ°¡ ÀÔ·ÂµÉ ¼ö ¾ø½À´Ï´Ù.");
		return false;
	}

	// ¿¬µµ 4ÀÚ¸®, ¿ù 2ÀÚ¸®, ÀÏ 2ÀÚ¸®·Î ÀÚ¸¥´Ù.
	var yearStr  = dateStr.substring(0, 4);
	var monthStr = dateStr.substring(4, 6);
	var dayStr   = dateStr.substring(6);


	// ¿¬µµ °ªÀÌ 1900 ~ 2050 »çÀÌÀÎÁö Á¡°ËÇÑ´Ù.
	if ( yearStr < 1900 || yearStr > 2050 ) {
		alert("¿¬µµ´Â 1900³â ~ 2050³â »çÀÌÀÇ °ªÀ» ÀÔ·ÂÇØ¾ß ÇÕ´Ï´Ù.");
		return false;
	}

	// ¿ùÀÌ 1~12¿ù »çÀÌÀÎÁö Á¡°ËÇÑ´Ù.
	if ( monthStr < 1 || monthStr > 12 ) {
		alert("¿ùÀº 1¿ù¿¡¼­ 12¿ù »çÀÌÀÇ °ªÀÔ´Ï´Ù.");
		return false;
	}

	// ÀÏÀÚ°¡ ÇØ´ç¿ùÀÇ À¯È¿ÇÑ ÀÏÀÚÀÎÁö °Ë°ËÇÑ´Ù.
	// Date °´Ã¼ »ý¼º½Ã ³¯Â¥°¡ À¯È¿¹üÀ§¸¦ ³Ñ¾î¼­¸é
	// ´ÞÀÌ º¯ÇÏ´Â ¿ø¸®¸¦ ÀÌ¿ëÇß´Ù.
	var date = new Date(yearStr, monthStr - 1, dayStr);

	if (yearStr != date.getFullYear() || monthStr != (date.getMonth() + 1)) {
		alert(monthStr + "¿ù¿¡´Â " + dayStr + "ÀÏÀÌ ¾ø½À´Ï´Ù.");
		return false;
	}

	return true;
}


/**
 * µÎ°³ÀÇ ¿¬¿ù(yyyy/MMÇü½Ä) ¹®ÀÚ¿­À» ºñ±³ÇÏ¿© ¾Õ ¿¬¿ùÀÌ µÚ ¿¬¿ù°ú
 * °°À¸¸é 0, ¾Õ ¿¬¿ùÀÌ µÚ ¿¬¿ùº¸´Ù ºü¸£¸é 1, ¾Õ ¿¬¿ùÀÌ µÚ ¿¬¿ùº¸´Ù
 * ´À¸®¸é -1À» µ¹·Á ÁØ´Ù.
 *
 * @param yearMonth1  ¾Õ ¿¬¿ù
 * @param yearMonth2  µÚ ¿¬¿ù
 */
function compareYearMonth(yearMonth1, yearMonth2) {
	var result = 0;

	yearMonth1 = removeChar(yearMonth1, '/');
	yearMonth2 = removeChar(yearMonth2, '/');

	if ( yearMonth1 < yearMonth2 ) {
		result = 1;
	}
	else if ( yearMonth1 > yearMonth2 ) {
		result = -1;
	}

	return result;
}


/**
 * µÎ°³ÀÇ TextÇü ÀÔ·ÂÆûÀÇ ¿¬¿ù(yyyy/MMÇü½Ä) ¹®ÀÚ¿­ °ªÀ» ºñ±³ÇÏ¿©
 * ¾Õ ¿¬¿ùÀÌ µÚ ¿¬¿ù°ú °°À¸¸é 0, ¾Õ ¿¬¿ùÀÌ µÚ ¿¬¿ùº¸´Ù ºü¸£¸é 1,
 * ¾Õ ¿¬¿ùÀÌ µÚ ¿¬¿ùº¸´Ù ´À¸®¸é -1À» µ¹·Á ÁØ´Ù.
 *
 * @param obj1  ¾Õ ¿¬¿ù°ªÀ» °¡Áö´Â TextÇü ÀÔ·ÂÆû
 * @param obj2  µÚ ¿¬¿ù°ªÀ» °¡Áö´Â TextÇü ÀÔ·ÂÆû
 */
function compareYearMonthObj(obj1, obj2) {
	return compareYearMonth(obj1.value, obj2.value);
}


/**
 * µÎ°³ÀÇ ³¯Â¥ ¹®ÀÚ¿­À» ºñ±³ÇÏ¿© Ã¹¹øÂ° ÆÄ¶ó¹ÌÅÍ(date1)ÀÇ
 * ³¯Â¥ °ªÀÌ µÎ¹øÂ° ÆÄ¶ó¹ÌÅÍ(date2)ÀÇ ³¯Â¥ °ª°ú ºñ±³ÇÏ¿©
 * ÀÌ¸£¸é 1À», °°À¸¸é 0À», ´ÊÀ¸¸é -1À» µ¹·Á ÁØ´Ù.
 * date1Àº °ªÀÌ ÀÖ°í, date2´Â °ªÀÌ ¾øÀ¸¸é -1,
 * date1Àº °ªÀÌ ¾ø°í, date2´Â °ªÀÌ ÀÖÀ¸¸é 1 ÀÌ´Ù.
 *
 * @param date1 yyyyMMddÇü½ÄÀÇ ³¯Â¥Çü ¹®ÀÚ¿­.
 * @param date2 yyyyMMddÇü½ÄÀÇ ³¯Â¥Çü ¹®ÀÚ¿­.
 */
function compareDate(date1, date2) {
	date1 = removeChar(date1, '/');
	date2 = removeChar(date2, '/');

	var result = 0;

	if ( date1 < date2 ) {
		result = 1;
	}
	else if ( date1 > date2 ) {
		result = -1;
	}

	return result;
}


/**
 * µÎ°³ÀÇ ³¯Â¥ ¹®ÀÚ¿­À» ºñ±³ÇÏ¿© Ã¹¹øÂ° ÆÄ¶ó¹ÌÅÍ(obj1)ÀÇ
 * ³¯Â¥ °ªÀÌ µÎ¹øÂ° ÆÄ¶ó¹ÌÅÍ(obj2)ÀÇ ³¯Â¥ °ª°ú ºñ±³ÇÏ¿©
 * ÀÌ¸£¸é 1À», °°À¸¸é 0À», ´ÊÀ¸¸é -1À» µ¹·Á ÁØ´Ù.
 * obj1Àº °ªÀÌ ÀÖ°í, obj2´Â °ªÀÌ ¾øÀ¸¸é -1,
 * obj1Àº °ªÀÌ ¾ø°í, obj2´Â °ªÀÌ ÀÖÀ¸¸é 1 ÀÌ´Ù.
 *
 * @param obj1 TextÇü ÀÔ·ÂÆû °´Ã¼
 * @param obj2 TextÇü ÀÔ·ÂÆû °´Ã¼
 */
function compareDateObj(obj1, obj2) {
	return compareDate(obj1.value, obj2.value);
}


/**
 * TextÇü ÀÔ·ÂÆû¿¡ ÀÔ·ÂµÈ ½Ã°£(½Ã+ºÐ)ÀÌ À¯È¿ÇÑÁö
 * Ã¼Å©ÇÏ¿© À¯È¿ÇÏ¸é hh24:miÀÇ ÇüÅÂ·Î º¯È¯ÇÏ¿©
 * returnÇÏ°í, À¯È¿ÇÏÁö ¾ÊÀ¸¸é ¿¡·¯¸Þ¼¼Áö¸¦
 * º¸¿©ÁÜ(½Ã°£ ÀÔ·ÂÇÊµåÀÇ onblur event¿¡ »ç¿ë)
 */
function checkTimeObj(obj) {
	var timeStr = obj.value;

	var valid = true;

	// ºó ¹®ÀÚ¿­ÀÌ¸é Á¡°ËÇÏÁö ¾Ê´Â´Ù.
	if ( trim(timeStr) != "" ) {
		valid = checkTime(timeStr);

		if ( valid ) {
			var hourStr   = timeStr.substring(0, 2);
			var minuteStr = timeStr.substring(2);

			obj.value = hourStr + ":" + minuteStr;
		}
		else {
			obj.focus();
		}
	}

	return valid;
}


/**
 * TextÇü ÀÔ·ÂÆû¿¡ ÀÔ·ÂµÈ ½Ã°£(½Ã+ºÐ)ÀÌ À¯È¿ÇÑÁö
 * Ã¼Å©ÇÏ¿© À¯È¿ÇÏ¸é hh24:miÀÇ ÇüÅÂ·Î º¯È¯ÇÏ¿©
 * returnÇÏ°í, À¯È¿ÇÏÁö ¾ÊÀ¸¸é ¿¡·¯¸Þ¼¼Áö¸¦
 * º¸¿©ÁÜ(½Ã°£ ÀÔ·ÂÇÊµåÀÇ onblur event¿¡ »ç¿ë)
 *
 * @param timeStr  HHmm Çü½ÄÀÇ ½Ã°£Çü ¹®ÀÚ¿­
 */
function checkTime(timeStr) {
	if ( trim(timeStr) == "" ) return true;

	timeStr = removeChar(timeStr, ':');

	// ±æÀÌ°¡ 4ÀÎÁö Á¡°ËÇÑ´Ù.
	if ( timeStr.length != 4 ) {
		alert("Çü½ÄÀÌ ¸ÂÁö ¾Ê½À´Ï´Ù. \"HHmm\" ÇüÅÂÀÇ ¼ýÀÚ·Î ÀÔ·ÂÇØ ÁÖ½Ê½Ã¿À.");
		return false;
	}

	// ¼ýÀÚ·Î¸¸ ±¸¼ºµÇ¾ú´ÂÁö Á¡°ËÇÑ´Ù.
	if ( isNaN(timeStr) ) {
		alert("¹®ÀÚ¿­Àº ÀÔ·ÂÇÒ ¼ö ¾ø½À´Ï´Ù. \"HHmm\" ÇüÅÂÀÇ ¼ýÀÚ·Î ÀÔ·ÂÇØ ÁÖ½Ê½Ã¿À.");
		return false;
	}

	// ½Ã°£ 2ÀÚ¸®, ºÐ 2ÀÚ¸®·Î ºÐ¸®ÇÑ´Ù.
	var hourStr   = timeStr.substring(0, 2);
	var minuteStr = timeStr.substring(2);

	if ( hourStr < 0 || hourStr > 23 ) {
		alert("½Ã°£ °ªÀº 00¿¡¼­ 23 »çÀÌÀÇ °ªÀÌ¾î¾ß ÇÕ´Ï´Ù.");
		return false;
	}


	if ( minuteStr < 0 || minuteStr > 59 ) {
		alert("ºÐ °ªÀº 00¿¡¼­ 59 »çÀÌÀÇ °ªÀÌ¾î¾ß ÇÕ´Ï´Ù.");
		return false;
	}

	return true;
}


/**
 * ´­¸° Å°°¡ Control KeyÀÌ¸é true, ¾Æ´Ï¸é false
 */
function isControlKey() {
	var key = event.keyCode;

	return (
		   key ==   8  // <BS>
		|| key ==   9  // <Tab>
		|| key ==  13  // <Enter>
		|| key ==  35  // <End>
		|| key ==  36  // <Home>
		|| key ==  37  // <¡ç>
		|| key ==  39  // <¡æ>
		|| key ==  46  // <Del>
		|| key == 144  // <NumLock>
	);
}


/**
 * ´­¸°Å°°¡ ¼ýÀÚÅ°¸é true, ¾Æ´Ï¸é false
 */
function isDigitKey() {
	var key = event.keyCode;

	return ( key >= 48 && key <= 57 ) || ( key >= 96 && key <= 105 );
}


/**
 * ´­¸°Å°°¡ Æ¯¼ö¹®ÀÚÅ°ÀÌ¸é true, ¾Æ´Ï¸é false;
 */
function isSpecialCharKey() {
}

/**
 * Á¤¼ö¸¸ ÀÔ·Â¹Þ°íÀÚ ÇÏ´Â °æ¿ìÀÇ onKeyDownÀÌº¥Æ® ÇÚµé·¯
 */
function limitAsInt(limit) {
	if ( isControlKey() ) {
		event.returnValue = true;
		return ;
	}

	var key = event.keyCode;
	var str = event.srcElement.value;

	var intLengthValid = true;

	// Á¤¼ö ÀÚ¸®¼ö°¡ Ã¡´ÂÁö °Ë»çÇÏ¿© Ã¡À¸¸é
	// ´õ ÀÌ»ó ÀÔ·ÂÇÒ ¼ö ¾ø°Ô ÇÑ´Ù. ÀÌ ¶§ ÀÚ¸´¼ö¿¡¼­
	// ¾Õ¿¡ ¾çÀ½ ±âÈ£(+/-)´Â Á¦ÇÑ´Ù.
	if ( limit != undefined ) {
		var intLength = removeChar(str, ',').length;
		if ( str.charAt(0) == '-' || str.charAt(0) == '+' ) {
			intLength--;
		}

		intLengthValid = intLength < limit;
	}

	event.returnValue = intLengthValid && (
		isDigitKey()
		|| key == 189 || key == 109 // <->
	);
}


/**
 * ¾çÀÇ Á¤¼ö¸¸ ÀÔ·Â¹Þ°íÀÚ ÇÏ´Â °æ¿ìÀÇ onKeyDownÀÌº¥Æ® ÇÚµé·¯
 */
function limitAsPlusInt(limit) {
	if ( isControlKey() ) {
		event.returnValue = true;
		return ;
	}

	var key = event.keyCode;
	var str = event.srcElement.value;

	var intLengthValid = true;

	// Á¤¼ö ÀÚ¸®¼ö°¡ Ã¡´ÂÁö °Ë»çÇÏ¿© Ã¡À¸¸é
	// ´õ ÀÌ»ó ÀÔ·ÂÇÒ ¼ö ¾ø°Ô ÇÑ´Ù.
	if ( limit != undefined ) {
		intLengthValid = removeChar(str, ',').length < limit;
	}

	event.returnValue = intLengthValid && isDigitKey();
}


/**
 * ½Ç¼ö¸¦ ÀÔ·Â¹Þ°íÀÚ ÇÏ´Â °æ¿ìÀÇ onKeyDownÀÌº¥Æ® ÇÚµé·¯
 */
function limitAsFloat(limit) {
	if ( isControlKey() ) {
		event.returnValue = true;
		return ;
	}

	var str = event.srcElement.value;
	var key = event.keyCode;

	var dotNoValid = true;

	// ¼Ò¼ýÁ¡ ÀÚ¸®¼ö°¡ Ã¡´ÂÁö °Ë»çÇÏ¿© Ã¡À¸¸é
	// ´õ ÀÌ»ó ÀÔ·ÂÇÒ ¼ö ¾ø°Ô ÇÑ´Ù.
	if ( limit != undefined ) {
		var dotIndex = str.lastIndexOf('.');

		if ( dotIndex > -1 ) {
			dotNoValid = str.length - dotIndex - 1 < limit;
		}
	}

	var dotValid = true;

	// ¼Ò¼ýÁ¡ÀÌ ÀÌ¹Ì ÂïÇûÀ¸¸é ¼Ò¼ýÁ¡Àº ´õ ÂïÁö ¸øÇÏ°Ô ÇÑ´Ù.
	if ( str.indexOf('.') > -1 && ( key == 190 || key == 229 ) ) {
		dotValid = false;
	}

	event.returnValue = dotValid && dotNoValid && (
		isDigitKey()
		|| key == 189 || key == 109 // <->
		|| key == 190 || key == 229 || key == 110 // <.>
	);
}


/**
 * ¾çÀÇ ½Ç¼ö¸¦ ÀÔ·Â¹Þ°íÀÚ ÇÏ´Â °æ¿ìÀÇ onKeyDownÀÌº¥Æ®
 */
function limitAsPlusFloat(limit) {
	if ( isControlKey() ) {
		event.returnValue = true;
		return ;
	}

	var str = event.srcElement.value;
	var key = event.keyCode;

	var dotNoValid = true;

	// ¼Ò¼ýÁ¡ ÀÚ¸®¼ö°¡ Ã¡´ÂÁö °Ë»çÇÏ¿© Ã¡À¸¸é
	// ´õ ÀÌ»ó ÀÔ·ÂÇÒ ¼ö ¾ø°Ô ÇÑ´Ù.
	if ( limit != undefined ) {
		var dotIndex = str.lastIndexOf('.');

		if ( dotIndex > -1 ) {
			dotNoValid = str.length - dotIndex - 1 < limit;
		}
	}

	var dotValid = true;

	// ¼Ò¼ýÁ¡ÀÌ ÀÌ¹Ì ÂïÇûÀ¸¸é ¼Ò¼ýÁ¡Àº ´õ ÂïÁö ¸øÇÏ°Ô ÇÑ´Ù.
	if ( str.indexOf('.') > -1 && ( key == 190 || key == 229 ) ) {
		dotValid = false;
	}

	event.returnValue = dotValid && dotNoValid && (
		 isDigitKey()
		|| key == 190 || key == 229 || key == 110 // <.>
	);
}

/**
 * ÇÑ±Û°ú ½ºÆäÀÌ½º Key¸¸ Çã¿ëÇÑ´Ù.
 */
function limitAsHangul() {
	if ( isControlKey() ) {
		event.returnValue = true;
		return ;
	}

	var key = event.keyCode;

	event.returnValue = (
		key == 32      // ½ºÆäÀÌ½ºÅ°
		|| key == 229  // ÇÑ±ÛÅ°. ±Ùµ¥ ¿Ö ÇÑ±ÛÀº ¹«Á¶°Ç 229ÀÏ±î?
	);
}


/**
 * ÇÑ±Û°ú ¼ýÀÚ, ½ºÆäÀÌ½º Key¸¸ Çã¿ëÇÑ´Ù.
 */
function limitAsHangulAndNo() {
	if ( isControlKey() ) {
		event.returnValue = true;
		return ;
	}

	var key = event.keyCode;

	event.returnValue = isDigitKey() || (
		key == 32      // ½ºÆäÀÌ½ºÅ°
		|| key == 229  // ÇÑ±ÛÅ°. ±Ùµ¥ ¿Ö ÇÑ±ÛÀº ¹«Á¶°Ç 229ÀÏ±î?
	);
}


/**
 * TextÇü ÀÔ·ÂÆûÀÇ °ªÀÌ À¯È¿ÇÑ ¼ýÀÚ°ªÀÎÁö Á¡°ËÇÏ¿©
 * À¯È¿ÇÑ ¼ýÀÚÀÌ¸é true¸¦, ±×·¸Áö ¾ÊÀ¸¸é false¸¦ µ¹·ÁÁØ´Ù.
 * °ªÀÌ ºó ¹®ÀÚ¿­ÀÌ¸é false¸¦ µ¹·ÁÁÖ´Â °Í¿¡ ÁÖÀÇÇÑ´Ù.
 *
 * @param obj TextÇü ÀÔ·ÂÆû °´Ã¼
 */
function checkNumberObj(obj) {
	return checkNumber(obj.value);
}


/**
 * ºñÃà ¾÷¹«¿¡¼­´Â ¼ýÀÚ¿¡ 3ÀÚ¸®¸¶´Ù ÄÄ¸¶°¡ µé¾î°£
 * ¼öÄ¡°ªÀ» »ç¿ëÇÑ´Ù. ÀÌ¸¦ °í·ÁÇÑ ¼ýÀÚ¿©ºÎ¸¦ Á¡°ËÇÏ¿©
 * À¯È¿ÇÑ ¼ýÀÚÀÌ¸é true¸¦, ±×·¸Áö ¾ÊÀ¸¸é false¸¦
 * µ¹·ÁÁØ´Ù. °ªÀÌ ºó ¹®ÀÚ¿­ÀÌ¸é false¸¦ µ¹·ÁÁÖ¹Ç·Î
 * ºó°ªÀÌ ¾Æ´ÑÁö¸¦ Á¡°ËÇÏ¿© »ç¿ëÇÏ´Â °Í¿¡ ÁÖÀÇÇÑ´Ù.
 *
 * @param  str  °Ë»çÇÒ ¹®ÀÚ¿­
 */
function checkNumber(str) {
	return ! isNaN( removeChar(str, ',') );
}


/**
 * ÁÖ¾îÁø ¹®ÀÚ¿­ÀÇ byte ¼ö°¡ lengthÀÇ °ª°ú °°ÀºÁö¸¦
 * °Ë»çÇÏ¿© °°À¸¸é true¸¦, ´Ù¸£¸é false¸¦ µ¹·ÁÁØ´Ù.
 *
 * @param str    ´ë»ó ¹®ÀÚ¿­
 * @param length ºñ±³ byte ¼ö
 */
function checkLengthEQ(str, length) {
	return countByte(str) ==  length;
}


/**
 * TextÇü ÀÔ·ÂÆû °ªÀÇ byte ¼ö°¡ lengthÀÇ °ª°ú °°ÀºÁö¸¦
 * °Ë»çÇÏ¿© °°À¸¸é true¸¦, ´Ù¸£¸é false¸¦ µ¹·ÁÁØ´Ù.
 *
 * @param obj    TextÇü ÀÔ·ÂÆû °´Ã¼
 * @param length ºñ±³ byte ¼ö
 */
function checkLengthEQObj(obj, length) {
	return checkLengthEQ(obj.value, length);
}


/**
 * ÁÖ¾îÁø ¹®ÀÚ¿­ÀÇ byte ¼ö°¡ lengthÀÇ °ª°ú °°ÀºÁö¸¦
 * °Ë»çÇÏ¿© °°À¸¸é true¸¦, ´Ù¸£¸é false¸¦ µ¹·ÁÁØ´Ù.
 *
 * @param str    ´ë»ó ¹®ÀÚ¿­
 * @param length ºñ±³ byte ¼ö
 */
function checkLengthGT(str, length) {
	return countByte(str) > length;
}


/**
 * TextÇü ÀÔ·ÂÆû °ªÀÇ byte ¼ö°¡ lengthÀÇ °ª°ú °°ÀºÁö¸¦
 * °Ë»çÇÏ¿© °°À¸¸é true¸¦, ´Ù¸£¸é false¸¦ µ¹·ÁÁØ´Ù.
 *
 * @param obj    TextÇü ÀÔ·ÂÆû °´Ã¼
 * @param length ºñ±³ byte ¼ö
 * @param fieldName Ç×¸ñ¸í
 */
function checkLengthGTObj(obj, length, fieldName) {
	if ( fieldName == undefined ) {
		fieldName = "";
	}
	else {
		fieldName += "ÀÇ ";
	}

	var valid = checkLengthGT(obj.value, length);

	if ( valid ) {
		alert(fieldName + "ÀÔ·Â°ªÀÌ ÇÑµµ¸¦ ÃÊ°úÇÏ¿´½À´Ï´Ù.\n\n¿µ¹® " + length + "ÀÚ, ÇÑ±Û " + (length / 2) + "ÀÚ±îÁö °¡´ÉÇÕ´Ï´Ù.");
		obj.focus();
	}

	return valid;
}


/**
 * ÁÖ¾îÁø ¹®ÀÚ¿­ÀÇ byte ¼ö°¡ lengthÀÇ °ª°ú °°ÀºÁö¸¦
 * °Ë»çÇÏ¿© °°À¸¸é true¸¦, ´Ù¸£¸é false¸¦ µ¹·ÁÁØ´Ù.
 *
 * @param str    ´ë»ó ¹®ÀÚ¿­
 * @param length ºñ±³ byte ¼ö
 */
function checkLengthLT(str, length) {
	return countByte(str) < length;
}


/**
 * TextÇü ÀÔ·ÂÆû °ªÀÇ byte ¼ö°¡ lengthÀÇ °ª°ú °°ÀºÁö¸¦
 * °Ë»çÇÏ¿© °°À¸¸é true¸¦, ´Ù¸£¸é false¸¦ µ¹·ÁÁØ´Ù.
 *
 * @param obj    TextÇü ÀÔ·ÂÆû °´Ã¼
 * @param length ºñ±³ byte ¼ö
 */
function checkLengthLTObj(obj, length) {
	return checkLengthLT(obj.value, length);
}


/**
 * ÁÖ¾îÁø ¹®ÀÚ¿­ÀÇ byte ¼ö°¡ lengthÀÇ °ª°ú °°ÀºÁö¸¦
 * °Ë»çÇÏ¿© °°À¸¸é true¸¦, ´Ù¸£¸é false¸¦ µ¹·ÁÁØ´Ù.
 *
 * @param str    ´ë»ó ¹®ÀÚ¿­
 * @param length ºñ±³ byte ¼ö
 */
function checkLengthGE(str, length) {
	return countByte(str) >= length;
}


/**
 * TextÇü ÀÔ·ÂÆû °ªÀÇ byte ¼ö°¡ lengthÀÇ °ª°ú °°ÀºÁö¸¦
 * °Ë»çÇÏ¿© °°À¸¸é true¸¦, ´Ù¸£¸é false¸¦ µ¹·ÁÁØ´Ù.
 *
 * @param obj    TextÇü ÀÔ·ÂÆû °´Ã¼
 * @param length ºñ±³ byte ¼ö
 */
function checkLengthGEObj(obj, length) {
	var valid = checkLengthGE(obj.value, length);

	obj.value = insertComma(parseFloat(obj.value));

	return valid;
}


/**
 * ÁÖ¾îÁø ¹®ÀÚ¿­ÀÇ byte ¼ö°¡ lengthÀÇ °ª°ú °°ÀºÁö¸¦
 * °Ë»çÇÏ¿© °°À¸¸é true¸¦, ´Ù¸£¸é false¸¦ µ¹·ÁÁØ´Ù.
 *
 * @param str    ´ë»ó ¹®ÀÚ¿­
 * @param length ºñ±³ byte ¼ö
 */
function checkLengthLE(str, length) {
	return countByte(str) <= length;
}


/**
 * ÁÖ¾îÁø ¹®ÀÚ¿­ÀÇ byte ¼ö°¡ lengthÀÇ °ª°ú °°ÀºÁö¸¦
 * °Ë»çÇÏ¿© °°À¸¸é true¸¦, ´Ù¸£¸é false¸¦ µ¹·ÁÁØ´Ù.
 *
 * @param obj    TextÇü ÀÔ·ÂÆû °´Ã¼
 * @param length ºñ±³ byte ¼ö
 */
function checkLengthLEObj(obj, length, fieldName) {
	if ( fieldName == undefined ) {
		fieldName = "";
	}
	else {
		fieldName += "ÀÇ ";
	}

	var valid = checkLengthLE(obj.value, length);

	if ( ! valid ) {
		alert(fieldName + "ÀÔ·Â°ªÀÌ ÇÑµµ¸¦ ÃÊ°úÇÏ¿´½À´Ï´Ù.\n\n¿µ¹® " + length + "ÀÚ, ÇÑ±Û " + (length / 2) + "ÀÚ±îÁö °¡´ÉÇÕ´Ï´Ù.");
		obj.focus();
	}

	return valid;
}


/**
 * ¼ýÀÚÀÇ Á¤¼ö ÀÚ¸´¼ö¿Í ¼Ò¼ö ÀÚ¸´¼ö¸¦ °Ë»çÇÏ¿© °¢ ÀÚ¸´¼ö°¡
 * ÁÖ¾îÁø ÀÚ¸®¼ö ÀÌÇÏÀÎÁö °Ë»çÇÏ¿©, µÑ ´Ù ÀÚ¸´¼ö ÀÌÇÏÀÌ¸é 0À»,
 * Á¤¼öºÎ ÀÚ¸´¼ö¸¸ ÀÌ»ó ÀÖÀ¸¸é 1À», ¼Ò¼öºÎ ÀÚ¸´¼ö¸¸ ÀÌ»óÀÖÀ¸¸é 2¸¦
 * µÑ ¸ðµÎ ÀÌ»ó ÀÖÀ¸¸é 3À» µ¹·Á ÁØ´Ù. ¼Ò¼öºÎÀÇ °æ¿ì °ªÀÌ ³Ñ¾î¿ÀÁö
 * ¾ÊÀ¸¸é(undefinedÀÌ¸é) ¹«Á¶°Ç À¯È¿ÇÑ °ÍÀ¸·Î ÇÑ´Ù.
 *
 * @date   2004-01-15
 * @param  no          °Ë»çÇÒ ¼ýÀÚ
 * @param  intFigure   Á¤¼öºÎ À¯È¿ ÀÚ¸´¼ö
 * @param  floatFigure ¼Ò¼öºÎ À¯È¿ ÀÚ¸´¼ö
 */
function checkNoFigureLE(no, intFigure, floatFigure) {
	// ÄÄ¸¶¸¦ Á¦°ÅÇÏ°í Á¤¼öºÎ¿Í ¼Ò¼öºÎ·Î ³ª´«´Ù.
	var no = removeChar(no, ',');

	var dotIndex = no.indexOf('.');

	var intPart   = ""; // Á¤¼öºÎ
	var floatPart = ""; // ¼Ò¼öÁ¡À» Æ÷ÇÔÇÑ ¼Ò¼öºÎ

	if ( dotIndex == -1 ) {
		intPart = no;
	}
	else {
		intPart   = no.substring(0, dotIndex);
		floatPart = no.substring(dotIndex);
	}

	 // Á¤¼öºÎ À¯È¿ ¿©ºÎ
	var intPartValid   = intPart.length <= intFigure;

	// ¼Ò¼öºÎ À¯È¿¿©ºÎ
	var floatPartValid = floatFigure == undefined || trim(floatFigure) == "" || ( floatPart.length - 1 <= floatFigure);

	//alert(no + ", " + intPart + ", " + floatPart + ", " + intPartValid + ", " + floatPartValid);

	return ( intPartValid ? 0 : 1 ) + ( floatPartValid ? 0 : 2 );
}


/**
 * TextÇü ÀÔ·ÂÆû °ªÀÇ Á¤¼ö ÀÚ¸´¼ö¿Í ¼Ò¼ö ÀÚ¸´¼ö¸¦ °Ë»çÇÏ¿© °¢ ÀÚ¸´¼ö°¡
 * ÁÖ¾îÁø ÀÚ¸®¼ö ÀÌÇÏÀÎÁö °Ë»çÇÏ¿©, µÑ ´Ù ÀÚ¸´¼ö ÀÌÇÏÀÌ¸é 0À»,
 * Á¤¼öºÎ ÀÚ¸´¼ö¸¸ ÀÌ»ó ÀÖÀ¸¸é 1À», ¼Ò¼öºÎ ÀÚ¸´¼ö¸¸ ÀÌ»óÀÖÀ¸¸é 2¸¦
 * µÑ ¸ðµÎ ÀÌ»ó ÀÖÀ¸¸é 3À» µ¹·Á ÁØ´Ù. ¼Ò¼öºÎÀÇ °æ¿ì °ªÀÌ ³Ñ¾î¿ÀÁö
 * ¾ÊÀ¸¸é(undefinedÀÌ¸é) ¹«Á¶°Ç À¯È¿ÇÑ °ÍÀ¸·Î ÇÑ´Ù.
 *
 * @date  2004-01-15
 * @param  obj         TextÇü ÀÔ·ÂÆû °´Ã¼
 * @param  intFigure   Á¤¼öºÎ À¯È¿ ÀÚ¸´¼ö
 * @param  floatFigure ¼Ò¼öºÎ À¯È¿ ÀÚ¸´¼ö
 */
function checkNoFigureLEObj(obj, intFigure, floatFigure) {
	return checkNoFigureLE(obj.value, intFigure, floatFigure);
}


/* ÀüÈ­¹øÈ£¿ë Áö¿ª¹øÈ£ ¸ñ·Ï */
var tpLocalNoList = [
	"02" ,
	"031", "032", "033",
	"041", "042", "043",
	"051", "052", "053", "054", "055",
	"061", "062", "063", "064"
];


/**
 * TextÇü ÀÔ·Â ÆûÀÇ °ªÀÌ ¿Ã¹Ù¸¥ ÀüÈ­¹øÈ£(ÇÚµåÆù ¹øÈ£°¡ ¾Æ´Ñ)ÀÎÁö È®ÀÎÇÏ¿©
 * ¿Ã¹Ù¸£¸é true¸¦, ±×·¸Áö ¾ÊÀ¸¸é ÀûÀýÇÑ ¸Þ¼¼Áö¸¦ »Ñ·ÁÁÖ°í false¸¦ µ¹·Á ÁØ´Ù.
 * ÀüÈ­¹øÈ£ÀÇ °¢ ¿ä¼Ò´Â ´ë½¬(-)·Î ±¸º°µÈ °ÍÀ¸·Î °¡Á¤ÇÑ´Ù.
 *
 * @date 2004-02-02
 * @param obj  ÀüÈ­¹øÈ£¸¦ ÀÔ·Â ¹Þ´Â TextÇü ÀÔ·ÂÆû
 */
function checkTelNoObj(obj) {
	return checkTelNo(obj.value);
}


/**
 * ÁÖ¾îÁø °ªÀÌ ¿Ã¹Ù¸¥ ÀüÈ­¹øÈ£(ÇÚµåÆù ¹øÈ£°¡ ¾Æ´Ñ)ÀÎÁö È®ÀÎÇÏ¿©
 * ¿Ã¹Ù¸£¸é true¸¦, ±×·¸Áö ¾ÊÀ¸¸é ÀûÀýÇÑ ¸Þ¼¼Áö¸¦ »Ñ·ÁÁÖ°í false¸¦ µ¹·Á ÁØ´Ù.
 * ÀüÈ­¹øÈ£ÀÇ °¢ ¿ä¼Ò´Â ´ë½¬(-)·Î ±¸º°µÈ °ÍÀ¸·Î °¡Á¤ÇÑ´Ù.
 *
 * @date 2004-02-02
 * @param phoneNo  °Ë»çÇÏ·Á´Â ÀüÈ­¹øÈ£ °ª
 */
function checkTelNo(phoneNo) {
	// ºó°ªÀÌ¸é °Ë»çÇÏÁö ¾Ê´Â´Ù.
	if ( trim(phoneNo) == "" ) {
		return true;
	}

	if ( isNaN(removeChar(phoneNo, '-'))) {
		alert("ÀüÈ­¹øÈ£´Â ´ë½¬(-)¿Í ¼ýÀÚ¸¸ ÀÌ¿ëÇØ¼­ ÀÔ·ÂÇØ¾ß ÇÕ´Ï´Ù.");
		return false;
	}

	// °¢ ¿ä¼Ò¸¦ ÀÚ¸¥´Ù.
	var tempArray = phoneNo.split("-");

	if ( tempArray.length != 3 ) {
		alert("ÀüÈ­¹øÈ£ÀÇ Çü½Ä([Áö¿ª¹øÈ£ 2,3ÀÚ¸®]-[±¹¹ø3,4ÀÚ¸®]-[¹øÈ£4ÀÚ¸®])¿¡ ¸ÂÁö ¾Ê´Â °ªÀÌ ÀÔ·ÂµÇ¾ú½À´Ï´Ù.");
		return false;
	}

	var localNo = tempArray[0]; // Áö¿ª¹øÈ£
	var areaNo  = tempArray[1]; // ±¹¹ø
	var restNo  = tempArray[2]; // ±âÅ¸ ¹øÈ£

	// À¯È¿ÇÑ Áö¿ª¹øÈ£°¡ ¾Æ´Ï¸é ¿À·ùÀÌ´Ù.
	var isExistsLocalNo = false;
	for ( var i = 0; i < tpLocalNoList.length; i++) {
		if ( localNo == tpLocalNoList[i] ) {
			isExistsLocalNo = true;
			break;
		}
	}

	if ( ! isExistsLocalNo ) {
		alert(localNo + "Àº(´Â) ÇöÀç »ç¿ëÇÏÁö ¾Ê´Â Áö¿ª¹øÈ£ÀÔ´Ï´Ù.");
		return false;
	}

	// ±¹¹øÈ£°¡ 3ÀÚ¸®¿¡¼­ 4ÀÚ¸®ÀÎÁö °Ë»çÇÑ´Ù.
	if ( areaNo.length != 3 && areaNo.length != 4 ) {
		alert("±¹¹øÈ£´Â 3ÀÚ¸®³ª 4ÀÚ¸®ÀÌ¾î¾ß ÇÕ´Ï´Ù.");
		return false;
	}

	// ³ª¸ÓÁö ¹øÈ£¸¦ °Ë»çÇÑ´Ù.
	if ( restNo.length != 4 ) {
		alert("¸Ç µÚ ¹øÈ£´Â 4ÀÚ¸®¸¦ ÀÔ·ÂÇØ¾ß ÇÕ´Ï´Ù.");
		return false;
	}

	return true;
}


/* ÇÚµåÆù¿ë Áö¿ª¹øÈ£ ¸ñ·Ï */
var hpLocalNoList = [
	"010", "011", "016", "017", "018", "019"
];

/**
 * TextÇü ÀÔ·Â ÆûÀÇ °ªÀÌ ¿Ã¹Ù¸¥ ÇÚµåÆù(ÇÚµåÆù ¹øÈ£°¡ ¾Æ´Ñ)ÀÎÁö È®ÀÎÇÏ¿©
 * ¿Ã¹Ù¸£¸é true¸¦, ±×·¸Áö ¾ÊÀ¸¸é ÀûÀýÇÑ ¸Þ¼¼Áö¸¦ »Ñ·ÁÁÖ°í false¸¦ µ¹·Á ÁØ´Ù.
 * ÇÚµåÆù ¹øÈ£ÀÇ °¢ ¿ä¼Ò´Â ´ë½¬(-)·Î ±¸º°µÈ °ÍÀ¸·Î °¡Á¤ÇÑ´Ù.
 *
 * @date 2004-02-02
 * @param obj  ÇÚµåÆù ¹øÈ£¸¦ ÀÔ·Â ¹Þ´Â TextÇü ÀÔ·ÂÆû
 */
function checkHpNoObj(obj) {
	return checkHpNo(obj.value);
}


/**
 * ÁÖ¾îÁø °ªÀÌ ¿Ã¹Ù¸¥ ÇÚµåÆù ¹øÈ£(ÀÏ¹Ý ÀüÈ­¹øÈ£°¡ ¾Æ´Ñ)ÀÎÁö È®ÀÎÇÏ¿©
 * ¿Ã¹Ù¸£¸é true¸¦, ±×·¸Áö ¾ÊÀ¸¸é ÀûÀýÇÑ ¸Þ¼¼Áö¸¦ »Ñ·ÁÁÖ°í false¸¦ µ¹·Á ÁØ´Ù.
 * ÇÚµåÆù ¹øÈ£ÀÇ °¢ ¿ä¼Ò´Â ´ë½¬(-)·Î ±¸º°µÈ °ÍÀ¸·Î °¡Á¤ÇÑ´Ù.
 *
 * @date 2004-02-02
 * @param phoneNo  °Ë»çÇÏ·Á´Â ÇÚµåÆù ¹øÈ£°ª
 */
function checkHpNo(phoneNo) {
	// ºó°ªÀÌ¸é °Ë»çÇÏÁö ¾Ê´Â´Ù.
	if ( trim(phoneNo) == "" ) {
		return true;
	}

	if ( isNaN(removeChar(phoneNo, '-'))) {
		alert("ÇÚµåÆù ¹øÈ£´Â ´ë½¬(-)¿Í ¼ýÀÚ¸¸ ÀÌ¿ëÇØ¼­ ÀÔ·ÂÇØ¾ß ÇÕ´Ï´Ù.");
		return false;
	}

	// °¢ ¿ä¼Ò¸¦ ÀÚ¸¥´Ù.
	var tempArray = phoneNo.split("-");

	if ( tempArray.length != 3 ) {
		alert("ÇÚµåÆù ¹øÈ£ÀÇ Çü½Ä([Áö¿ª¹øÈ£3ÀÚ¸®]-[±¹¹ø3,4ÀÚ¸®]-[¹øÈ£4ÀÚ¸®])¿¡ ¸ÂÁö ¾Ê´Â °ªÀÌ ÀÔ·ÂµÇ¾ú½À´Ï´Ù.");
		return false;
	}

	var localNo = tempArray[0]; // Áö¿ª¹øÈ£
	var areaNo  = tempArray[1]; // ±¹¹ø
	var restNo  = tempArray[2]; // ±âÅ¸ ¹øÈ£

	// À¯È¿ÇÑ Áö¿ª¹øÈ£°¡ ¾Æ´Ï¸é ¿À·ùÀÌ´Ù.
	var isExistsLocalNo = false;
	for ( var i = 0; i < hpLocalNoList.length; i++) {
		if ( localNo == hpLocalNoList[i] ) {
			isExistsLocalNo = true;
			break;
		}
	}

	if ( ! isExistsLocalNo ) {
		alert(localNo + "Àº(´Â) ÇöÀç »ç¿ëÇÏÁö ¾Ê´Â Áö¿ª¹øÈ£ÀÔ´Ï´Ù.");
		return false;
	}

	// ±¹¹øÈ£°¡ 3ÀÚ¸®¿¡¼­ 4ÀÚ¸®ÀÎÁö °Ë»çÇÑ´Ù.
	if ( areaNo.length != 3 && areaNo.length != 4 ) {
		alert("±¹¹øÈ£´Â 3ÀÚ¸®³ª 4ÀÚ¸®ÀÌ¾î¾ß ÇÕ´Ï´Ù.");
		return false;
	}

	// ³ª¸ÓÁö ¹øÈ£¸¦ °Ë»çÇÑ´Ù.
	if ( restNo.length != 4 ) {
		alert("¸Ç µÚ ¹øÈ£´Â 4ÀÚ¸®¸¦ ÀÔ·ÂÇØ¾ß ÇÕ´Ï´Ù.");
		return false;
	}

	return true;
}


/**
 * TextÇü ÀÔ·ÂÆûÀÇ °ªÀÌ À¯È¿ÇÑ ÁÖ¹Îµî·Ï¹øÈ£ ÀÎÁö¸¦
 * Á¡°ËÇÏ¿© À¯È¿ÇÏ¸é true¸¦ µ¹·ÁÁÖ°í À¯È¿ÇÏÁö ¾ÊÀ¸¸é
 * ÀûÀýÇÑ ¸Þ¼¼Áö¸¦ º¸¿©ÁØ ´ÙÀ½ false¸¦ µ¹·ÁÁØ´Ù.
 * ÆÄ¶ó¹ÌÅÍÀÎ obj2°¡ ³Ñ¾î¿ÀÁö ¾ÊÀ¸¸é obj1¿¡ ÁÖ¹Îµî·Ï¹øÈ£
 * ÀüÃ¼°¡ ´ã°Ü ÀÖ´Â °ÍÀ¸·Î °¡Á¤ÇÏ¸ç, obj2°¡ ³Ñ¾î¿À¸é
 * ¾Õ 6ÀÚ¸®´Â obj1¿¡ µÚ 7ÀÚ¸®´Â obj2¿¡ ´ã°Ü ÀÖ´Â °ÍÀ¸·Î
 * °¡Á¤ÇÑ´Ù.
 *
 * @ÀÛ¼ºÀÏ  2004-02-05
 * @param  obj1  ÀüÃ¼ ÁÖ¹Îµî·Ï¹øÈ£ È¤Àº ÁÖ¹Îµî·Ï¹øÈ£ 
 *               ¾Õ 6ÀÚ¸®¸¦ ´ã°í ÀÖ´Â TextÇü ÀÔ·ÂÆû °´Ã¼
 * @param  obj2  ÁÖ¹Îµî·Ï¹øÈ£ µÚ 7ÀÚ¸®¸¦ ´ã°í ÀÖ´Â TextÇü ÀÔ·ÂÆû °´Ã¼
 */
function checkSSNObj(obj1, obj2) {
	var valid = true;

	if ( obj2 == undefined ) {
		valid = checkSSN(obj1.value);
	}
	else {
		valid = checkSSN(obj1.value, obj2.value);
	}

	return valid;
}

/**
 * ÁÖ¹Îµî·Ï¹øÈ£ À¯È¿¼º ¿©ºÎ¸¦ Á¡°ËÇÏ¿© À¯È¿ÇÏ¸é true¸¦
 * À¯È¿ÇÏÁö ¾ÊÀ¸¸é ÀûÀýÇÑ ¸Þ¼¼Áö¸¦ º¸¿©ÁÖ°í false¸¦ µ¹·ÁÁØ´Ù.
 * ÆÄ¶ó¹ÌÅÍÀÇ °¹¼ö¿¡ µû¶ó ±× ÀÇ¹Ì°¡ Á¶±Ý ´Þ¶óÁø´Ù.
 * ssn2°¡ Á¤ÀÇµÇÁö ¾Ê¾ÒÀ¸¸é, ´ë½¬(-)ÀÇ ¿©ºÎ¿¡
 * »ó°ü¾øÀÌ ssn1¿¡ ÀüÃ¼ ÁÖ¹Îµî·Ï¹øÈ£°¡ ´ã°ÜÀÖ´Â °ÍÀ¸·Î
 * °¡Á¤ÇÏ°í, ssn2°¡ Á¤ÀÇµÇ¾î ÀÖÀ¸¸é ssn1¿¡ ¾Õ 6ÀÚ¸®
 * ssn2¿¡ µÚ 7ÀÚ¸®·Î ³Ñ¾î¿À´Â °ÍÀ¸·Î °¡Á¤ÇÑ´Ù.
 *
 * @ÀÛ¼ºÀÏ  2004-02-05
 * @param  ssn1  ÀüÃ¼ ÁÖ¹Îµî·Ï¹øÈ£ È¤Àº ÁÖ¹Îµî·Ï¹øÈ£ ¾Õ 6ÀÚ¸®
 * @param  ssn2  ÁÖ¹Îµî·Ï¹øÈ£ µÚ 7ÀÚ¸®
 */
function checkSSN(ssn1, ssn2) {
	var ssn = "";
	if ( ssn2 == undefined ) {
		ssn = ssn1;
	}
	else {
		ssn = ssn1 + "-" + ssn2;
	}

	// ÁÖ¹Î¹øÈ£ÀÇ ÇüÅÂ¿Í 7¹øÂ° ÀÚ¸®(¼ºº°) À¯È¿¼º °Ë»ç
	var ssnRegEx = /^\d{6}-[1234]\d{6}$/;
	if ( ! ssnRegEx.test(ssn)) {
//		alert("Àß¸øµÈ ÁÖ¹Îµî·Ï¹øÈ£ÀÔ´Ï´Ù.");
		return false;
	}

	// ³¯Â¥ À¯È¿¼º °Ë»ç
	var birthYear = (ssn.charAt(7) <= "2") ? "19" : "20";
		birthYear += ssn.substr(0, 2);
	var birthMonth = ssn.substr(2, 2) - 1;
	var birthDate = ssn.substr(4, 2);
	var birth = new Date(birthYear, birthMonth, birthDate);

	if ( birth.getYear() % 100 != ssn.substr(0, 2)
			|| birth.getMonth() != birthMonth
			|| birth.getDate() != birthDate ) {
//		alert("Àß¸øµÈ ÁÖ¹Îµî·Ï¹øÈ£ÀÔ´Ï´Ù.");
		return false;
	}

	// Check Sum ÄÚµåÀÇ À¯È¿¼º °Ë»ç
	var buf = new Array(13);
	for (var i = 0; i < 6; i++) {
		buf[i] = parseInt(ssn.charAt(i));
	}

	for (var i = 6; i < 13; i++) {
		buf[i] = parseInt(ssn.charAt(i + 1));
	}

	var multipliers = [2,3,4,5,6,7,8,9,2,3,4,5];
	var sum = 0;
	for (var i = 0; i < 12; i++) {
		sum += (buf[i] *= multipliers[i]);
	}

	if ( (11 - (sum % 11) ) % 10 != buf[12] ) {
//		alert("Àß¸øµÈ ÁÖ¹Îµî·Ï¹øÈ£ÀÔ´Ï´Ù.");
		return false;
	}

	return true;
}

/* String ±æÀÌ Ã¼Å© by ÃÖÁØ¿µ*/
function getLength(str) {
	return(str.length+(escape(str)+"%u").match(/%u/g).length-1);
}


/* Email Á¤±Ô½Ä Ã¼Å© by ÇÑ½ÂÈÆ*/
function isEmail(s){
	return s.search(/^\s*[\w\~\-\.]+\@[\w\~\-]+(\.[\w\~\-]+)+\s*$/g)>=0;
}


/* ÀÌ¹ÌÁö ÆÄÀÏ È®Àå¸í Á¦ÇÑ ÇÏ±â */
function fileLimit(file) {
extArray = new Array("gif", "jpg", "png"); // È®Àå¸í ¼±¾ð
var allow = false;
if(file)
{
		/*
		while (file.indexOf("\\") != -1)
		file = file.slice(file.indexOf("\\") + 1);
		ext = file.slice(file.indexOf(".")).toLowerCase();
		*/

		ext = file.substring(file.lastIndexOf(".")+1,file.length).toLowerCase();

		for (var i = 0; i < extArray.length; i++)
		{
			if (extArray[i] == ext)
			{
				allow=true; break;
			}
		}

		return allow;
	}
return allow;
}

