//====================================
// ÁÖ¹Îµî·Ï¹øÈ£ °Ë»ç
//====================================
function id_no_chk(obj1,obj2)	
{
	// chksumID(obj1,obj2):CheckSum Ã¼Å©,ValidRegNo(obj1,obj2):»ý¼º±â·Î ¸¸µç°Ô ¾Æ´Ñ°¡ »ý³â¿ùÀÏ°ú ³²³àÇÊµå Ã¼Å©,ValidRegNo2(obj1):YYMMDD°¡ ¸Â´ÂÁö È®ÀÎÇÑ´Ù.
	if (chksumID(obj1,obj2) && ValidRegNo(obj1,obj2) && ValidRegNo2(obj1) ){
		return true;
	}else{
		alert('ÁÖ¹Îµî·Ï¹øÈ£ Çü½ÄÀÌ Æ²¸³´Ï´Ù.');
		return false;
	}
		
}

function ValidRegNo(obj1,obj2)	
{
	strReg1 = obj1.value;
	strReg2 = obj2.value;
	sGender = strReg2.substring(0,1);
	sYear = strReg1.substring(0,2);
	
	// µÎ¹øÂ° ´Ü¶ô Ã¹¹øÂ° ¼ýÀÚ´Â 4º¸´Ù Å¬ ¼ö ¾ø´Ù.
	if (sGender > 4) {
		return false;
	}
	
	// 2000³âµµ ÀÌÀüÀº ³²ÀÚ´Â 1, ¿©ÀÚ´Â 2
	// 2000³âµµ ÀÌÈÄ´Â ³²ÀÚ´Â 3, ¿©ÀÚ´Â 4
	if (sYear != '00') {
		if ((sGender != '1') && (sGender != '2')) {
			return false;
		}
	}
	
	return true;
}

// YYMMDD°¡ ¸Â´ÂÁö È®ÀÎÇÑ´Ù.
function ValidRegNo2(obj1)	
{
	strReg1 = obj1.value;

	a = new String(strReg1);

	if(a == '') return false;
	if(a.length != 6 ) return false;

	intYear = parseInt(a.substring(0,2) , 10);
	intMonth = parseInt(a.substring(2,4) , 10);
	intDay = parseInt(a.substring(4,6) , 10);
	
	if(intMonth < 0 || intMonth > 12){ 
		return false;
	}
		
	switch(intMonth){
		case 2 :
			if(intDay < 0 || intDay > 29){
				return false;
				breake;
			}
		case 4 :
			if(intDay < 0 || intDay > 30){
				return false;
				breake;
			}
		case 6 :
			if(intDay < 0 || intDay > 30){
				return false;
				breake;
			}
		case 9 :
			if(intDay < 0 || intDay > 30){
				return false;
				breake;
			}
		case 11 :
			if(intDay < 0 || intDay > 30){
				return false;
				breake;
			}
		default :
			if(intDay < 0 || intDay > 31){
				return false;
				breake;
			}
	}
	
	return true;
}

function chksumID(obj1,obj2)	
{
	str1 = obj1.value;
	str2 = obj2.value;
	var li_lastid,li_mod,li_minus,li_last;
	var value0,value1,value2,value3,value4,value5,value6;
	var value7,value8,value9,value10,value11,value12;
	
	if (IsInteger(str1) &&  IsInteger(str2)) {
		li_lastid    = parseInt(str2.substring(6,7));
		value0  = parseInt(str1.substring(0,1))  * 2;
		value1  = parseInt(str1.substring(1,2))  * 3;
		value2  = parseInt(str1.substring(2,3))  * 4;
		value3  = parseInt(str1.substring(3,4))  * 5;
		value4  = parseInt(str1.substring(4,5))  * 6;
		value5  = parseInt(str1.substring(5,6))  * 7;
		value6  = parseInt(str2.substring(0,1))  * 8;
		value7  = parseInt(str2.substring(1,2))  * 9;
		value8  = parseInt(str2.substring(2,3))  * 2;
		value9  = parseInt(str2.substring(3,4))  * 3;
		value10 = parseInt(str2.substring(4,5))  * 4;
		value11 = parseInt(str2.substring(5,6))  * 5;
		value12 = 0;
		
		value12 = value0+value1+value2+value3+value4+value5+value6+value7+value8+value9+value10+value11+value12 ;
		
		li_mod = value12 %11;
		li_minus = 11 - li_mod;
		li_last = li_minus % 10;
		if (li_last != li_lastid){
			obj2.select();
			obj2.focus();
			return false;
		} else
			return true;
	} else
	obj2.select();
	obj2.focus();
	return false;
}

//==================================
// ÁÖ¾îÁø ¹®ÀÚ¿­ÀÌ ¼ýÀÚ·Î¸¸ ÀÌ·ç¾îÁ®ÀÖ´ÂÁö °Ë»çÇÑ´Ù.
//==================================
function IsInteger(st) {
	if (!IsEmpty(st)) {
		for (j = 0; j < st.length; j++)
			if (((st.substring(j, j+1) < "0") || (st.substring(j, j+1) > "9")))
				return false;
	}
	else
		return false;
	return true;
}

//==================================
// ÁÖ¾îÁø ¹®ÀÚ¿­ÀÌ ºñ¾îÀÖ´ÂÁö °Ë»çÇÑ´Ù.
//==================================
function IsEmpty(toCheck) {
	var chkstr = toCheck + "";
	var is_Space = true;

	if (( chkstr == "") || (chkstr == null))
		return false;

	for (j = 0; is_Space && j < chkstr.length; j++) {
		if (chkstr.substring(j, j+1) != " ")
			is_Space = false ;
	}

	return is_Space;
}

	
//===================================
//	¼ýÀÚ¸¸ ÀÔ·Â
//===================================
function chkNumeric(objText) {
	var chrTmp;
	var strTmp = objText.value;
	var chkAlpha = false;
	var resString = '';

	for (var i=0; i<=strTmp.length; i++) {
	    chrTmp = strTmp.charCodeAt(i);
		if ((chrTmp <=47 && chrTmp > 31) || chrTmp >= 58) {
			chkAlpha = true;
		} else {
			resString = resString + String.fromCharCode(chrTmp);
		}
	}
	if (chkAlpha == true) {
		alert("¼ýÀÚ¸¸À» ÀÔ·ÂÇÏ¼¼¿ä");
		objText.value = resString;
		objText.focus();
		return false;
	}
	return true;
}


//===================================
//	Email Check Function
//===================================

function Chk_Email(obj_email) {
	var ln = obj_email.value.length;
	var chSpecial = false;
	var noMail = false;
	var chDotCnt = 0;
	var chAltCnt = 0;
	var preCh = "";

	for (var i=0; i<ln; ++i) {
		var ch = obj_email.value.charAt(i);
		if (ch == '-' ||ch == '_') continue;
		if (ch == '@') chAltCnt ++;
		if (ch == '.') chDotCnt ++;
		if (ch == '.' && chAltCnt == 0) noMail = true;
		if (ch == '.' && preCh == '@') noMail = true;
		if (ch == '.' && preCh == '.') noMail = true;
		if (ch == '.' || ch == '@') {
			preCh = ch;
			continue;
		}
		if (ch > 'z' || ch < '0' || ch == '^' || ch == ';' || ch == ':') chSpecial = true;
		if (ch == '\\' || ch == '`' || ch == '<' || ch == '>' || ch == '=' ) chSpecial = true;
		preCh = ch;
	}

	if(chSpecial) {
		alert("ÇÑ±Û, °ø¶õ, Æ¯¼ö¹®ÀÚ´Â EMail ÁÖ¼Ò·Î ÀÔ·ÂÇÒ ¼ö ¾ø½À´Ï´Ù.");
		obj_email.focus();
		return false;
	}

	if(chAltCnt>1 || ch=='.' || noMail) {
		alert("EMail ÁÖ¼Ò¸¦ Á¤È®È÷ ÀÔ·ÂÇÏ½Ê½Ã¿À.");
		obj_email.focus();
		return false;
	}

	if(chDotCnt<1 || chDotCnt>3) {
		alert("EMail ÁÖ¼Ò¸¦ Á¤È®È÷ ÀÔ·ÂÇÏ½Ê½Ã¿À.");
		obj_email.focus();
		return false;
	}
	return true;
}




//===================================
//	¾ÆÀÌµð ¿µ¹®ÀÚ¸¸ »ç¿ë
//===================================

function CheckEnglishOnly(field, info){
	var ln = field.value.length;
	var chSpecial = false;

	for (var i=0; i<ln; ++i) {
		var ch = field.value.charAt(i);
		if (ch == '-' ||ch == '_') continue;
		if (ch > 'z' || ch < '0' || ch == '^' || ch == ';' || ch == ':') chSpecial = true;
		if (ch == '\\' || ch == '`' || ch == '<' || ch == '>' || ch == '=' || ch == ' ' ) chSpecial = true;
	}
	
	if(chSpecial) {
		alert(info + "¶õÀº ÇÑ±Û, °ø¶õ, Æ¯¼ö¹®ÀÚ¸¦ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.\n¿µ¹®ÀÚ, ¼ýÀÚ, '-', '_'ÀÇ Á¶ÇÕÀ» »ç¿ëÇØÁÖ¼¼¿ä.");
		field.focus();
		return false;
	}
	else
		return true;
}






//==================================
// ºñ¹ø ºñ±³
//==================================
function check_pass (pass, repass){ 
	if ( pass.value != repass.value ){
		alert ("ºñ¹Ð¹øÈ£°¡ ÀÏÄ¡ ÇÏÁö ¾Ê½À´Ï´Ù.");
    	pass.focus();
    	return false; 
	}
	return true;
}


//==================================
// ±ÛÀÚ ¼ö Ã¼Å©
//==================================
function check_length (field , info, min_len, max_len){ 
	var field_len = field.value.length;
	if (min_len == max_len){
		if ( field_len != min_len){
			alert ( info + "¶õÀº " + min_len +"±ÛÀÚÀÌ¾î¾ß ÇÕ´Ï´Ù.");
			field.focus();
			return false;
		}
		else {
			return true;
		}
	}
	else {
		if ( field_len < min_len || field_len > max_len){
			alert ( info + "¶õÀÇ ±ÛÀÚ¼ö´Â "+ min_len + "ÀÚ ÀÌ»ó " + max_len + "ÀÚ ÀÌÇÏ¸¸ °¡´ÉÇÕ´Ï´Ù.\n\n ÀÔ·ÂÇÏ½Å ±ÛÀÚ¼ö´Â "+ field_len +"ÀÚ ÀÔ´Ï´Ù.");
			field.focus();
			return false; 
		}
		return true;
	}
}


//==================================
// ±ÛÀÚ ¹ÙÀÌÆ® Ã¼Å©
//==================================
function cal_byte(field, info, minbyte, maxbyte) {
	var tmpStr;
	var temp=0;
	var onechar;
	var tcount;
	tcount = 0;

	tmpStr = new String(field.value);
	temp = tmpStr.length;

	for (k=0;k<temp;k++){
		onechar = tmpStr.charAt(k);
		if (escape(onechar).length > 4) {
			tcount += 2;
		}
		else if (onechar!='\r') {
			tcount++;
		}
	}

	if(tcount<minbyte || tcount>maxbyte) {
		if (tcount < minbyte){
			alert(info + "´Â(Àº) " + minbyte + "¹ÙÀÌÆ® ÀÌ»ó ±âÀçÇØ¾ß ÇÕ´Ï´Ù.\n\nÇÑ±ÛÀº 1ÀÚ¿¡ 2byteÀÌ¸ç, ¿µ¹®Àº 1ÀÚ¿¡ 1byteÀÔ´Ï´Ù.");
		}
		else{
			reserve = tcount-maxbyte;
			alert(info + "´Â(Àº) " + maxbyte + "¹ÙÀÌÆ® ÀÌ»óÀº »ç¿ë ÇÒ ¼ö ¾ø½À´Ï´Ù.\n\n±âÀçÇÏ½Å ³»¿ëÀº "+reserve+"¹ÙÀÌÆ®°¡ ÃÊ°úµÇ¾ú½À´Ï´Ù."); 
		}
		field.focus();
		return false;
	}
	else
		return true;
}



//==================================
// ÁÖ¹Î¹øÈ£ ÇÕÄ¡±â
//==================================
function Hap_Jumin (Jumin1,Jumin2){
	return Jumin1.value + "-" + Jumin2.value;
}

//==================================
// ÀüÈ­¹øÈ£ ÇÕÄ¡±â
//==================================
function Hap_Tel (Tel1,Tel2,Tel3){
	return Tel1.value + "-" + Tel2.value + "-" + Tel3.value;
}

//==================================
// ¹®ÀÚ¿­ µÎ°³ ÇÕÄ¡±â
//==================================
function Hap_Txt(Txt1,Txt2){
	return Txt1.value + " " + Txt2.value;
}

//==================================
// Null°ª Ã¼Å© ÇÏ±â ½ÃÀÛ
//==================================
function CheckNullValue ( field , info ){ 
	if ( field.value == "" ){
		alert ( info + "À» ÀÔ·ÂÇÏ¼¼¿ä.");
    	field.focus();
    	return false; 
	}
	return true;
}

//==================================
// ±¸ºÐÀÚ·Î ¹®ÀÚ¿­ ÇÕÄ¡±â(È£Ãâ¹æ¹ý: Hap_Text(±¸ºÐÀÚ,ÇÊµå¸®½ºÆ®,....)
//==================================
function Hap_Text(){
	var ReturnTxt = "";
	var field_list = Hap_Text.arguments;
	for (var i=1;i < field_list.length - 1 ; i++ ){
		if(field_list[i].value == "") continue;
		ReturnTxt += field_list[i].value + field_list[0];
	}
	ReturnTxt += field_list[field_list.length - 1].value;
	return ReturnTxt;
}
