/***********************************************************************
 * ¹®ÀÚ¿­À» Ã¼Å©ÇÒ º¯¼ö ¼±¾ð
 *
 */
	var Num =/^[0-9]+$/; 
	var Phone =/^[0-9]{2,3}-[0-9]{3,4}-[0-9]{4}$/; 
	var Mail =/^[_a-zA-Z0-9-]+@[._a-zA-Z0-9-]+\.[a-zA-Z]+$/; 
	var Domain =/^[.a-zA-Z0-9-]+.[a-zA-Z]+$/; 
	var Alpha =/^[a-zA-Z]+$/; 
	var Host =/^[a-zA-Z-]+$/; 
	var Hangul =/[°¡-ÆR]/; 
	var AlphaNum = Alpha + Num;
	var HangulEng =/[°¡-ÆRa-zA-Z]/; 
	var HangulOnly =/^[°¡-ÆR]*$/; 
	var ID = /^[a-zA-Z]{1}[a-zA-Z0-9_-]{4,10}$/; 
	var illegalStr = "~`!@#$%^&*()_-+=\|]}[{'\";:/?.><,";
	var AlphaNum = "abcdefghijklmnopqrstuvwxyz0123456789"
	var Same = /^(.)(\1)*$/;
    var BadKeyword = /`|~|!|@|#|\$|%|\^|&|\*|\(|\)|\-|\_|\+|\=|\|\||<|>|\,|\.|\?|\/|:|;|'|"|\[|\]|\{|\}/gi;



	function IsNull(Field)
	{
		if(Field.value.replace( / /g , "") == "") return true ;
		else return false;
	}
/***********************************************************************
 * input type="text"¿¡ ÀÔ·ÂÇÑ °ªÀÌ NULL ÀÎÁö Ã¼Å©
 *
 * ¿¹) if (ChkText(Æû³×ÀÓ , "Æû³×ÀÓÀ» ÀÔ·ÂÇØ ÁÖ¼¼¿ä.") ) ;
 */
	function ChkText(Field, Msg)
	{ 
		if(Field.value.replace( / /g , "") == "")
		{ 
			alert(Msg); 
			Field.focus(); 
			Field.value = "";
			return false; 
		} 
		return true;
	}


/***********************************************************************
 * input type="radio"¸¦ ²À ¼±ÅÃÀ» ÇÏµµ·Ï 
 *
 * ¿¹) if (!chkRadio(f , "Æû³×ÀÓ" , "°ü½ÉÀÖ´Â ºÐ¾ß¸¦ ¼±ÅÃÇØ ÁÖ¼¼¿ä.") ) ;
 */
	function ChkRadio(frm , Field , Msg)
	{
		FieldName = eval(frm.name + "." + Field);
		for (i = 0 ; i < FieldName.length ; i ++) 
		{
			if (FieldName[i].checked)
				return true; 
		}
		alert(Msg); 
		return false; 

	}

/***********************************************************************
 * input type="checkbox"¸¦ ²À ¼±ÅÃÀ» ÇÏµµ·Ï 
 *
 * ¿¹) if (!chkRadio(f , "Æû³×ÀÓ" , "°ü½ÉÀÖ´Â ºÐ¾ß¸¦ ¼±ÅÃÇØ ÁÖ¼¼¿ä.") ) ;
 */
	function ChkCheckBox(frm , Fields , Msg) 
	{   
		var total = 0;   
		var FieldName = eval(frm.name + "." + Fields);
		for (i = 0 ; i < FieldName.length ; i ++) 
		{
			if (FieldName[i].checked) 
			{
				total += 1; 
				return true;
			}
		}

		if (total <= 0) 
		{
			alert(Msg); 
			return false ;
		}
	}   

/***********************************************************************
 * ÀÔ·ÂÇÑ °ª¿¡ Æ¯¼öÇÑ ¹®ÀÚ°¡ ÀÖ´ÂÁö Ã¼Å© (Çã¿ë ÇÏÁö ¾ÊÀ»¶§)
 *
 * ¿¹) if (isChars(Æû³×ÀÓ , "*^%$#@!*&();")) 
 *      {
 *         alert("Æû³×ÀÓ¿¡´Â Æ¯¼öÇÑ ¹®ÀÚ¸¦ »ç¿ëÇÏ½Ç ¼ö ¾ø½À´Ï´Ù.");
 *		 }
 */
	function IsChars_( input , chars )
	{
		for (var i = 0; i < input.value.length; i ++) 
		{
		   if (chars.indexOf(input.value.charAt(i)) != -1)
			   return true;
		}
		return false;
	}
	


	function IsChars(field , pattern , Msg)
	{
		patten = eval(pattern); 
		if(!patten.test(field.value))
		{ 
			alert(Msg); 
			field.select(); 
			return false; 
		} 
		return true; 
	}



/***********************************************************************
 * ÀÔ·ÂÇÑ °ª¿¡ Æ¯¼öÇÑ ¹®ÀÚ°¡ ÀÖ´ÂÁö Ã¼Å© (Çã¿ë ÇÒ¶§)
 *
 * ¿¹) if (isOnlyChars(Æû³×ÀÓ , "°¡³ª´Ù")) 
 *      {
 *         alert("Æû³×ÀÓ¿¡´Â °¡³ª´Ù¸¸ »ç¿ëÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.");
 *		 }
 */
	function IsOnlyChars( input , chars ) 
	{
		for (var i = 0; i < input.value.length ; i++)
		{
		   if (chars.indexOf(input.value.charAt(i)) == -1)
			   return false;
		}
		return true;
	}

	


/************************************************************************
 * ÀÌ¸ÞÀÏ Á¤È®¼º Ã¼Å©
 */
	function ChkEmail(Str)
	{
		var Pattern = "^[^@ ]+@[a-zA-Z0-9-.]+.+[a-zA-Z0-9-.]";
		var Result = Str.value.match(Pattern); 
		if (Result != null) return true;
		else return false;
	}

	function ChkEmail_Split(Str)
	{
		var Pattern = "[a-zA-Z0-9-.]+.+[a-zA-Z0-9-.]";
		var Result = Str.value.match(Pattern); 
		if (Result != null) return true;
		else return false;
	}

/************************************************************************
 * ¿À´Ã ÀÌÀüÀÇ ³¯Â¥ Ã¼Å© 
 */
	function ChkDate(Year , Month , Day)
	{
        var Values = new Date( Year , Month , Day ); 
        var temp = new Date(); 
        var Todays = new Date(temp.getYear() , temp.getMonth()+1 , temp.getDate()); 
        var Diff = (Values.getTime() - Todays.getTime()) / (24*60*60*1000) 

        if ( Math.ceil(Diff) < 0) 
        { 
			return false;
        } 
		return true;
	}


/************************************************************************
 * ¼ýÀÚ¸¸ ÀÔ·Â °¡´É
 */
	function OnlyNumber(Input , Msg)
	{
		if (isNaN(Input.value))
		{
			alert(Msg);
			Input.value = Input.defaultValue;
			Input.select();
			return false;
		}
		return true;
	}

/************************************************************************
 * ¼ýÀÚ¸¸ ÀÔ·Â °¡´É
 */
	function ChkNumber(Input , Msg)
	{
		if (isNaN(Input.value))
		{
			alert(Msg);
			Input.select();
			return false;
		}
		return true;
	}


/************************************************************************
 * ÀÌ¹ÌÁö¸¸ ÀÔ·Â °¡´É
 */
	function ChkImgExt(Values)
	{	
		if (Values.replace(/ /g , "") != "")
		{
			if (Values.match(/\.(gif|jpg|jpeg|png|)$/i)) 
			{
				return true;
			}
		}
	}


/************************************************************************
 * ÀÔ·Â °¡´ÉÇÑ ±ÛÀÚ Ã¼Å©(¿µ¹®/ÇÑ±Û)
 *  maxlen : ÇÑ±Û±âÁØ(2byte)
 */
	function ChkStrLen(maxlen,field)
	{
	   var temp; //µé¾î¿À´Â ¹®ÀÚ°ª...
	   var msglen;
	   msglen = maxlen*2;
	   var value= field.value;
	   
	   l =  field.value.length; 
	   tmpstr = "" ;

	   if (l == 0)
	   {
		value = maxlen*2;
	   }
	   else 
	   {
		  for(k=0;k<l;k++)
		  {
			temp =value.charAt(k);
			if (escape(temp).length > 4) msglen -= 2;
		    else msglen--;
		
		   if(msglen < 0) 
		   {
	          alert("ÃÑ ¿µ¹® "+(maxlen*2)+"ÀÚ ÇÑ±Û " + maxlen + "ÀÚ ±îÁö º¸³»½Ç¼ö ÀÖ½À´Ï´Ù.");
			  field.value= tmpstr;
	          break;
		   }
		   else 
		   {
			   tmpstr += temp;
		    }
		 }
	   }
	 }

   /***********************************************************************
    * ±ÛÀÚ¼ö byte·Î ³Ñ°ÜÁÖ±â
    */	
	function getStrLength(s)
	{ 
		var len = 0; 
		if ( s == null ) return 0; 
		for( i = 0; i < s.length; i++) 
		{
			c = escape(s.charAt(i));
			if ( c.length == 1 ) len ++; 
			else if ( c.indexOf("%u") != -1 ) len += 2; 
			else if ( c.indexOf("%")  != -1 ) len += c.length/3; 
		} 
		return len; 
	}

   /***********************************************************************
    * ±ÔÄ¢¿¡ À§¹ÝµÇ´Â ¹®ÀÚ Á¦°Å
    */	
	function ExecValidText(str)
	{
    var prc_str = "";
    // check extended ascii value 
    for(i = 0;i < str.length ; i++)
    {
        if(str.charCodeAt(i) < 8200 || str.charCodeAt(i) > 8300)
            {prc_str += str.charAt(i);}
    }


    var rstr = prc_str ;
//    r_exp  = new RegExp("¡¡|&nbsp|&nbsp;|&#32;|&#32|&#8204;|&#8204","g");
    r_exp  = new RegExp("¡¡|.|&nbsp;|&nbsp|&shy;|&shy|&#[0-9]+[;]?","g");
    r_exp2 = new RegExp("[ ]+","g");
    rstr = rstr.replace(r_exp,"");
    rstr = rstr.replace(r_exp2," ");

    return rstr;
	}

/************************************************************************
 * ÁÖ¹Î µî·Ï ¹øÈ£ °Ë»ç
 */
   function ChkJumin(Jumin1 , Jumin2)
   {
		 temp=new Array;

		  total=0;
		  t=0;
		  b=0;
		  for(i=0;i<6;i++)	temp[i+1]=parseInt(Jumin1.substr(i,1)) 
		  for(i=0;i<7;i++)	temp[i+7]=parseInt(Jumin2.substr(i,1)) 
		  for(i=1;i<13;i++)	
		  {
				t=i+1
				if (t>=10)
		 			t=t%10+2
					b=temp[i]*t
					total=total+b
		  }

		  total2=total%11;
		  fin=11-total2;

		  if (fin>=10)
			fin=fin-10

		  m=temp[3]+temp[4];
		  d=temp[5]+temp[6];

		  if ((fin!=temp[13]) || m>13 || d>32 || (temp[7]<1 || temp[7]>4)) 
		  {
			return false;
		  }

		return true;	 
   }

/************************************************************************
 * »ç¾÷ÀÚ µî·Ï ¹øÈ£ °Ë»ç
 */
function ChkBizNumber(strNumb) 
{
    if (strNumb.length != 10)
	{
		return false ;
	}
	sumMod  =   0;
	sumMod  +=  parseInt(strNumb.substring(0,1));
	sumMod  +=  parseInt(strNumb.substring(1,2)) * 3 % 10;
	sumMod  +=  parseInt(strNumb.substring(2,3)) * 7 % 10;
	sumMod  +=  parseInt(strNumb.substring(3,4)) * 1 % 10;
	sumMod  +=  parseInt(strNumb.substring(4,5)) * 3 % 10;
	sumMod  +=  parseInt(strNumb.substring(5,6)) * 7 % 10;
	sumMod  +=  parseInt(strNumb.substring(6,7)) * 1 % 10;
	sumMod  +=  parseInt(strNumb.substring(7,8)) * 3 % 10;
	sumMod  +=  Math.floor(parseInt(strNumb.substring(8,9)) * 5 / 10);
	sumMod  +=  parseInt(strNumb.substring(8,9)) * 5 % 10;
	sumMod  +=  parseInt(strNumb.substring(9,10));

	if (sumMod % 10  !=  0) 
	{
		return false ;
	}
	return true;
}

function ChkFile(Values , Str)
{
	if (Values.replace(/ /g , "") != "")
	{
		if(Str == "Img")
		{
			if (Values.match(/\.(gif|jpg|jpeg|png|)$/i)) 
			{
				return true;
			}
		}
		else if (Str == "T")
		{
			if (Values.match(/\.(doc|docx|pdf|rtf|)$/i)) 
			{
				return true;
			}
		}
		else
		{

		}
	}	
}

function ChkFile_Validation(Values , Str)
{
	if (!ChkFile(Values , Str))
	{
		if (Str == "Img")
		{
			alert("Çã¿ëµÈ ÆÄÀÏ(gif,jpg,bmp,png)¸¸ ÆÄÀÏÃ·ºÎ ÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.");
			return;
		}
		else if (Str == "T")
		{
			alert("Çã¿ëµÈ ÆÄÀÏ(doc,docx,pdf)¸¸ ÆÄÀÏÃ·ºÎ ÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.");
			return;
		}
		else
		{
		}
	}
}
