<!--
/////////////////////////////////////////////////////////////////////
// FileName  : util.js                                             //
// WrittenBy : SH.LEE                                              //
// Write     : 2003.05.30                                          //
//                                                                 //
//         sFieldBlank()                                           //
//         removeSpace()                                           //
//         isNumber()                                              //
//         isDigit()                                               //
//         token()                                                 //
//         onlyEng()                                               //
//         onlyHan()                                               //
//         onlynum()                                               //
//         isJumin()                                               //
//         onlyHan()                                               //
//         isValidLength()                                         //
/////////////////////////////////////////////////////////////////////



/********************************************************************
*  Function Name : isFieldBlank()                                   *
*  Description   : input Data¿¡ ´ëÇØ Null Check                     *
*  Input Data    : theField                                         *
*  Output Data   : true/false (Null -> true, notNull -> false)      *
*  »ç¿ëµÇ´Â Function : removeSpace                                  *
********************************************************************/
function isFieldBlank(theField) 
{ 
    var str = theField.value;
    var len = removeSpace(str).length;
    
    return(str == "" || len == 0) ? true : false;
} 


/********************************************************************
*  Function Name : removeSpace()                                    *
*  Description   : Input Data ÀÇ Space¸¦ Á¦°ÅÇÑ´Ù.                  *
*  Input Data    : str                                              *
*  Output Data   : tar                                              *
*  »ç¿ë Function : None                                             *
********************************************************************/
function removeSpace(str)
{
    var src = new String(str);
    var tar = new String();
    var i, len = src.length;

    for(i = 0;i < len;i++) {
        if(src.charAt(i) != " ") {
            tar = tar + src.charAt(i);
        }
    }
    
    return tar;
}

/********************************************************************
*  Function Name : isNumber()                                       *
*  Description   : input Data °¡ ¼ýÀÚÇüÀÎÁö Check                   *
*  Input Data    : theField                                         *
*  Output Data   : true  - ¼ýÀÚÇü                                   *
*                  false - ¹®ÀÚÇü                                   *
*                                                                   *
*  »ç¿ë Function : token()                                          *
********************************************************************/
function isNumber(theField)
{
	var result = token(theField);
	
	return(result == "invalid") ? false : true;
}



/********************************************************************
*  Function Name : isDigit()                                        *
*  Description   : input Data°¡ 0 ~ 9 »çÀÌÀÇ °ªÀ» °®´ÂÁö Check      *
*  Input Data    : num                                              *
*  Output Data   : true/false                                       *
*  »ç¿ë Function : None                                             *
********************************************************************/
function isDigit(num)
{
    return(num >= "0" && num <= "9") ? true : false; 
}



/********************************************************************
*  Function Name : token()                                          *
*  Description   : Input Data °¡ integerÇü ÀÎÁö floatÇü ÀÎÁö Check  *
*  Input Data    : theField                                         *
*  Output Data   : ctype (integer/float/invalid)                    *
*  »ç¿ë Function : isDigit()                                        *
********************************************************************/
function token(theField)
{
    var Status = 0;
    var num    = 0;
    var ctype  = "";
    var i;
    
    i = 0;

    while(i < theField.value.length) {
    	
        num = theField.value.charAt(i);
        
        if(Status == 0) {
            if(isDigit(num)) {
                Status = 1;
                i++;  
            }
            else {
                Status = 10;       // invalid number
                break;
            }
        }
        else if(Status == 1) {
            if(isDigit(num)) {
                Status = 1;        // integer
                i++;
            }
            else if(num == ".") {
                Status = 2;        // is float number
                i++;
            }
            else {
                Status = 10;       // invalid number
                break;
            }
        }
        else if(Status == 2) {
            if(isDigit(num)) {
                i++;
            }
            else {
                Status = 10;
                break;
            }
        }
    }

    if(Status == 1)       ctype = "integer";
    else if(Status == 2)  ctype = "float";
    else if(Status == 10) ctype = "invalid";

    return ctype;
}

/********************************************************************
*  Function Name : onlyEng()                                        *
*  Description   : input Data °¡ ¿µ¼ýÀÚÇüÀÎÁö Check                 *
*  Input Data    : theField                                         *
*  Output Data   : true  - ¿µ¼ýÀÚÇü                                 *
*                  false - ±âÅ¸                                     *
*                                                                   *
*  »ç¿ë Function : None                                             *
********************************************************************/
function onlyEng(theField) {
	var inText = theField.value;
	var ret;

	for (var i = 0; i < inText.length; i++) {
	    ret = inText.charCodeAt(i);
		if ((ret > 122) || (ret < 48) || (ret > 57 && ret < 65) || (ret > 90 && ret < 97)) {
			alert("¿µ¹®ÀÚ¿Í ¼ýÀÚ¸¸À» ÀÔ·ÂÇÏ¼¼¿ä");
			theField.value = "";
			theField.focus();
			return false;
		}
	}
	return true;
}


/********************************************************************
*  Function Name : onlyHan()                                        *
*  Description   : input Data °¡ ÇÑ±ÛÀÎÁö Check                     *
*  Input Data    : theField                                         *
*  Output Data   : true  - ÇÑ±Û                                     *
*                  false - ±âÅ¸                                     *
*                                                                   *
*  »ç¿ë Function : None                                             *
********************************************************************/
function onlyHan(theField) {
	var inText = theField.value;
	var ret;

	for (var i = 0; i < inText.length; i++) {
	    ret = inText.charCodeAt(i);
		if (ret > 31 && ret < 127) {
			alert("¶ç¾î¾²±â ¾øÀÌ ÇÑ±Û·Î¸¸ ÀÔ·ÂÇÏ¼¼¿ä");
			theField.value = "";
			theField.focus();
			return false;
		}
	}
	return true;
}



/********************************************************************
*  Function Name : onlynum()                                        *
*  Description   : input Data °¡ ¼ýÀÚÀÎÁö Check                     *
*  Input Data    : theField                                         *
*  Output Data   : true  - ¼ýÀÚ                                     *
*                  false - ±âÅ¸                                     *
*                                                                   *
*  »ç¿ë Function : None                                             *
********************************************************************/
function onlynum(theField){
	var inText = theField.value;
	var ret;

	for (var i = 0; i < inText.length; i++) {
	    ret = inText.charCodeAt(i);
		if (!((ret > 47) && (ret < 58)))  {
			alert("¼ýÀÚ¸¸À» ÀÔ·ÂÇÏ¼¼¿ä");
			theField.value = "";
			theField.focus();
			return false;
		}
	}
	return true;
}


/********************************************************************
*  Function Name : isJumin()                                        *
*  Description   : input Data °¡ ÁÖ¹Î¹øÈ£»ý¼º·ê¿¡ ¸Â´ÂÁö Check      *
*  Input Data    : theField1,theField2                              *
*  Output Data   : true  - ÁÖ¹Î¹øÈ£ ok                              *
*                  false -                                          *
*                                                                   *
*  »ç¿ë Function : None                                             *
********************************************************************/
function isJumin(theField1,theField2){
	var str_f_num = theField1.value;
	var str_l_num = theField2.value;

	var i3=0;
	for (var i=0;i<str_f_num.length;i++)
	{
		var ch1 = str_f_num.substring(i,i+1);
		if (ch1<'0' || ch1>'9') { i3=i3+1 }
	}
	if ((str_f_num == '') || ( i3 != 0 ))
	{
	  alert('ÁÖ¹Îµî·Ï¹øÈ£°¡ Àß¸øÀÔ·ÂµÇ¾ú½À´Ï´Ù.....');
	  theField1.focus();
	  return false;
	}
	
	var i4=0;
	for (var i=0;i<str_l_num.length;i++)
	{
		var ch1 = str_l_num.substring(i,i+1);
		if (ch1<'0' || ch1>'9') { i4=i4+1 }
	}
	if ((str_l_num == '') || ( i4 != 0 ))
	{
	  alert('ÁÖ¹Îµî·Ï¹øÈ£°¡ Àß¸øÀÔ·ÂµÇ¾ú½À´Ï´Ù.....');
	  theField2.focus();
	  return false;
	}

	if(str_l_num.substring(0,1) > 4)
	{
		alert('ÁÖ¹Îµî·Ï¹øÈ£°¡ Àß¸øÀÔ·ÂµÇ¾ú½À´Ï´Ù.....');
		theField2.focus();
		return false;
	}

	if((str_f_num.length > 7) || (str_l_num.length > 8))
	{
		alert('ÁÖ¹Îµî·Ï¹øÈ£°¡ Àß¸øÀÔ·ÂµÇ¾ú½À´Ï´Ù.....');
		theField2.focus();
		return false;
	}

	var f1=str_f_num.substring(0,1);
	var f2=str_f_num.substring(1,2);
	var f3=str_f_num.substring(2,3);
	var f4=str_f_num.substring(3,4);
	var f5=str_f_num.substring(4,5);
	var f6=str_f_num.substring(5,6);
	var hap=f1*2+f2*3+f3*4+f4*5+f5*6+f6*7;
	var l1=str_l_num.substring(0,1);
	var l2=str_l_num.substring(1,2);
	var l3=str_l_num.substring(2,3);
	var l4=str_l_num.substring(3,4);
	var l5=str_l_num.substring(4,5);
	var l6=str_l_num.substring(5,6);
	var l7=str_l_num.substring(6,7);
	hap=hap+l1*8+l2*9+l3*2+l4*3+l5*4+l6*5;
	var rem=hap%11;
	rem=(11-rem)%10;
	if (rem == l7) 
		 return true;
	else
	{
	  alert('ÁÖ¹Îµî·Ï¹øÈ£°¡ Àß¸øÀÔ·ÂµÇ¾ú½À´Ï´Ù.....');
	  theField2.focus();
	  return false;
	}
}


/********************************************************************
*  Function Name : isValidLength()                                  *
*  Description   : ÀÚ¸®¼ö¸¦ Ã¼Å©ÇÑ´Ù.                               *
*  Input Data    : theField, len                                    *
*  Output Data   : true/false                                       *
*  »ç¿ë Function : None                                             *
********************************************************************/
function isValidLength(str, theField, len) {
	if (theField.value.length != len) {
		alert(str + len + ' ÀÚ¸®¸¦ ÀÔ·ÂÇØ¾ßÇÕ´Ï´Ù.');
		return false;
	} else {
		return true;
	}
}



/********************************************************************
*  Function Name : getCookie()                                      *
*  Description   : ÄíÅ°°ª°¡Á®¿À±â                                   *
*  Input Data    : stGroup,stName                                   *
*  Output Data   : ÄíÅ°°ª                                           *
*  »ç¿ë Function : None                                             *
********************************************************************/
function getCookie(stGroup,stName)
{
	stGroup += "=";
	stName += "=";

	var nCookieLen = document.cookie.length;
	var nStart = document.cookie.indexOf(stGroup);


	if( nStart == -1) return "";
	if( nStart + stGroup.length+1 >= nCookieLen) return "";


	var nEnd = nStart + stGroup.length;
	if( document.cookie.charAt( nEnd) == ';') return "";
	nStart = nEnd;
	nEnd = document.cookie.indexOf(";", nEnd);
	if( nEnd == -1) nEnd = document.cookie.length;

	var stCookie = document.cookie.substring(nStart, nEnd);

	if (stName == "")
	{
		return stCookie;
	}
	else
	{
		var nCookieLen = stCookie.length;
		var nStart = stCookie.indexOf(stName);

		if( nStart == -1) return "";
		if( nStart + stName.length+1 >= nCookieLen) return "";

		var nEnd = nStart + stName.length;
		if(document.cookie.charAt( nEnd) == '&') return "";
		nStart = nEnd;
		nEnd = stCookie.indexOf("&", nEnd);
		if( nEnd == -1) nEnd = stCookie.length;

		return stCookie.substring(nStart, nEnd);
	}
}


/********************************************************************
*  Function Name : autoTab()                                        *
*  Description   : ´ÙÀ½ÀÔ·ÂÇ×¸ñÀ¸·Î ÀÌµ¿                            *
*  Input Data    : stGroup,stName                                   *
*  Output Data   : ÄíÅ°°ª                                           *
*  »ç¿ë Function : None                                             *
********************************************************************/
var isNN = (navigator.appName.indexOf("Netscape")!=-1);
function autoTab(input,len, e) {
	var keyCode = (isNN) ? e.which : e.keyCode; 
	var filter = (isNN) ? [0,8,9] : [0,8,9,16,17,18,37,38,39,40,46];
	if(input.value.length >= len && !containsElement(filter,keyCode)) {
		input.value = input.value.slice(0, len);
		input.form[(getIndex(input)+1) % input.form.length].focus();
	}

	function containsElement(arr, ele) {
		var found = false, index = 0;
		while(!found && index < arr.length)
			if(arr[index] == ele)
			found = true;
			else
			index++;
			return found;
		}

	function getIndex(input) {
		var index = -1, i = 0, found = false;
		while (i < input.form.length && index == -1)
			if (input.form[i] == input)index = i;
			else i++;
			return index;
		}
	return true;
}


/////////////////////////////////////////////////
// ¼ýÀÚ¿¡ Ãµ´ÜÀ§ comma ¸¦ Ç¥½ÃÇÑ´Ù.
/////////////////////////////////////////////////
function formatCurrency(arg){
        n=String(arg);

        //¼Ò¼öÁ¡ ÆÄ½Ì
        o=n.split(".")[0];
        p=n.split(".")[1];
        n="";

        //»ç¿ëÀÚ°¡ ÀÓÀÇ·Î ³ÖÀº ÄÞ¸¶(,)Á¦°Å
        while(o.indexOf(",")!=-1){
                o=o.replace(",","");
        }

        //¼Ò¼öÁ¡ ÀÌ»ó ºÎºÐ º¯È¯
        d=o.length%3;
        for(i=0;i<o.length;i++){
                if(i%3==d)
                        n+=",";
                n+=o.charAt(i);
        }
        if(!d){n=n.replace(n.charAt(0),"")}

        //"¼Ò¼öÁ¡ ÀÌÇÏ°¡ ÀÖ´Ù¸é"Á¶°ÇºÎ ½ÃÀÛ
        if(p){n+="."+p;}

        return n;
}
/////////////////////////////////////////////////
// ¼ýÀÚ¿¡ Ãµ´ÜÀ§ comma ¸¦ »©±âÇÑ´Ù.
///////////////////////////////////////////////// 
function cutComma(str)
{
	str = str.replace(/,/g, "");
	return str;
}

//##########//
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//##########//
//-->


