var DATE_SEPERATOR = ".";
var NO_SEPERATOR = "-";
/** FOMR CONTROL - INIT */
var INIT    = 0;
/** FOMR CONTROL - SELECT */
var SELECT  = 1;
/** FOMR CONTROL - INSERT */
var INSERT  = 2;
/** FOMR CONTROL - UPDATE */
var UPDATE  = 3;
/** FOMR CONTROL - DELETE */
var DELETE  = 4;
/** FOMR CONTROL - DEFAULT COMMAND 01 ~ 10
var COMMAND01 = 11;
var COMMAND02 = 12;
var COMMAND03 = 13;
var COMMAND04 = 14;
var COMMAND05 = 15;
var COMMAND06 = 16;
var COMMAND07 = 17;
var COMMAND08 = 18;
var COMMAND09 = 19;
var COMMAND10 = 20;*/

var bAllCheckFlag = 0;
var sDomain = "";

browser_type = 0;
if (navigator.userAgent.indexOf("MSIE") != -1)
{
	browser_type = 1;
}

function ChgColor(status,line)
{
	var f = document.Form;
	var sObj = "line" + line;
	var sObj2 = "f." + line + ".checked";

	if ( browser_type == 1 )
	{
		if (status == 0)
		{
			var sNChecked = "#FFFFFF";
		}
		else
		{
			//var sNChecked = "#F0FFE9";
			var sNChecked = "#FFFFFF";
		}

		if (eval(sObj2) == 0)
		{
			eval(sObj).style.backgroundColor = sNChecked;
		}
		else
		{
			//eval(sObj).style.backgroundColor = '#FFF5EC';
			eval(sObj).style.backgroundColor = '#F0FFE9';
		}
	}
}

function selectCheckAll(checkcnt, selObj)
{
	var sImgURL1 = sDomain + "/admin/images/btn/btn_allcheck_on.gif";
	var sImgURL2 = sDomain + "/admin/images/btn/btn_allcheck_off.gif";
	var j = 0;

	for( var i=0; i<document.Form.elements.length; i++)
	{
		var element = document.Form.elements[i];

		if ( element.name.indexOf('s_') == 0 )
		{
			var status = element.value;
		}

		if ( element.name.indexOf('_') == 0 )
		{
			j++;
			if (!element.disabled)
			{
				if ( bAllCheckFlag == 1 )
				{
					if ( j <= checkcnt ) status = 1;
					else status = 0;

					document.Form.all.checked = 0;
					element.checked	= 0;
					ChgColor(status,element.name);
				}
				else
				{
					document.Form.all.checked = 1;
					element.checked	= 1;
					ChgColor(status,element.name);
				}
			}
		}
	}
	if ( bAllCheckFlag == 1 )
	{
		selObj.value = "¸ðµÎ¼±ÅÃ";
		document.selimg1.src = sImgURL1;
		document.selimg2.src = sImgURL1;
		bAllCheckFlag = 0;
	}
	else
	{
		selObj.value = "¼±ÅÃÃë¼Ò";
		document.selimg1.src = sImgURL2;
		document.selimg2.src = sImgURL2;
		bAllCheckFlag = 1;
	}
}

function selectAll(selObj)
{
	var sImgURL1 = sDomain + "/admin/images/btn/btn_allcheck_on.gif";
	var sImgURL2 = sDomain + "/admin/images/btn/btn_allcheck_off.gif";

	for( var i=0; i<document.Form.elements.length; i++)
	{
		var element = document.Form.elements[i];
		if ( element.name.indexOf('s_') == 0 )
		{
			var status = element.value;
		}
		if ( element.name.indexOf('_') == 0 )
		{
			if (!element.disabled)
			{
				if ( bAllCheckFlag == 1 )
				{
					document.Form.all.checked = 0;
					element.checked	= 0;
					ChgColor(status,element.name);
				}
				else
				{
					document.Form.all.checked = 1;
					element.checked	= 1;
					ChgColor(status,element.name);
				}
			}
		}
	}
	if ( bAllCheckFlag == 1 )
	{
		selObj.value = "¸ðµÎ¼±ÅÃ";
		document.selimg1.src = sImgURL1;
		document.selimg2.src = sImgURL1;
		bAllCheckFlag = 0;
	}
	else
	{
		selObj.value = "¼±ÅÃÃë¼Ò";
		document.selimg1.src = sImgURL2;
		document.selimg2.src = sImgURL2;
		bAllCheckFlag = 1;
	}
}

/* Ã¼Å©µÈ µ¥ÀÌÅÍ ¼ö È®ÀÎ */
function getChecked(obj)
{
	var Form = document.Form;

	var checked		= "";
	var allArr		= "";

	var count = obj.length;

	if( count > 1 )
	{
		for( var i = 0; i < count; i++ )
		{
			if( eval("Form._"+i+".checked") )
			{
				checked += obj[i].value;
				checked += "#,#";
			}
		}
		if(checked.substring(checked.length-3, checked.length) == "#,#")
		{
			checked = checked.substring(0, checked.length - 3);
		}

		if(checked == "") allArr = "";
		else allArr = checked.split("#,#");
	}
	else
	{
		if( Form._0.checked )
		{
			allArr = obj.value;
		}
	}

	return allArr;
}

/*= COMMON CONTROL ===========================================================

    1. ÀÏ¹ÝÀûÀ¸·Î obj tag¿Í °ü°è¾øÀÌ »ç¿ëµÇ´Â ±â´É.
    2. Function List
        - OpenWindow(theURL, winName, features)
        : »õÃ¢ ¿­±â
        - Alert(message)
        : ¸Þ¼¼Áö¸¦ ¾Ë¸®´Â ¸Þ¼¼Áö¹Ú½º Ç¥½Ã
        - AlertConfirm(message)
        : »ç¿ëÀÚÀÇ ÀÇ»ç°áÁ¤À» Æ÷ÇÔÇÏ´Â ¸Þ¼¼Áö¹Ú½º Ç¥½Ã
        - AlertFocus(element, message)
        : ¸Þ¼¼Áö¸¦ ¾Ë¸®´Â ¸Þ¼¼Áö¹Ú½º Ç¥½Ã ÈÄ Element¿¡ ÁöÁ¤µÈ obj tag ·Î focus
        - ShowErrMessage(message)
        : ¼­¹ö ÇÁ·Î±×·¥¿¡¼­ »ý±ä ERROR ¸¦ º¸¿©ÁÖ´Â MESSAGEBOX ALERT
        - fnDbClick()
        : ´õºíÅ¬¸¯ ¹æÁö
============================================================================*/

function fnCheckKey(srchtype)
{
	keyValue = event.keyCode;

	if (keyValue==13)
	{
		if(srchtype == null || srchtype == "")
		{
			fnSearch();
		}
		else
		{
			fnSearch(srchtype);
		}
	}
}


/**
  * »õÃ¢¿­±â
  *  window.open ¿¡¼­ »ç¿ëµÇ´Â ¹æ½ÄÀ¸·Î features ¼³Á¤
  * @param theURL    »õÃ¢ÀÇ Url
  * @param winName   »õÃ¢ÀÇ name
  * @param features  »õÃ¢ÀÇ ¼¼ºÎ ¼³Á¤
  * @return
 */
function OpenWindow(theURL,winName,features)
{
    window.open(theURL,winName,features);
}

// ÆË¾÷ ¶ç¿ì±â ¿É¼Ç
function CloseWin(targetURL)
{
	opener.location.href = targetURL;
	this.close();
}

// ºÎ¸ðÃ¢ »õ·Î°íÄ§
function ParentRefreshClose(targetURL)
{
	opener.window.location.href=targetURL;
	this.close();
}

// ºÎ¸ðÃ¢ »õ·Î°íÄ§2
function ParentRefreshWinClose()
{
	opener.document.location.reload()
	this.close();
}

// À©µµ¿ì »çÀÌÁî ¹Ù²Ù±â
function WindowResize(nWidth, nHeight)
{
	window.resizeTo(nWidth, nHeight);
}


/**
  * ¸Þ¼¼Áö¸¦ ¾Ë¸®´Â ¸Þ¼¼Áö¹Ú½º Ç¥½Ã
  * @param message   ¸Þ¼¼Áö¹Ú½º¿¡ º¸¿©Áú ¸Þ¼¼Áö
  * @return
 */
function Alert(message)
{
    var iLen = message.length;
	if (iLen >= 1)
	{
		alert(message);
	}
}

/**
  * »ç¿ëÀÚÀÇ ÀÇ»ç°áÁ¤À» Æ÷ÇÔÇÏ´Â ¸Þ¼¼Áö¹Ú½º Ç¥½Ã
  * @param message   ¸Þ¼¼Áö¹Ú½º¿¡ º¸¿©Áú ¸Þ¼¼Áö
  * @return 1 : È®ÀÎ,  0 : Ãë¼Ò
 */
function AlertConfirm(message) {
	if(confirm(message)==1) {
		return 1;
	} else {
		return 0;
	}
}

/**
  * ¸Þ¼¼Áö¸¦ ¾Ë¸®´Â ¸Þ¼¼Áö¹Ú½º Ç¥½Ã ÈÄ Element¿¡ ÁöÁ¤µÈ obj tag ·Î focus
  * @param obj   focus ¸¦ °¡Áú Object
  * @param message   ¸Þ¼¼Áö¹Ú½º¿¡ º¸¿©Áú ¸Þ¼¼Áö
  * @return
 */
function AlertFocus(obj, message )
{
   if ( message != '') Alert( message );
   obj.focus();
   if (obj.type == 'text' && obj.value.length >=1 ) obj.select();
   return ;
}

/**
  * ¼­¹ö ÇÁ·Î±×·¥¿¡¼­ »ý±ä ERROR ¸¦ º¸¿©ÁÖ´Â MESSAGEBOX ALERT
  * @param message   ¸Þ¼¼Áö¹Ú½º¿¡ º¸¿©Áú ¸Þ¼¼Áö
  * @return
 */
function ShowErrMessage(message)
{
    var iLen = message.length;
    var showMessage;
	if (iLen >= 1)
	{
		shwoMessage=ReplaceStr(message,"<||>","\n");
		Alert(shwoMessage);
	}
}

function fnDbClick()
{
	if(event.button >= 1) alert("Àá½Ã ±â´Ù·Á ÁÖ½Ê½Ã¿À. Áö±Ý Ã³¸®ÁßÀÔ´Ï´Ù.");
}

/*= FORM CONTROL =============================================================

    1. Æû °ü·Ã ±âº» ±â´ÉÀ» Ã³¸®.
    2. Function List
        - ChkLen(Object, Int)
        : ÀÔ·Â ¹ÞÀº ÆûÅÂ±×(Object)ÀÇ ¹®ÀÚ¿­ÀÇ ±æÀÌ°¡ Æ¯Á¤ ±æÀÌ(Int)¿Í °°ÀºÁö ¿©ºÎ Ã¼Å©
          true - ±æÀÌ°¡ °°À½
          false - ±æÀÌ°¡ ´Ù¸§
        - ChkLenMoveFocus(Object, Int, Object)
        : ÀÔ·Â ¹ÞÀº ÆûÅÂ±×(Object)ÀÇ ¹®ÀÚ¿­ÀÇ ±æÀÌ°¡ Æ¯Á¤ ±æÀÌ(Int) ÀÌ¸é
          ´Ù¸¥ °´Ã¼(Object)·Î Æ÷Ä¿½º¸¦ ÀÌµ¿
        - SetFocus(Object)
        : ÀÔ·Â ¹ÞÀº °´Ã¼·Î Æ÷Ä¿½º ÀÌµ¿
        - ChkLenByByte(Object, int)
        : ÀÔ·Â ÇÊµåÀÇ ¹®ÀÚ Å©±â¸¦ ÇÑÁ¤½ÃÅ³¶§.. (ÇÑ±Û±îÁö °í·ÁÇÏ¿© °è»êµÊ)
          ex) onBlur="return fnLessEqualLen(this, len);"
        - GetLenByByte(String)
        : ÀÔ·Â ÇÊµåÀÇ ¹®ÀÚ Å©±â¸¦ ¾ò´Â´Ù.. (ÇÑ±Û±îÁö °í·ÁÇÏ¿© °è»êµÊ)

============================================================================*/

/**
  * ÀÔ·Â ¹ÞÀº ÆûÅÂ±×(Object)ÀÇ ¹®ÀÚ¿­ÀÇ ±æÀÌ°¡ Æ¯Á¤ ±æÀÌ(Int)¿Í °°ÀºÁö ¿©ºÎ Ã¼Å©
  * @param obj   ´ë»ó ÆûÅÂ±×(Object)
  * @param len   ºñ±³ÇÒ ±æÀÌ
  * @return  true : ±æÀÌ°¡ °°À½, false : ±æÀÌ°¡ ´Ù¸§
 */
function ChkLen(obj, len) {
    if (obj.value.length == len) return true;
    return false;
}

/**
  * ÀÔ·Â ¹ÞÀº ÆûÅÂ±×(Object)ÀÇ ¹®ÀÚ¿­ÀÇ ±æÀÌ°¡ Æ¯Á¤ ±æÀÌ(Int) ÀÌ¸é
  * ´Ù¸¥ °´Ã¼(Object)·Î Æ÷Ä¿½º¸¦ ÀÌµ¿
  * @param obj   ´ë»ó ÆûÅÂ±×(Object)
  * @param len   ºñ±³ÇÒ ±æÀÌ
  * @param dest  Æ÷Ä¿½º¸¦ ÀÌµ¿ÇÒ ÆûÅÂ±×(Object)
  * @return
 */
function ChkLenMoveFocus(obj, len, dest) {
    if (obj.value.length == len)
    setFocus(dest);
}

/**
  * ÀÔ·Â ¹ÞÀº °´Ã¼·Î Æ÷Ä¿½º ÀÌµ¿
  * @param obj   Æ÷Ä¿½º¸¦ ÀÌµ¿ÇÒ ÆûÅÂ±×(Object)
  * @return
 */
function SetFocus(obj) {
    obj.focus();
}

/**
  * ÀÔ·Â ÇÊµåÀÇ ¹®ÀÚ Å©±â¸¦ ÇÑÁ¤½ÃÅ³¶§.. (ÇÑ±Û±îÁö °í·ÁÇÏ¿© °è»êµÊ)
  * @param obj   ´ë»ó ÆûÅÂ±×(Object)
  * @param len   ºñ±³ÇÒ ±æÀÌ
  * @return
 */
function ChkLenByByte(obj, len)
{
    var src    = obj.value;
    var srcLen = GetLenByByte(src);
    if (srcLen <= len) return true;
    var delLen = srcLen - len;
    obj.focus();
    Alert("ÀÌ Ç×¸ñÀº ¿µ¹® " + len + "ÀÚ (ÇÑ±ÛÀº " + Math.floor(len/2) + "ÀÚ) ±îÁö¸¸ ÀÔ·ÂÇØ¾ß ÇÕ´Ï´Ù \n"
        +  "ÀÔ·Â ³»¿ë¿¡¼­ ¿µ¹® " + delLen + "ÀÚ (ÇÑ±ÛÀº " + Math.ceil(delLen/2) + "ÀÚ)¸¦ Á¦°ÅÇÏ½Ã±â ¹Ù¶ø´Ï´Ù");
    return false;
}

/**
  * ÀÔ·Â ÇÊµåÀÇ ¹®ÀÚ Å©±â¸¦ ¾ò´Â´Ù.. (ÇÑ±Û±îÁö °í·ÁÇÏ¿© °è»êµÊ)
  * @param String   ¹®ÀÚ¿­
  * @return int ¹®ÀÚ¿­ÀÇ ±æÀÌ
 */
function GetLenByByte(value)
{
    var byteLength = 0;
    for (var inx = 0; inx < value.length; inx++) {
        var oneChar = escape(value.charAt(inx));
        if ( oneChar.length == 1 ) {
            byteLength ++;
        } else if (oneChar.indexOf("%u") != -1) {
            byteLength += 2;
        } else if (oneChar.indexOf("%") != -1) {
            byteLength += oneChar.length/3;
        }
    }
    return byteLength;
}

/**
  * messageStrÀÇ byte ¼ö¸¦ °è»ê. (maxByte + 1), (maxByte + 2 )±îÁö¸¸ °è»ê
  * maxByte º¸´Ù Å« °æ¿ì ¿¡´Â cutStringIndex¿¡ String Length°ªÀ» ÀúÀå.
  * @param messageStr   ¹®ÀÚ¿­
  * @return tcount ¹®ÀÚ¿­ÀÇ ±æÀÌ
 */
function calcLen( messageStr ) 
{
	var tcount = 0;

	for ( k = 0; k < messageStr.length; k++ ) {

		var onechar = messageStr.charAt( k );

       	if ( onechar!='\r') {
           	tcount++;
        }

  	}
	return tcount;
}

/**
  * ´ë»ó Object¸¦ disable ½ÃÅ²´Ù.
  * @param  obj   ´ë»ó ÆûÅÂ±×(Object)
  * @return
 */
function DisableObject(obj)
{
	switch( obj.type ) {
		case "checkbox" :
			 obj.disabled = true;
			 break;
		case "text" :
			 obj.readOnly=true;
	         obj.style.backgroundColor = "#E9F8F2";
	         obj.style.color = "#555555";
			 break;
		default:
	}
}

/**
  * ´ë»ó Object¸¦ enable ½ÃÅ²´Ù.
  * @param obj   ´ë»ó ÆûÅÂ±×(Object)
  * @return
 */
function EnableObject(obj)
{
	switch( obj.type ) {
		case "checkbox" :
			 obj.disabled = false;
			 break;
		case "text" :
			 obj.readOnly=false;
	         obj.style.backgroundColor = "#ffffff";
	         obj.style.color = "#000000";
			 break;
		default:
	}
}

/**
 * ÀÔ·ÂµÇ¾îÁø º¯¼öÀÇ ¼ö¸¸Å­ DisableObject function ¼öÇà.
 * ÀÔ·ÂµÇ¾îÁø Object µéÀ» ¸ðµÎ disable ½ÃÅ²´Ù.
 * È£Ãâ¿¹ : DisableManyObjects(haengwon_no, name, center_section_code);
 * @param obj   ´ë»ó ÆûÅÂ±×(Object)
 * @param obj   ´ë»ó ÆûÅÂ±×(Object)
 *  :
 */
function DisableManyObjects() {
	var obj_receiver;
 	obj_receiver = DisableManyObjects.arguments;
	for(i=0; i< obj_receiver.length; i++) {
		if (obj_receiver[i] != "") {
			DisableObject(obj_receiver[i]);
		}
	}
}

/**
 * ÀÔ·ÂµÇ¾îÁø º¯¼öÀÇ ¼ö¸¸Å­ EnableObject function ¼öÇà.
 * ÀÔ·ÂµÇ¾îÁø Object µéÀ» ¸ðµÎ enable ½ÃÅ²´Ù.
 * È£Ãâ¿¹ : EnableManyObjects(haengwon_no, name, center_section_code);
 * @param obj   ´ë»ó ÆûÅÂ±×(Object)
 * @param obj   ´ë»ó ÆûÅÂ±×(Object)
 *  :
 */
function EnableManyObjects() {
	var obj_receiver;
 	obj_receiver = EnableManyObjects.arguments;
 	for(i=0; i< obj_receiver.length; i++) {
		if (obj_receiver[i] != "") {
			EnableObject(obj_receiver[i]);
		}
	}
}

/*= CHECKBOX CONTROL ===========================================================

    1. CHECKBOX °ü·Ã ±âº» ±â´ÉÀ» Ã³¸®.
    2. Function List
        - TogleCheckAll(Object, Object)
        : checkboxµéÀ» ¹Ýº¹ÇÏ¿© ¼±ÅÃÇÏ°Å³ª ÇØÁöÇÑ´Ù.
        - SetAllCheckboxCancel(Object)
        : checkbox¸¦ ¸ðµÎ ÇØÁöÇÑ´Ù.
        - SetAllCheckboxCheck(Object)
        : checkbox¸¦ ¸ðµÎ ¼±ÅÃ Ç¥½ÃÇÑ´Ù.
        - IsChecked(Object)
        : ¸®½ºÆ®¿¡¼­ ÇÏ³ªÀÌ»óÀÇ Ã¼Å©¹Ú½º°¡ ¼±ÅÃµÇ¾ú´ÂÁö È®ÀÎÇÑ´Ù.
        - IsCheckedOnlyOne(Object)
        : ¸®½ºÆ®¿¡¼­ ÇÏ³ªÀÇ Ã¼Å©¹Ú½º¸¸ ¼±ÅÃµÇ¾ú´ÂÁö È®ÀÎÇÑ´Ù.

============================================================================*/

/**
  * Ã³À½ obj°¡ ¼±ÅÃµÇ¾îÁø °æ¿ì ÀüÃ¼ checkObj¸¦ ¼±ÅÃÇÏ°í
  * ÇØÁöµÇ¾îÁø °æ¿ì ¸ðµÎ ÇØÁöÇÑ´Ù.
  * @param obj   ÀüÃ¼¸¦ controlÇÏ´Â CHECKBOX ÀÇ OBJECT
  * @param checkObj ÇØ´ç CHECKBOX
  * @return
 */
function TogleCheckAll(obj, checkObj) {
    if (!obj.checked) {
        SetAllCheckboxCancel(checkObj);
    } else {
        SetAllCheckboxCheck(checkObj);
    }
}

/**
  * CHECKBOX¸¦ ¸ðµÎ ÇØÁöÇÑ´Ù.
  * @param obj   ÇØ´ç CHECKBOX ÀÇ OBJECT
  * @return
 */
function SetAllCheckboxCancel(obj){
	if (obj != null) {
		var count = obj.length;
		if(count > 1){
			for(var i=0;i<count;i++){
				obj[i].checked = false;
			}
		 }else {
			obj.checked = false;
		 }
	}
     return;
}

/**
  * CHECKBOX¸¦ ¸ðµÎ ¼±ÅÃ Ç¥½ÃÇÑ´Ù.
  * @param obj   ÇØ´ç CHECKBOX ÀÇ OBJECT
  * @return
 */
function SetAllCheckboxCheck(obj){
	if (obj != null) {
		var count = obj.length;
		if(count > 1){
			for(var i=0;i<count;i++){
				obj[i].checked = true;
			}
		 }else{
			obj.checked = true;
		 }
	}
     return;
}

/**
  * ¸®½ºÆ®¿¡¼­ ÇÏ³ªÀÌ»óÀÇ Ã¼Å©¹Ú½º°¡ ¼±ÅÃµÇ¾ú´ÂÁö È®ÀÎÇÑ´Ù.
  * @param obj   ÇØ´ç CHECKBOX ÀÇ OBJECT
  * @return
 */
function IsChecked(obj){
    var count = obj.length;
    var iChecked = 0;
    if(count > 1){
        for(var i=0;i<count;i++){
            if (obj[i].checked) iChecked++;
        }
    } else {
        if (obj.checked) iChecked++;
    }
    if (iChecked == 0) {
        Alert("¼±ÅÃµÈ °ªÀÌ ¾ø½À´Ï´Ù");
        return false;
    }
    return true;
}

/**
  * ¸®½ºÆ®¿¡¼­ ÇÏ³ªÀÇ Ã¼Å©¹Ú½º¸¸ ¼±ÅÃµÇ¾ú´ÂÁö È®ÀÎ
  * @param obj   ÇØ´ç CHECKBOX ÀÇ OBJECT
  * @return
 */
function IsCheckedOnlyOne(obj){
    var count = obj.length;
    if(count > 1){
        var iChecked = 0;
        for(var i=0;i<count;i++){
            if (obj[i].checked) iChecked++;
        }
        if (iChecked > 1) {
            Alert("ÇÏ³ª¸¸ ¼±ÅÃÇÏ½Ê½Ã¿À");
            return false;
        }
     }
     return true;
}

/*= TEXT INPUT VALUE CONTROL ===========================================================

    1. ¹®ÀÚ¿­ °ü·Ã ±âº» ±â´ÉÀ» Ã³¸®.
    2. Function List
        - IsNull(Object)
        : ÀÔ·Â°ªÀÌ NULLÀÎÁö Ã¼Å©
        - IsEmpty(Object)
        : ÀÔ·Â°ªÀÌ °ø¹éÀÎÁö È®ÀÎÇÏ¿© ¸®ÅÏ
        - RemoveSpaces(Value)
        : ÀÔ·Â°ª¿¡ Æ÷ÇÔµÈ ¸ðµç ½ºÆäÀÌ½º ¹®ÀÚ¸¦ Á¦°Å ÈÄ ¸®ÅÏ
        - ReplaceStr(str, find, replace)
        : ¹®ÀÚ¿­¿¡ Æ÷ÇÔµÈ ¸ðµç º¯È¯´ë»ó ÆÐÅÏÀ» º¯°æÇÏ¿© ¸®ÅÏ
        - ContainsChars(Object)
        : ÀÔ·Â°ª¿¡ Æ¯Á¤ ¹®ÀÚ(chars)°¡ ÀÖ´ÂÁö Ã¼Å©. Æ¯Á¤ ¹®ÀÚ¸¦ Çã¿ëÇÏÁö ¾ÊÀ¸·Á ÇÒ ¶§ »ç¿ë
        - ContainsCharsOnly(Object)
        : ÀÔ·Â°ªÀÌ Æ¯Á¤ ¹®ÀÚ(chars)¸¸À¸·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
        - IsAlphabet(Object)
        : ÀÔ·Â°ªÀÌ ¾ËÆÄºªÀÎÁö Ã¼Å©
        - IsUpperCase(Object)
        : ÀÔ·Â°ªÀÌ ¾ËÆÄºª ´ë¹®ÀÚÀÎÁö Ã¼Å©
        - IsLowerCase(Object)
        : ÀÔ·Â°ªÀÌ ¾ËÆÄºª ¼Ò¹®ÀÚÀÎÁö Ã¼Å©
        - IsNumber(Object)
        : ÀÔ·ÂµÈ ¹®ÀÚ¿­ÀÌ ¼ýÀÚ ¸¸À» Æ÷ÇÔÇÏ°í ÀÖ´ÂÁö ¿©ºÎ ¸®ÅÏ
        - IsAlphaNum(Object)
        : ÀÔ·Â°ªÀÌ ¾ËÆÄºª,¼ýÀÚ·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
        - IsNumDash(Object)
        : ÀÔ·Â°ªÀÌ ¼ýÀÚ,´ë½Ã(-)·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
        - IsNumComma(Object)
        : ÀÔ·Â°ªÀÌ ¼ýÀÚ,ÄÞ¸¶(,)·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
        - IsNumPeriod(Object)
        : ÀÔ·Â°ªÀÌ ¼ýÀÚ,³¯Â¥ ±¸ºÐÀÚ(.)·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©

============================================================================*/

String.prototype.trim = function()
{
	//return this.replace(/^s*(b.*b|)s*$/, "$1"); // ¹®ÀåÀÇ ¾Õ°ú µÚÀÇ °ø¹é Á¦°Å
	a = this
	//alert(a)
	var search = 0
	while ( a.charAt(search) == " ")
	{
		search = search + 1
	}

	a = a.substring(search, (a.length))
	search = a.length - 1
	while (a.charAt(search) ==" ")
	{
		search = search - 1
	}
	return a.substring(0, search + 1)
} 

/**
 * ÀÔ·Â°ªÀÌ NULLÀÎÁö Ã¼Å©
 * @param obj   Object
 * @return true : Null ¶Ç´Â °ø¹é
 */
function IsNull(obj) {
    if (obj.value == null || obj.value.trim() == "") {
        return true;
    }
    return false;
}

/**
 * ÀÔ·Â°ª¿¡ ½ºÆäÀÌ½º ÀÌ¿ÜÀÇ ÀÇ¹ÌÀÖ´Â °ªÀÌ ÀÖ´ÂÁö Ã¼Å©
 * @param obj   Object
 * @return true : °ø¹é
 */
function IsEmpty(obj) {
    if (obj.value == null || obj.value.replace(/ /gi,"") == "") {
        return true;
    }
    return false;
}

/**
 * ÀÔ·Â°ª¿¡ Æ÷ÇÔµÈ ¸ðµç ½ºÆäÀÌ½º ¹®ÀÚ¸¦ Á¦°Å ÈÄ ¸®ÅÏ
 * @param str   Value
 * @return ret  ½ºÆäÀÌ½º°¡ Á¦°ÅµÈ ¹®ÀÚ¿­
 */
function RemoveSpaces(str) {
    var ret = "";
    
    if (str.length == 0) return ret;

    for (var i=0; i<str.length; i++) {
        if (str.charAt(i) != " ") ret += str.charAt(i);
    }
    return ret;
}

function RemoveSpaces(obj, msg)
{
    var str = obj.value;
    var ret = "";
    
    if (str.length != 0)
	{
    	for (var i=0; i<str.length; i++) 
    	{
    	    if (str.charAt(i) != " ")
    	    {	
    	    	ret += str.charAt(i);
    	    }
    	    else
    	    {
    	    	alert("¶ç¾î¾²±â ¾øÀÌ ÀÔ·ÂÇØ ÁÖ¼¼¿ä.");
    	    }
    	}
    	
    	obj.value = ret;
    }
}

/**
 * ¹®ÀÚ¿­¿¡ Æ÷ÇÔµÈ ¸ðµç º¯È¯´ë»ó ÆÐÅÏÀ» º¯°æÇÏ¿© ¸®ÅÏ
 * @param str   ¹®ÀÚ¿­
 * @return ret  º¯°æµÈ ¹®ÀÚ¿­
 */
function ReplaceStr(str, find, replace)
{
    var pos = 0;
    pos = str.indexOf(find);

    while(pos != -1)
    {
        pre_str = str.substring(0, pos);
        post_str = str.substring(pos + find.length, str.length);
        str = pre_str + replace + post_str;
        pos = str.indexOf(find);
    }
    return str;
}

/**
 * ÀÔ·Â°ª¿¡ Æ¯Á¤ ¹®ÀÚ(chars)°¡ Æ÷ÇÔµÇÁö ¾Ê¾Ò´ÂÁö Ã¼Å©
 * Æ¯Á¤ ¹®ÀÚ¸¦ Çã¿ëÇÏÁö ¾ÊÀ¸·Á ÇÒ ¶§ »ç¿ë
 * ex) if (containsChars(form.name,"!,*&^%$#@~;")) {
 *         Alert("ÀÌ¸§ ÇÊµå¿¡´Â Æ¯¼ö ¹®ÀÚ¸¦ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.");
 *     }
 * @param obj   Object
 * @return true Æ¯Á¤ ¹®ÀÚ°¡ ¾øÀ» °æ¿ì
 */
function ContainsChars(obj,chars) {
    for (var inx = 0; inx < obj.value.length; inx++) {
       if (chars.indexOf(obj.value.charAt(inx)) != -1)
           return true;
    }
    return false;
}

/**
 * ÀÔ·Â°ªÀÌ Æ¯Á¤ ¹®ÀÚ(chars)¸¸À¸·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
 * Æ¯Á¤ ¹®ÀÚ¸¸ Çã¿ëÇÏ·Á ÇÒ ¶§ »ç¿ë
 * ex) if (!containsCharsOnly(form.blood,"ABO")) {
 *         Alert("Ç÷¾×Çü ÇÊµå¿¡´Â A,B,O ¹®ÀÚ¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.");
 *     }
 * @param obj   Object
 * @return true Æ¯Á¤ ¹®ÀÚ°¡ ÀÖÀ» °æ¿ì
 */
function ContainsCharsOnly(obj,chars) 
{
	var newvalue = obj.value.trim();
	
    for (var inx = 0; inx < newvalue.length; inx++) 
    {
       if (chars.indexOf(newvalue.charAt(inx)) == -1)
           return false;
    }
    return true;
}



/**
 * ÀÔ·Â°ªÀÌ ÇÑ±ÛÀÎÁö Ã¼Å©
 * @param obj   Object
 * @return true ÇÑ±ÛÀÎ °æ¿ì
 */
function IsKorean(obj)
{
    if ((obj.value.length*2) == GetLenByByte(obj.value)) return true;
    return false;
}

/**
 * ÀÔ·Â°ªÀÌ ¾ËÆÄºªÀÎÁö Ã¼Å©
 * @param obj   Object
 * @return true ¾ËÆÄºªÀÏ °æ¿ì
 */
function IsAlphabet(obj) {
    var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
    return ContainsCharsOnly(obj,chars);
}

/**
 * ÀÔ·Â°ªÀÌ ¾ËÆÄºª ´ë¹®ÀÚÀÎÁö Ã¼Å©
 * @param obj   Object
 * @return true ¾ËÆÄºª ´ë¹®ÀÚÀÎ °æ¿ì
 */
function IsUpperCase(obj) {
    var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    return ContainsCharsOnly(obj,chars);
}

/**
 * ÀÔ·Â°ªÀÌ ¾ËÆÄºª ¼Ò¹®ÀÚÀÎÁö Ã¼Å©
 * @param obj   Object
 * @return true ¾ËÆÄºª ¼Ò¹®ÀÚÀÎ °æ¿ì
 */
function IsLowerCase(obj) {
    var chars = "abcdefghijklmnopqrstuvwxyz";
    return ContainsCharsOnly(obj,chars);
}

/**
  * ÀÔ·ÂµÈ ¹®ÀÚ¿­ÀÌ ¼ýÀÚ ¸¸À» Æ÷ÇÔÇÏ°í ÀÖ´ÂÁö ¿©ºÎ ¸®ÅÏ
  * @param obj   Object
  * @return true - ¼ýÀÚ¸¸À» Æ÷ÇÔÇÏ°í ÀÖ´Â °æ¿ì
 */
function IsNumber(obj) {
    var chars = "0123456789";
    return ContainsCharsOnly(obj,chars);
}

//modified by mkkim 2004.10.29
function IsNumber_mkkim(num) {
    var chars = "0123456789";
    var new_number = num;

    for (var inx = 0; inx < num.length; inx++) {
       if (chars.indexOf(num.charAt(inx)) == -1)
           return false;
    }
    return true;
}
/**
 * ÀÔ·Â°ªÀÌ ¾ËÆÄºª,¼ýÀÚ·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
 * @param obj   Object
 * @return true ¾ËÆÄºª,¼ýÀÚ·Î µÇ¾îÀÖ´Â °æ¿ì
 */
function IsAlphaNum(obj) {
    var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
    return ContainsCharsOnly(obj,chars);
}

/**
 * ÀÔ·Â°ªÀÌ ¼ýÀÚ,´ë½Ã(-)·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
 * @param obj   Object
 * @return true ¼ýÀÚ,´ë½Ã(-)·Î µÇ¾îÀÖ´Â °æ¿ì
 */
function IsNumDash(obj) {
    var chars = "-0123456789";
    return ContainsCharsOnly(obj,chars);
}

/**
 * ÀÔ·Â°ªÀÌ ¼ýÀÚ,ÄÞ¸¶(,)·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
 * @param obj   Object
 * @return true ¼ýÀÚ,ÄÞ¸¶(,)·Î µÇ¾îÀÖ´Â °æ¿ì
 */
function IsNumComma(obj) {
    var chars = ",0123456789";
    return ContainsCharsOnly(obj,chars);
}

/**
 * ÀÔ·Â°ªÀÌ ¼ýÀÚ,³¯Â¥ ±¸ºÐÀÚ(.)·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
 * @param obj   Object
 * @return true ¼ýÀÚ,³¯Â¥ ±¸ºÐÀÚ(.)·Î µÇ¾îÀÖ´Â °æ¿ì
 */
function IsNumPeriod(obj) {
    var chars = ".0123456789";
    return ContainsCharsOnly(obj,chars);
}

/**
 * ÀÔ·Â°ªÀÌ ¼ýÀÚ,¼Ò¼ýÁ¡(.),¼ýÀÚ±¸ºÐÀÚ(,)·Î µÇ¾îÀÖ´ÂÁö Ã¼Å©
 * @param obj   Object
 * @return true ¼ýÀÚ,³¯Â¥ ±¸ºÐÀÚ(.)·Î µÇ¾îÀÖ´Â °æ¿ì
 */
function IsMoney(obj) {
    var chars = ".,0123456789";
    return ContainsCharsOnly(obj,chars);
}

/**
 * ÀÔ·Â°ªÀÌ ÀÌ¸ÞÀÏÀ» ±¸¼ºÇÒ ¼ö ÀÖ´Â ¹®ÀÚµé·Î ±¸¼ºµÇ¾î ÀÖ´ÂÁö Ã¼Å©
 * ´Ü¼øÇÑ ÀÌ¸ÞÀÏ ÀÔ·ÂÆ÷¸ËÀ» È®ÀÎÇÑ´Ù.
 * @param obj   Object
 * @return true ÀÌ¸ÞÀÏ ±¸¼ºÀÌ °¡´ÉÇÑ ¹®ÀÚµé·Î ±¸¼ºµÇ¾î ÀÖÀ» °æ¿ì
 */
function IsEmailAddr(obj) {
    var format = /^((\w|[\-\.])+)@((\w|[\-\.])+)\.([A-Za-z]+)$/;
    return IsValidFormat(obj, format);
}

/**
  * ÀÔ·ÂµÈ ¹®ÀÚ¿­ÀÌ ¼ýÀÚ ¸¸À» Æ÷ÇÔÇÏ°í ÀÖ´ÂÁö ¿©ºÎ ¸®ÅÏ
  * ¿À·ù°¡ ÀÖÀ» °æ¿ì ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÏ°í focus ÀÌµ¿
  * @param obj   Object
  * @return true - ¼ýÀÚ¸¸À» Æ÷ÇÔÇÏ°í ÀÖ´Â °æ¿ì
 */
function IsNumberMessage(obj) {
    if (!IsNumber(obj)) {
        AlertFocus(obj, '¼ýÀÚ¸¸ ÀÔ·ÂÇÏ½Ê½Ã¿À');
        return false;
    }
    return true;
}

/**
  * ÀÔ·ÂµÈ ¹®ÀÚ¿­ÀÌ ¼ýÀÚ ¸¸À» Æ÷ÇÔÇÏ°í ÀÖ´ÂÁö¸¦ Ã¼Å©ÇÏ°í ,
  * ¹®ÀÚ¿­ÀÇ ±æÀÌ°¡ Æ¯Á¤ ±æÀÌ(Int)¿Í °°ÀºÁö ¿©ºÎ Ã¼Å©
  * ¿À·ù°¡ ÀÖÀ» °æ¿ì ¸Þ¼¼Áö¸¦ Ç¥½ÃÇÏ°í focus ÀÌµ¿
  * @param obj   Object
  * @return true - ¼ýÀÚ¸¸À» Æ÷ÇÔÇÏ°í ÀÖ´Â °æ¿ì
  * @create by mkkim 060905
 */
function IsNumberChkLenMessage(obj, len) {
    if (!IsNumber(obj)) {
        AlertFocus(obj, '¼ýÀÚ¸¸ ÀÔ·ÂÇÏ½Ê½Ã¿À');
        return false;
    }

    if (!ChkLen(obj, len)) {
        AlertFocus(obj, len+'ÀÚ¸® ¸¸Å­¸¸ ÀÔ·ÂÇØ¾ß ÇÕ´Ï´Ù.\n¿¹¸¦ Âü°íÇÏ½Ã¿À');
        return false;
  	}

    return true;
}

/*= NUMBER CONTROL ===========================================================

    1. ¼ýÀÚ °ü·Ã ±âº» ±â´ÉÀ» Ã³¸®.
    2. Function List
        - AddComma(Object)
        : ÀÔ·Â°ªÀ» ÄÞ¸¶°¡ Æ÷ÇÔµÈ ¹®ÀÚ¿­·Î º¯È¯ÇÏ¿© ¸®ÅÏ
          12345 ¸¦ ÀÔ·ÂÇÏ¸é 12,345 ·Î º¯È¯ÇÏ¿© ¸®ÅÏ
        - RemoveComma(String)
        : ÀÔ·Â°ª¿¡¼­ ÄÞ¸¶¸¦ ¾ø¾Ø´Ù.
        - RemoveDash(String)
        : ÀÔ·Â°ª¿¡¼­ ±¸ºÐÀÚ(-)¸¦ ¾ø¾Ø´Ù.
        - RemovePeriod(String)
        : ÀÔ·Â°ª¿¡¼­ ³¯Â¥ ±¸ºÐÀÚ(.) ¸¦ ¾ø¾Ø´Ù.
        - ParseInt(str)
        : ¹®ÀÚ¿­À» Á¤¼ö·Î º¯È¯ÇÏ¿© ¸®ÅÏ

============================================================================*/

/**
  * ÀÔ·Â°ªÀ» ÄÞ¸¶°¡ Æ÷ÇÔµÈ ¹®ÀÚ¿­·Î º¯È¯ÇÏ¿© ¸®ÅÏ
  * @param obj   ¼ýÀÚ
  * @return ret  ÄÞ¸¶¸¦ Ãß°¡ÇÑ ¼ýÀÚ
 */
function AddComma(obj) {
    var ret;
    if (!IsMoney(obj)) {
        AlertFocus(obj, "¼ýÀÚ¸¸ ÀÔ·ÂÇÏ½Ê½Ã¿À.");
        return;
    }
    var numstr = obj.value;
    numstr = RemoveComma(numstr);
    var rxSplit = new RegExp('([0-9])([0-9][0-9][0-9][,.])');
    var arrNumber = numstr.split('.');
    arrNumber[0] += '.';
    do {
        arrNumber[0] = arrNumber[0].replace(rxSplit, '$1,$2');
    }
    while (rxSplit.test(arrNumber[0]));
    if (arrNumber.length > 1) {
        ret = arrNumber.join('');
    } else {
        ret = arrNumber[0].split('.')[0];
    }
    obj.value = ret;
}

/**
 * ÀÔ·Â°ª¿¡¼­ ÄÞ¸¶¸¦ ¾ø¾Ø´Ù.
 * @param str   ¹®ÀÚ¿­
 * @return º¯°æµÈ ¹®ÀÚ¿­
 */
function RemoveComma(str) {
    return str.replace(/,/gi,"");
}

/**
 * ÀÔ·Â°ª¿¡¼­ ±¸ºÐÀÚ(-)¸¦ ¾ø¾Ø´Ù.
 * @param str   ¹®ÀÚ¿­
 * @return º¯°æµÈ ¹®ÀÚ¿­
 */
function RemoveDash(str) {
    return str.replace(/-/gi,"");
}

/**
 * ÀÔ·Â°ª¿¡¼­ ³¯Â¥ ±¸ºÐÀÚ(.)¸¦ ¾ø¾Ø´Ù.
 * @param str   ¹®ÀÚ¿­
 * @return º¯°æµÈ ¹®ÀÚ¿­
 */
function RemovePeriod(str) {
    return ReplaceStr(str, '.', '');
}

/**
  * ¹®ÀÚ¿­À» Á¤¼ö·Î º¯È¯ÇÏ¿© ¸®ÅÏ
  * @param str   ¹®ÀÚ¿­
  * @return Á¤¼ö
 */
function ParseInt(str) {
    return parseInt(str, 10);
}

/*= DATETIME CONTROL ===========================================================

    1. ÀÏÀÚ¿Í ½Ã°£ °ü·Ã ±âº» ±â´ÉÀ» Ã³¸®.
    2. Function List
        - IsDate(Object)
        : ÀÔ·Â°ªÀ» ÀÏÀÚ Format ÀÎÁö È®ÀÎ
        - IsMonth(month)
        : ÀÔ·ÂµÈ ¹®ÀÚ¿­ÀÌ ÀÏÀÚÀÇ ¿ù·Î º¯È¯°¡´ÉÇÑÁö È®ÀÎ
        - IsDay(year, month, day)
        : ÀÔ·ÂµÈ ¹®ÀÚ¿­ÀÌ ÀÏÀÚÀÇ ÀÏ·Î º¯È¯°¡´ÉÇÑÁö È®ÀÎ
        - GetEndDay(year, month)
        : ÇØ´ç ³â, ¿ùÀÇ ¸¶Áö¸· ÀÏÀÚ¸¦ °¡Á®¿Â´Ù
        - AddDateSeperator(Object)
        : ÀÔ·Â°ª¿¡ ÀÏÀÚ Çü½Ä¿¡ ¸ÂÃß¾î DATE_SEPERATOR ¸¦ Ãß°¡ÇÑ´Ù.

============================================================================*/

/**
  * ÀÔ·ÂµÈ ¹®ÀÚ¿­ÀÌ ÀÏÀÚ Format È®ÀÎ
  * @param str   ¹®ÀÚ¿­
  * @return true ÀÏÀÚ , false
 */
function IsDate ( obj )
{
	str = RemoveSpaces(obj.value);
	str = RemovePeriod(obj.value);
	if (!IsNumPeriod(obj)) {
	        obj.value = '';
        AlertFocus(obj, "³¯Â¥´Â YYYYMMDDÀÇ Çü½ÄÀ¸·Î ÀÔ·ÂÇÏ½Ê½Ã¿À");
        return false;
	}
	if (str.length != 8) {
	        obj.value = '';
        AlertFocus(obj, "³¯Â¥´Â YYYYMMDDÀÇ Çü½ÄÀ¸·Î ÀÔ·ÂÇÏ½Ê½Ã¿À");
	    return false;
	}

	var year  = str.substring(0,4);
	var month = str.substring(4,6);
	var day   = str.substring(6,8);

	if ( ParseInt( year ) >= 1900  && IsMonth( month ) && IsDay( year,month ,day) )
		return true;
	else {
	        obj.value = '';
        AlertFocus(obj, "³¯Â¥´Â YYYYMMDDÀÇ Çü½ÄÀ¸·Î ÀÔ·ÂÇÏ½Ê½Ã¿À");
		return false;
	}
}

/**
  * ÀÔ·ÂµÈ ¹®ÀÚ¿­ÀÌ 6ÀÚ¸® ÀÏÀÚ Format È®ÀÎ
  * @param str   ¹®ÀÚ¿­
  * @return true ÀÏÀÚ , false
 */
function IsDateSixLength ( obj )
{
	str = RemoveSpaces(obj.value);
	str = RemovePeriod(obj.value);
	if (!IsNumPeriod(obj)) {
        AlertFocus(obj, "³¯Â¥´Â YYMMDDÀÇ Çü½ÄÀ¸·Î ÀÔ·ÂÇÏ½Ê½Ã¿À");
        return false;
	}
	if (str.length != 6) {
        AlertFocus(obj, "³¯Â¥´Â YYMMDDÀÇ Çü½ÄÀ¸·Î ÀÔ·ÂÇÏ½Ê½Ã¿À");
	    return false;
	}

	var year  = str.substring(0,2);
	var month = str.substring(2,4);
	var day   = str.substring(4);

	if ( IsMonth(month) && IsDay2(day) )
		return true;
	else {
        AlertFocus(obj, "³¯Â¥´Â YYMMDDÀÇ Çü½ÄÀ¸·Î ÀÔ·ÂÇÏ½Ê½Ã¿À");
		return false;
	}
}

/**
  * ÀÔ·ÂµÈ ¹®ÀÚ¿­ÀÌ ÀÏÀÚÀÇ ¿ù·Î º¯È¯°¡´ÉÇÑÁö È®ÀÎ
  * @param month   ¹®ÀÚ¿­
  * @return true : °¡´ÉÇÒ °æ¿ì
 */
function IsMonth(month) {
    if (month.length > 2) return false;
    month = ParseInt(month);
    if ((month <= 0) || (month > 12)) return false;
    return true;
}

/**
  * ÀÔ·ÂµÈ ¹®ÀÚ¿­ÀÌ ÀÏÀÚÀÇ ÀÏ·Î º¯È¯°¡´ÉÇÑÁö È®ÀÎ
  * @param year   ³â
  * @param month  ¿ù
  * @param day    ÀÏ
  * @return true : °¡´ÉÇÒ °æ¿ì
 */
function IsDay(year, month, day) {
    if (day.length > 2) return false;
    year  = ParseInt(year, 10);
    month = ParseInt(month, 10);
    day   = ParseInt(day, 10);
    if ((day <= 0) || (day > GetEndDay(year, month))) return false;
    return true;
}

/**
  * ÀÔ·ÂµÈ ¹®ÀÚ¿­ÀÌ ÀÏÀÚÀÇ ÀÏ·Î º¯È¯°¡´ÉÇÑÁö È®ÀÎ (¿ù¿¡ °ü°è¾øÀ½)
  * @param day ¹®ÀÚ¿­
  * @return true : °¡´ÉÇÒ °æ¿ì
 */
function IsDay2(day) {
    if (day.length > 2) return false;
    day = ParseInt(day, 10);
    if ((day <= 0) || (day > 31)) return false;
    return true;
}

/**
  * ÇØ´ç ³â, ¿ùÀÇ ¸¶Áö¸· ÀÏÀÚ¸¦ °¡Á®¿Â´Ù
  * @param year   ³â
  * @param month  ¿ù
  * @return ¸¶Áö¸· ÀÏÀÚ
 */
function GetEndDay(year,month){//
    if ((month==1)||(month==3)||(month==5)||(month==7)||(month==8)||(month==10)||(month==12))
	    return 31;
    else {
	    if(month==2) {
		    if ((year%4==0) && ((year/4)%200!=0))	return 29;
		    else	return 28;
	    } else {
		    return 30;
        }
    }
}

/**
 * ÀÔ·Â°ªÀÌ À¯È¿ÇÑ ÀÏÀÚÀÎÁö È®ÀÎÇÏ°í
 * ÀÏÀÚ Çü½Ä¿¡ ¸ÂÃß¾î DATE_SEPERATOR ¸¦ Ãß°¡ÇÑ´Ù.
 * @param obj   Object
 * @return ±¸ºÐÀÚ°¡ Ãß°¡µÈ ÀÏÀÚ Çü½ÄÀÇ ¹®ÀÚ¿­
 */
function  AddDateSeperator(obj)
{
    if (IsEmpty(obj)) return false;
  if (!IsDate(obj)) {
      return false;
  }
  var numstr = RemovePeriod(obj.value);
  if (numstr.length != 8) {
      obj.value = '';
      AlertFocus(obj, "³¯Â¥´Â YYYYMMDDÀÇ Çü½ÄÀ¸·Î ÀÔ·ÂÇØÁÖ½Ê½Ã¿À");
      return false;
  }
  var rxSplit = new RegExp('([0-9][0-9][0-9][0-9])([0-9][0-9])([0-9][0-9])');
  numstr = numstr.replace(rxSplit, '$1'+DATE_SEPERATOR+'$2'+DATE_SEPERATOR+'$3');
  obj.value = numstr;
  return true;
}

/**
 * Ã³À½ Object¿Í µÎ¹øÂ° Object »çÀÌÀÇ ÀÏÀÚ¸¦ ¹ÝÈ¯ÇÑ´Ù.
 * ÀÌ°æ¿ì¿¡ µÎ¹øÂ° Object°¡ Ã³À½ Object º¸´Ù ³ªÁß ÀÏÀÚÀÌ´Ù.
 * @param fromObj   Object
 * @param toObj     Object
 * @return int µÎ Object »çÀÌÀÇ ÀÏÀÚ
 */
function GetDaysBetween(fromObj, toObj) {
    var numstr1 = RemovePeriod(fromObj.value);
    var user_day1 = new Date(numstr1.substr(0,4), ParseInt(numstr1.substr(4,2))-1, ParseInt(numstr1.substr(6)));
    var numstr2 = RemovePeriod(toObj.value);
    var user_day2 = new Date(numstr2.substr(0,4), ParseInt(numstr2.substr(4,2))-1, ParseInt(numstr2.substr(6)));
    user_day1 = user_day1.getTime();
    user_day2 = user_day2.getTime();
    var day_gab = Math.floor( (user_day2 - user_day1) / (60*60*24*1000) );
    return day_gab;
}

/**
 * ¿À´Ã±îÁö ³²Àº ÀÏ¼ö¸¦ ¹ÝÈ¯ÇÑ´Ù. ¿À´Ã ÀÌÈÄÀÇ ÀÏÀÚ¿¡ ´ëÇØ¼­´Â À½¼ö°ªÀ» ¹ÝÈ¯ÇÑ´Ù.
 * @param obj   Object
 * @return int ³²Àº ÀÏ¼ö
 */
function GetDaysToToday(obj) {
    var numstr = RemovePeriod(obj.value);
    var user_day = new Date(numstr.substr(0,4), ParseInt(numstr.substr(4,2))-1, ParseInt(numstr.substr(6)));
    user_day = user_day.getTime();
    var today = new Date();
    today = today.getTime();
    var day_gab = Math.floor( (today - user_day) / (60*60*24*1000) );
    return day_gab;
}

/**
 * ÀÔ·ÂµÈ ÀÏÀÚ°¡ ¿À´Ã ÀÌÈÄÀÇ ÀÏÀÚÀÎÁö È®ÀÎÇÑ´Ù.
 * @param obj   Object
 * @return true : ¿À´Ã ÀÌÈÄÀÇ ÀÏÀÚÀÏ °æ¿ì, false
 */
function IsAfterToday(obj)
{
    if (IsEmpty(obj)) return false;
    if (!IsDate(obj)) {
        return false;
    }
    var day_gab = GetDaysToToday(obj);
    if( day_gab > 0) {
        AlertFocus(obj, "¿À´ÃÀÌÈÄÀÇ ³¯Â¥¸¦ ÀÔ·ÂÇÏ¼Å¾ß ÇÕ´Ï´Ù");
        obj.value = "";
        return false;
    }
    return true;
}

/**
 * Ã³À½ ObjectÀÇ ÀÏÀÚ°¡ µÎ¹øÂ° ObjectÀÇ ÀÏÀÚº¸´Ù ºü¸¥Áö È®ÀÎ
 * @param obj   Object
 * @return true : ¿À´Ã ÀÌÈÄÀÇ ÀÏÀÚÀÏ °æ¿ì, false
 */
function IsSequentialDate(fromObj, toObj, isToday)
{
    if (IsEmpty(fromObj)) return false;
    if (IsEmpty(toObj)) return false;
    if (!IsDate(fromObj)) {
        return false;
    }
    if (!IsDate(toObj)) {
        return false;
    }
    var day_gab = GetDaysBetween(fromObj, toObj);
    if( day_gab < 0) {
        AlertFocus(fromObj, "³¯Â¥¸¦ ¹Ù¸£°Ô ÀÔ·ÂÇÏ¼Å¾ß ÇÕ´Ï´Ù");
        return false;
    }
    if ((!isToday)&&(day_gab == 0)) {
        AlertFocus(fromObj, "³¯Â¥¸¦ ¹Ù¸£°Ô ÀÔ·ÂÇÏ¼Å¾ß ÇÕ´Ï´Ù");
        return false;
    }
    return true;
}


/*= TEXT INPUT VALUE VALIDATION CHECK ==========================================

    1. TEXT ÀÔ·Â °ªÀÇ À¯È¿¼ºÀ»  È®ÀÎÇÑ´Ù.
    2. Function List
        - IsValidJumin
        : ¹®ÀÚ¿­ÀÌ ¿Ã¹Ù¸¥ ÁÖ¹Îµî·Ï¹øÈ£ÀÎÁö È®ÀÎÇÏ¿© ¸®ÅÏ
        - IsValidSaupja
        : ¹®ÀÚ¿­ÀÌ ¿Ã¹Ù¸¥ »ç¾÷ÀÚµî·Ï¹øÈ£ÀÎÁö È®ÀÎÇÏ¿© ¸®ÅÏ
        - IsValidBeopin
        : ¹®ÀÚ¿­ÀÌ ¿Ã¹Ù¸¥ ¹ýÀÎ¹øÈ£ÀÎÁö È®ÀÎÇÏ¿© ¸®ÅÏ
        - IsValidAccountPassword
        : ½Å±Ô°èÁÂ »ý¼º½Ã ÀÔ·ÂµÈ ºñ¹Ð¹øÈ£ÀÇ À¯È¿¼ºÀ» È®ÀÎÇÑ´Ù.

============================================================================*/

/**
  * ¹®ÀÚ¿­ÀÌ ¿Ã¹Ù¸¥ ÁÖ¹Îµî·Ï¹øÈ£ÀÎÁö È®ÀÎÇÏ¿© ¸®ÅÏ
 * @param obj   Object
  * @return true : ¹Ù¸¥ ÁÖ¹Îµî·Ï¹øÈ£ÀÏ °æ¿ì
 */
function IsValidJumin(oResNo)
{
	if(IsEmpty(oResNo)){
		return false;
	}
	var sResNo = oResNo.value;
	if(sResNo.length != 13) {
		return false;
    }

	var a = new Array(6)
	var b = new Array(7)
	var tot=0
	var c=0

	var sJumin0 = sResNo.substring(0,6);
	if (!IsMonth(sJumin0.substring(2,4))) {
		return false;
	}
	else if (!IsDay2(sJumin0.substring(4,6))) {
		return false;
	}

	var sJumin1 = sResNo.substring(6,13);

	for(var i=1;i<7;i++)
	{
		a[i]=sJumin0.substring(i-1,i);
		b[i]=sJumin1.substring(i-1,i);

		if(i<3)
			c=Number(b[i])*(i+7);
		else
			c=Number(b[i])*((i+9)%10);

		tot = tot + Number(a[i])*(i+1) + c;
	}

	b[7]=sJumin1.substring(6,7);

	if(Number(b[7]) != ((11-(tot%11))%10)) {
		return false;
	}
	else {
		return true;
	}

}
		
//ÁÖ¹Î¹øÈ£ Ã¼Å©
function check_jumin(jm_bh1, jm_bh2)
{
	var tot=0, result=0, re=0, se_arg=0;
	var chk_num="";

	chk_jm_bh = jm_bh1 + jm_bh2;
	if( chk_jm_bh.length != 13 )
	{
		return false;
	}
	else
	{
		for( var i=0; i < 12; i++ )
		{
			if( isNaN(chk_jm_bh.substr(i, 1)) )
			{
				return false;
			}
			se_arg = i;
			if (i >= 8) se_arg = i - 8;
			tot = tot + Number(chk_jm_bh.substr(i, 1)) * (se_arg + 2)
		}
		if( chk_num != "err" )
		{
			re = tot % 11;
			result = 11 - re;
			if( result >= 10 )
			{
				result = result - 10;
			}
			if( result != Number(chk_jm_bh.substr(12, 1)) )
			{
				return false;
			}
			if( (Number(chk_jm_bh.substr(6, 1)) < 1) || (Number(chk_jm_bh.substr(6, 1)) > 2) )
			{
				return false;
			}
		}
	}
	return true;
}

/**
  * ¹®ÀÚ¿­ÀÌ ¿Ã¹Ù¸¥ »ç¾÷ÀÚµî·Ï¹øÈ£ÀÎÁö È®ÀÎÇÏ¿© ¸®ÅÏ
 * @param obj   Object
 * @return true : ¹Ù¸¥ »ç¾÷ÀÚµî·Ï¹øÈ£ÀÏ °æ¿ì
 */
function IsValidSaupja(oCorpNo)
{
    if (IsEmpty(oCorpNo)) return false;
    var sCorpNo = RemoveDash(oCorpNo.value);
	if(sCorpNo.length != 10) {
	    return AlertFocus( oCorpNo, "¿Ã¹Ù¸¥ »ç¾÷ÀÚµî·Ï¹øÈ£°¡ ¾Æ´Õ´Ï´Ù.");
    }

	var chkRule = "137137135";
	var step1, step2, step3, step4, step5, step6, step7;

	step1 = 0;

	for (var i=0; i<7; i++)
	{
		step1 = step1 + (sCorpNo.substring(i, i+1) * chkRule.substring(i, i+1));
	}

	step2 = step1 % 10;
	step3 = (sCorpNo.substring(7, 8) * chkRule.substring(7, 8)) % 10;
	step4 = sCorpNo.substring(8, 9) * chkRule.substring(8, 9);
	step5 = Math.round(step4 / 10 - 0.5);
	step6 = step4 - (step5 * 10);
	step7 = (10 - ((step2 + step3 + step5 + step6) % 10)) % 10;

	if (sCorpNo.substring(9, 10) != step7)
		return AlertFocus( oCorpNo, "¿Ã¹Ù¸¥ »ç¾÷ÀÚµî·Ï¹øÈ£°¡ ¾Æ´Õ´Ï´Ù.");
	else
		return true;
}

/**
  * ¹®ÀÚ¿­ÀÌ ¿Ã¹Ù¸¥ ¹ýÀÎ¹øÈ£ÀÎÁö È®ÀÎÇÏ¿© ¸®ÅÏ
 * @param obj   Object
  * @return true : ¹Ù¸¥ ¹ýÀÎ¹øÈ£ÀÏ °æ¿ì
 */
function IsValidBeopin(oBeopinNo){
    if (IsEmpty(oBeopinNo)) return false;
    var pid = RemoveDash(oBeopinNo.value);
	if(pid.length != 10) {
	    return AlertFocus( oBeopinNo, "¿Ã¹Ù¸¥ ¹ýÀÎµî·Ï¹øÈ£°¡ ¾Æ´Õ´Ï´Ù.");
    }
	var pid = removeChar(oBeopinNo.value, "-");
	var number = "0123456789";
	var szChkDgt = "121212121212";
	var pidono = "";
	if (oBeopinNo.value.length < 1) {
		return;
	}
	for (var nCol=0; nCol < pid.length ; nCol++) {
		if (number.indexOf(pid.charAt(nCol)) >= 0) {
				pidono += pid.charAt(nCol);
		}
	}
	var lastpid = pidono.substring(12,13);
	var i = 0;
	var j = 0;
	var nV1 = 0;
	var nV2 = 0;
	var nV3 = 0;
	for( i=0 ; i<12 ; i++) {
		nV1 = pidono.substring(i, i+1) * szChkDgt.charAt(i);
		if(nV1 > 9) {
			nV2 += nV1 % 10;
		} else {
			nV2 += nV1;
		}
	}
	nV3 = nV2 % 10;
	if( nV3 > 0 ) {
		nV3 = 10 - nV3;
	} else {
		nV3 = 0;
	}
	if (lastpid == nV3) {
		oBeopinNo.value= pid.substring(0, 7) + "-" + pid.substring(7, 13);
	} else {
		AlertFocus( oBeopinNo, "¿Ã¹Ù¸¥ ¹ýÀÎµî·Ï¹øÈ£°¡ ¾Æ´Õ´Ï´Ù.");
		return;
	}
}

/**
 * ½Å±Ô°èÁÂ »ý¼º½Ã ÀÔ·ÂµÈ ºñ¹Ð¹øÈ£ÀÇ À¯È¿¼ºÀ» È®ÀÎÇÑ´Ù.
 * @param obj   Object
 * @return true : »ç¿ë°¡´ÉÇÑ ºñ¹Ð¹øÈ£ÀÏ °æ¿ì
 */
function IsValidAccountPassword(obj)
{
    if (IsEmpty(obj)) return;
    if (!IsNumer(obj)) {
        AlertFocus(obj, "¼ýÀÚ¸¸ ÀÔ·ÂÇÏ½Ê½Ã¿À.");
        return;
    }
    if (numstr.length != 4) {
        AlertFocus(obj, "ºñ¹Ð¹øÈ£´Â 4ÀÚ¸®ÀÔ´Ï´Ù.");
        return;
    }
}

/**
 * ÀÔ·Â°ªÀÌ »ç¿ëÀÚ°¡ Á¤ÀÇÇÑ Æ÷¸Ë Çü½ÄÀÎÁö Ã¼Å©
 * ÀÚ¼¼ÇÑ format Çü½ÄÀº ÀÚ¹Ù½ºÅ©¸³Æ®ÀÇ 'regular expression'À» ÂüÁ¶
 * @param obj      Object
 * @param format   String
 * @return true  ¿Ã¹Ù¸¥ Æ÷¸Ë Çü½ÄÀÏ °æ¿ì
 */
function IsValidFormat(obj, format) {
    if (obj.value.search(format) != -1) {
        return true;
    }
    return false;
}

/**
 * ÀÌ¸ÞÀÏ ÁÖ¼ÒÀÇ À¯È¿¼ºÀ» È®ÀÎÇÑ´Ù.
 * @param obj   Object
 * @return true : »ç¿ë°¡´ÉÇÑ ÀÌ¸ÞÀÏ ÁÖ¼ÒÀÏ °æ¿ì
 */
function IsValidEmail(obj)
{
    if (IsEmpty(obj)) return;
    if (!IsEmailAddr(obj)) {
        AlertFocus(obj, "Àß¸øµÈ Çü½ÄÀÇ ÀÌ¸ÞÀÏ ÁÖ¼ÒÀÔ´Ï´Ù");
        return;
    }
}

/**
 * ÀÌ¸ÞÀÏ ÁÖ¼ÒÀÇ À¯È¿¼ºÀ» È®ÀÎÇÑ´Ù.
 * @param obj   Object
 * @return true : »ç¿ë°¡´ÉÇÑ ÀÌ¸ÞÀÏ ÁÖ¼ÒÀÏ °æ¿ì
 */
function IsOnlyKorean(obj)
{
    if (IsEmpty(obj)) return;
    if (!IsKorean(obj)) {
        AlertFocus(obj, "ÇÑ±Û¸¸ ÀÔ·ÂÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù");
        return;
    }
}

/*= TEXT INPUT VALUE FORMAT ================================================

    1. TEXT ÀÔ·Â °ªÀÇ ±âÁØ Æ÷¸ËÀ» µû¶ó º¯°æÇÑ´Ù
    2. Function List
        - AddSeperatorToAccountNo(Object)
        : 11ÀÚ¸®ÀÇ °èÁÂ¹øÈ£¸¦ ÀÔ·Â¹Þ¾Æ ÀÚµ¿À¸·Î '-'¸¦ ´õÇÏ¿© ¸®ÅÏ(ex)
        - AddSeperatorToJuminNo(Object)
        : 13ÀÚ¸®ÀÇ ÁÖ¹Îµî·Ï¹øÈ£¸¦ ÀÔ·Â¹Þ¾Æ ÀÚµ¿À¸·Î '-'¸¦ ´õÇÏ¿© ¸®ÅÏ(ex)123456-7890123
        - AddSeperatorToSaupjaNo(Object)
        : 10ÀÚ¸®ÀÇ »ç¾÷ÀÚ¹øÈ£¸¦ ÀÔ·Â¹Þ¾Æ ÀÚµ¿À¸·Î '-'¸¦ ´õÇÏ¿© ¸®ÅÏ(ex)123-45-67890
        - AddSeperatorToCardNo(Object)
        : ÀÔ·ÂµÇ´Â Ä«µå¹øÈ£ÀÇ 4ÀÚ¸®¸¶´Ù '-'¸¦ ´õÇÏ¿© ¸®ÅÏ (ex)1234-5678-9012-3456

============================================================================*/

/**
 * 11ÀÚ¸®ÀÇ °èÁÂ¹øÈ£¸¦ ÀÔ·Â¹Þ¾Æ ÀÚµ¿À¸·Î '-'¸¦ ´õÇÏ¿© ¸®ÅÏ
 * @param obj   Object
 * @return acct °èÁÂ¹øÈ£
 */
function AddSeperatorToAccountNo(obj)
{
    if (IsEmpty(obj)) return;
    if (!IsNumDash(obj)) {
        AlertFocus(obj, "¼ýÀÚ¸¸ ÀÔ·ÂÇÏ½Ê½Ã¿À.");
        return;
    }
    var numstr = RemoveDash(obj.value);
    if (numstr.length != 11) {
        AlertFocus(obj, "°èÁÂ¹øÈ£´Â 11ÀÚ¸®ÀÔ´Ï´Ù");
        return;
    }
    var rxSplit = new RegExp('([0-9][0-9][0-9])([0-9][0-9])([0-9][0-9][0-9][0-9][0-9][0-9])');
    numstr = numstr.replace(rxSplit, '$1-$2-$3');
    obj.value = numstr;
}

/**
  * 13ÀÚ¸®ÀÇ ÁÖ¹Îµî·Ï¹øÈ£¸¦ ÀÔ·Â¹Þ¾Æ ÀÚµ¿À¸·Î '-'¸¦ ´õÇÏ¿© ¸®ÅÏ
 * @param obj   Object
  * @return acct ÁÖ¹Îµî·Ï¹øÈ£
 */
function AddSeperatorToJuminNo(obj)
{
    if (IsEmpty(obj)) return;
    if (!IsNumDash(obj)) {
        AlertFocus(obj, "¼ýÀÚ¸¸ ÀÔ·ÂÇÏ½Ê½Ã¿À.");
        return false;
    }
    if (!IsValidJumin(obj)) {
        return false;
    }
    var numstr = RemoveDash(obj.value);
    var rxSplit = new RegExp('([0-9][0-9][0-9][0-9][0-9][0-9])([0-9][0-9][0-9][0-9][0-9][0-9][0-9])');
    numstr = numstr.replace(rxSplit, '$1-$2');
    obj.value = numstr;
}

/**
 * 10ÀÚ¸®ÀÇ »ç¾÷ÀÚ¹øÈ£¸¦ ÀÔ·Â¹Þ¾Æ ÀÚµ¿À¸·Î '-'¸¦ ´õÇÏ¿© ¸®ÅÏ
 * @param obj   Object
 * @return acct »ç¾÷ÀÚ¹øÈ£
 */
function AddSeperatorToSaupjaNo(obj)
{
    if (IsEmpty(obj)) return;
    if (!IsNumDash(obj)) {
        AlertFocus(obj, "¼ýÀÚ¸¸ ÀÔ·ÂÇÏ½Ê½Ã¿À.");
        return false;
    }
    if (!IsValidSaupja(obj)) {
        return false;
    }
    var numstr = RemoveDash(obj.value);
    var rxSplit = new RegExp('([0-9][0-9][0-9])([0-9][0-9])([0-9][0-9][0-9][0-9][0-9])');
    numstr = numstr.replace(rxSplit, '$1-$2-$3');
    obj.value = numstr;
}

/**
 * 10ÀÚ¸® È¤Àº 13ÀÚ¸®ÀÇ »ç¾÷ÀÚ¹øÈ£,ÁÖ¹Î¹øÈ£¸¦ ÀÔ·Â¹Þ¾Æ ÀÚµ¿À¸·Î '-'¸¦ ´õÇÏ¿© ¸®ÅÏ
 * @param obj   Object
 * @return acct »ç¾÷ÀÚ¹øÈ£, ÁÖ¹Î¹øÈ£
 */
function AddSeperatorToSilmyungNo(obj)
{
    if (IsEmpty(obj)) return;
    var numstr = RemoveDash(obj.value);
    if (numstr.length == 10) {
        AddSeperatorToSaupjaNo(obj);
    } else if (numstr.length == 13){
        AddSeperatorToJuminNo(obj);
    } else {
    	AlertFocus(obj, "Àß¸øµÈ Çü½ÄÀÇ ½Ç¸í¹øÈ£ÀÔ´Ï´Ù");
    }
}

/**
 * 10ÀÚ¸® È¤Àº 13ÀÚ¸®ÀÇ »ç¾÷ÀÚ¹øÈ£,ÁÖ¹Î¹øÈ£¸¦ ÀÔ·Â¹Þ¾Æ ÀÚµ¿À¸·Î '-'¸¦ ´õÇÏ¿© ¸®ÅÏ
 * @param obj1   Object
 * @param obj2   Object
 * @return acct »ç¾÷ÀÚ¹øÈ£, ÁÖ¹Î¹øÈ£
 */
function checkSilmyungNo(obj1, obj2)
{
	var obj = obj1.value+obj2.value;
    if (IsEmpty(obj)) return;
    if (obj.length == 10) {
        AddSeperatorToSaupjaNo(obj);
    } else if (obj.length == 13){
        AddSeperatorToJuminNo(obj);
    } else {
    	AlertFocus(obj, "Àß¸øµÈ Çü½ÄÀÇ ½Ç¸í¹øÈ£ÀÔ´Ï´Ù");
    }
}

/**
 * Ä«µå¹øÈ£ ÀÔ·Â½Ã 4ÀÚ¸®¸¶´Ù NO_SEPERATOR(-) Ãß°¡ÇÑ´Ù
 * @param obj   Object
 * @return
 */
function AddSeperatorToCardNo(obj)
{
    if (IsEmpty(obj)) return;
    if (!IsNumDash(obj)) {
        obj.value = obj.value.substr(0, obj.value.length-1);
        AlertFocus(obj, "¼ýÀÚ¸¸ ÀÔ·ÂÇÏ½Ê½Ã¿À.");
        return false;
    }
    var numstr = RemoveDash(obj.value);
    if (numstr.length != 16) {
        AlertFocus(obj, "Ä«µå¹øÈ£´Â 16ÀÚ¸®ÀÔ´Ï´Ù");
        return;
    }
    var numstr = obj.value;
    var num = numstr;
    var rxSplit = new RegExp('([0-9][0-9][0-9][0-9])([0-9])');
    do {
        numstr = numstr.replace(rxSplit, '$1-$2');
    }
    while (rxSplit.test(numstr));

    obj.value = numstr;
}

/**
 * ¼ýÀÚ¸¸ ÀÔ·ÂµÇ¾ú´ÂÁö Ã¼Å©ÇÑ´Ù.
 * @param obj Object
 * @return
 */
function checkNum(obj) {
	if (IsEmpty(obj)) return;
	if(IsNumber(obj) == false) {
		AlertFocus(obj, "¼ýÀÚ¸¸ ÀÔ·ÂÇÏ½Ê½Ã¿À.");
        return false;
	}
}

/**
* ÅØ½ºÆ® ¹Ú½ºÀÇ ¹®ÀÚ¿­ ±æÀÌ¸¦ Ã¼Å©ÇÑ´Ù.
*
* @param    obj, maxlen
* @return    void
*/
function keyupCheckLen(obj, maxlen, msgText)
{
    var str_src = obj.value;
    var str_len = GetLenByByte(str_src);
    var message;

    if(str_len > maxlen)
    {
        alert(msgText + " ÇÑ±ÛÀº " + Math.floor(maxlen/2) + "ÀÚ, ¿µ¹®Àº " + maxlen +"ÀÚ±îÁö ÀÔ·Â °¡´ÉÇÕ´Ï´Ù.");
        obj.value = stringCut(str_src, maxlen);
    }
}


/**
* ¹®ÀÚ¿­ ÀÚ¸£±â
*
* @param    string    str        »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ¹®ÀÚ¿­
* @param    int        MAX_LEN    ÀÔ·Â¹®ÀÚÀÇ ÃÖ´ë°ª
* @return    string    str
*/
function stringCut(str, MAX_LEN)
{
    var str;
    var len = 0;
    var temp;
    var count = 0;

    len = str.length;

    for (k=0 ; k<len ; k++)
    {
        temp = str.charAt(k);

        if (escape(temp).length > 4) {
            count += 2;
        }
        else
            if(escape(temp) != "%0D")
                count++;

        if(count > MAX_LEN)
        {
            break;
        }
    }

    return str.substring(0, k);

}

/**
 * radio ¹öÆ° Áß ¼±ÅÃÇÑ °ªÀ» ReturnÇÑ´Ù.
 * @param field : radio button °´Ã¼
 * @return ¼±ÅÃÇÑ °ª
 */
function getCheckedValue(radio) {
    var len = radio.length;
    var chkValue = "";

    for(i=0; i<len; i++) {
        if(radio[i].checked == true) {
            chkValue = radio[i].value;
            break;
        }
    }
    return chkValue;
}


function fnCheckDateForm(form, nowdate)
{		
	if(IsNull(Form.f_sdate)) 
	{
		Alert(GetMsg('400', '½ÃÀÛÀÏ', null, null));
		SetFocus(Form.f_sdate);
		return;
	}
		
	if(IsNumber(Form.f_sdate) == false) 
	{
		Alert(GetMsg('110', '½ÃÀÛÀÏ', null, null));
		SetFocus(Form.f_sdate);
		return;
	}
	
	if(Form.f_sdate.value.length != 8)
	{
		Alert(GetMsg('200', null, null, null));
		SetFocus(Form.f_sdate);
		return;
	}
	
	if(IsNull(Form.f_edate)) 
	{
		Alert(GetMsg('400', 'Á¾·áÀÏ', null, null));
		SetFocus(Form.f_edate);
		return;
	}
		
	if(IsNumber(Form.f_edate) == false) 
	{
		Alert(GetMsg('110', 'Á¾·áÀÏ', null, null));
		SetFocus(Form.f_edate);
		return;
	}
	
	if(Form.f_edate.value.length != 8)
	{
		Alert(GetMsg('200', null, null, null));
		SetFocus(Form.f_edate);
		return;
	}
	
	if(parseInt(Form.f_sdate.value) >  parseInt(Form.f_edate.value))
	{
		Alert(GetMsg('204', null, null, null));
		SetFocus(Form.f_edate);
		return;
	}
	
	return true;
}

function fnCheckDate(form, nowdate, monthover)
{
	fnCheckDate(form, nowdate, monthover, '');
}

function fnCheckDate(form, nowdate, monthover, maxday) 
{

	var Form = form;

	if(maxday == null || maxday == "") maxday = "31";

	if(Form.f_schsdate.value == "" || Form.f_schedate.value == "") 
	{

		if(IsNull(Form.f_schsdate)) 
		{
			Alert(GetMsg('400', 'Á¶È¸½ÃÀÛÀÏ', null, null));
			SetFocus(Form.f_schsdate);
			return;
		}
		
		if(IsNull(Form.f_schedate)) 
		{
			Alert(GetMsg('400', 'Á¶È¸Á¾·áÀÏ', null, null));
			SetFocus(Form.f_schedate);
			return;
		}
	}
	else
	{
		if(IsNumber(Form.f_schsdate) == false) 
		{
			Alert(GetMsg('110', 'Á¶È¸½ÃÀÛÀÏ', null, null));
			SetFocus(Form.f_schsdate);
			return;
		}
		
		if(Form.f_schsdate.value.length != 8)
		{
			Alert(GetMsg('200', null, null, null));
			SetFocus(Form.f_schsdate);
			return;
		}
		
		if(IsNumber(Form.f_schedate) == false) 
		{
			Alert(GetMsg('110', 'Á¶È¸Á¾·áÀÏ', null, null));
			SetFocus(Form.f_schedate);
			return;
		}
		
		if(Form.f_schedate.value.length != 8)
		{
			Alert(GetMsg('200', null, null, null));
			SetFocus(Form.f_schedate);
			return;
		}
/*
		else if(parseInt(nowdate) <  parseInt(Form.f_schedate.value))
		{
			Alert(GetMsg('202', "Á¶È¸Á¾·áÀÏ", null, null));
			SetFocus(Form.f_schedate);
			return;
		}
*/
		if(parseInt(Form.f_schsdate.value) >  parseInt(Form.f_schedate.value))
		{
			Alert(GetMsg('204', null, null, null));
			SetFocus(Form.f_schedate);
			return;
		}
/*
		else if(parseInt(GetDaysBetween(Form.f_schsdate, Form.f_schedate)) >=  maxday)
		{
			Alert(GetMsg('207', maxday, null, null));
			SetFocus(Form.f_schsdate);
			return;
		}
*/
		if( monthover=="1" && !(Form.f_schsdate.value.substring(0, 6)== Form.f_schedate.value.substring(0, 6)))
		{
			Alert(GetMsg('206', Form.f_schsdate.value.substring(0, 4), Form.f_schsdate.value.substring(4, 6), null));
			SetFocus(Form.f_schsdate);
			return;
		}

		return true;
	}
}

/*
 * Focus Move
 * @param len		int
 * @param preObj	Object
 * @param nextObj	Object
 */
function chgFocus(len, preObj, nextObj) {
	if(preObj.value.length == len) {
    	nextObj.focus();
    }
}

function click()
{
    if((event.button==2) || (event.button==3)) 
    {
        alert("¸¶¿ì½º ¿À¸¥ÂÊ ¹öÆ°Àº »ç¿ëÇÏ½Ç ¼ö ¾ø½À´Ï´Ù.");
        return false;
    }
}

function processKey()
{
	if( (event.ctrlKey == true && (event.keyCode == 78 || event.keyCode == 82)) ||
		(event.keyCode >= 112 && event.keyCode <= 123))
	{
		event.keyCode = 0;
		event.cancelBubble = true;
		event.returnValue = false;
	}
		
    if (document.layers) 
    {
        document.captureEvents(Event.MOUSEDOWN);document.onmousedown=clickNS;
    }
    else
    {   
        document.onmouseup=clickNS;document.oncontextmenu=clickIE;
    }
	document.oncontextmenu=new Function("return false");
}

function clickIE() 
{
    if (document.all) {(message);return false;}
}

function clickNS(e) 
{
    if (document.layers||(document.getElementById&&!document.all)) 
    {
        if (e.which==2||e.which==3) 
        {(message);return false;}
    }
}

//ÀÌ¸§ Æ¯¼ö¹®ÀÚÃ¼Å©(ÇÑ±Û¸¸)
function checkName(checkStr)
{
	var TEXT = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789~!@#$%^&*()_+|\=-`,.><?/£££¦£ª£À¡×¡Ø¡Ù¡Ú¤±¡Û¡Ü¡Ý¡Þ¡ß¡à¡á¡â¡ã¡ä¡å¡æ¡ç¡è¡é¡ê¡ë¢·¢¸¢¹¢Ã¢»¢¼¢½¢¾¢¿¢À¢Á¢Â¢Ã¢Ä¢Å¢Æ¢Ç¢È¢É¢Ë¢Ì¢Í¢Î¢Ï¢Ð¢Ñ";
	for (i = 0;  i < checkStr.length;  i++)
	{
		ch = checkStr.charAt(i);
		for (j = 0;  j < TEXT.length;  j++)
		{
			if (ch == TEXT.charAt(j))
			{
				return (false);
				break;
			}
		}
	}
	return (true);
}

// ÆÛ°¡±â
function fnClipboardCopy(str)
{
    window.clipboardData.setData('Text', str);
    alert('        Å¬¸³º¸µå¿¡ º¹»çµÇ¾ú½À´Ï´Ù.\n\nCTRL + V·Î ¿øÇÏ´Â °÷¿¡ ºÙ¿©³Ö±â ÇÏ¼¼¿ä.');
}
