/**************************************
* ÀÛ¼º: °ÅÄ£¸¶·ç
* ¼öÁ¤: ¹Úµ¿¿ø
***************************************/

	function IsDigit() {

		// onkeydown="IsDigit()" style="ime-mode:disabled"
		if(
			((event.keyCode >= 48) && (event.keyCode <= 57)) ||	// keyboard
			((event.keyCode >= 96) && (event.keyCode <= 105)) ||	// keypad
			(event.keyCode == 9) ||	// tab
			(event.keyCode == 10)||	// enter
			((event.keyCode >= 35) && (event.keyCode <= 40)) ||	// arrow and home,end
			(event.keyCode == 45)||	(event.keyCode == 46)||	// insert, delete
			(event.keyCode == 8) ||	(event.keyCode == 144)	// BS, NumLock
			) {
				event.returnValue = true;
			} else {
				event.returnValue = false;
			}
	}


	function ByteCount(input) { 
		var i, j=0; 

		for(i=0;i<input.length;i++) { 

			val=escape(input.charAt(i)).length; 

			if(val== 6) j++; 
			j++; 
		} 
		return j; 
	}

	function trim( strValue )
	{
		var ReturnValue = "";

		if( strValue == "" )
					return "";

		for(var i=0;i<strValue.length;i++)
		{
				if(strValue.charAt(i) != " ")
					  ReturnValue = ReturnValue + strValue.charAt(i);
		}

		return ReturnValue;
	}

	function is_binNo(num) { 
		if(num.length != 10) {
			return false;
		}
		var reg = /([0-9]{3})-?([0-9]{2})-?([0-9]{5})/; 
		if (!reg.test(num)) return false; 
		num = RegExp.$1 + RegExp.$2 + RegExp.$3; 
		var cVal = 0; 
		for (var i=0; i<8; i++) { 
			var cKeyNum = parseInt(((_tmp = i % 3) == 0) ? 1 : ( _tmp  == 1 ) ? 3 : 7); 
			cVal += (parseFloat(num.substring(i,i+1)) * cKeyNum) % 10; 
		} 
		var li_temp = parseFloat(num.substring(i,i+1)) * 5 + '0'; 
		cVal += parseFloat(li_temp.substring(0,1)) + parseFloat(li_temp.substring(1,2)); 
		return (parseInt(num.substring(9,10)) == 10-(cVal % 10)%10); 
	} 

	function is_ssn(J) {
		var J1, J2, dash;

		J1 = J.substring(0,6);
		J2 = J.substring(6,6+7);


		if(J1 =="111111" || J2 =="1111118"){
			return false;
		} else {
			// ÁÖ¹Îµî·Ï¹øÈ£ 1 ~ 6 ÀÚ¸®±îÁöÀÇ Ã³¸®
			// ÁÖ¹Îµî·Ï¹øÈ£¿¡ ¼ýÀÚ°¡ ¾Æ´Ñ ¹®ÀÚ°¡ ÀÖÀ» ¶§ Ã³¸®
			for(i=0;i<J1.length;i++){
				if (J1.charAt(i) >= 0 && J1.charAt(i) <= 9) {
					// ¼ýÀÚ¸é °ªÀ» °öÇØ ´õÇÑ´Ù.
					if(i == 0){
						SUM = (i+2) * J1.charAt(i);
					}else{ 
						SUM = SUM +(i+2) * J1.charAt(i);
					}
				}else{
					// ¼ýÀÚ°¡ ¾Æ´Ñ ¹®ÀÚ°¡ ÀÖÀ» ¶§ÀÇ Ã³¸®
					return false;
				}
			}
			for(i=0;i<2;i++){
				// ÁÖ¹Îµî·Ï¹øÈ£ 7 ~ 8 ÀÚ¸®±îÁöÀÇ Ã³¸®
				if (J2.charAt(i) >= 0 && J2.charAt(i) <= 9) {
					SUM = SUM + (i+8) * J2.charAt(i);
				}else{
					// ¼ýÀÚ°¡ ¾Æ´Ñ ¹®ÀÚ°¡ ÀÖÀ» ¶§ÀÇ Ã³¸®
					return false;
				}
			}
			for(i=2;i<6;i++){
				// ÁÖ¹Îµî·Ï¹øÈ£ 9 ~ 12 ÀÚ¸®±îÁöÀÇ Ã³¸®
				if (J2.charAt(i) >= 0 && J2.charAt(i) <= 9) {
					SUM = SUM + (i) * J2.charAt(i);
				}else{
					// ¼ýÀÚ°¡ ¾Æ´Ñ ¹®ÀÚ°¡ ÀÖÀ» ¶§ÀÇ Ã³¸®
					return false;
				}
			}
			// ³ª¸ÓÁö ±¸ÇÏ±â
			var checkSUM = SUM % 11;
			// ³ª¸ÓÁö°¡ 0 ÀÌ¸é 10 À» ¼³Á¤
			if(checkSUM == 0){
				var checkCODE = 10;
				// ³ª¸ÓÁö°¡ 1 ÀÌ¸é 11 À» ¼³Á¤
			}else if(checkSUM ==1){
				var checkCODE = 11;
			}else{
				var checkCODE = checkSUM;
			}
			// ³ª¸ÓÁö¸¦ 11 ¿¡¼­ »«´Ù
			var check1 = 11 - checkCODE;
			if (J2.charAt(6) >= 0 && J2.charAt(6) <= 9) {
				var check2 = parseInt(J2.charAt(6))
			}else{
				// ¼ýÀÚ°¡ ¾Æ´Ñ ¹®ÀÚ°¡ ÀÖÀ» ¶§ÀÇ Ã³¸®
				return false;
			}
			if(check1 != check2){
				// ÁÖ¹Îµî·Ï¹øÈ£°¡ Æ²¸± ¶§ÀÇ Ã³¸®
				return false;
			}else{
				return true;
			} 
		}
	}

	function checkspace(id)
	{
		if (id.indexOf(" ") >= 0) return false;
		return true;
	}

	var issubmit = false;
	function FormCheck(form) { 
			var regNum =/^[0-9]+$/; 
			var regPhone =/^[0-9]{2,3}-[0-9]{3,4}-[0-9]{3,4}$/; 
			var regMail =/^[_a-zA-Z0-9-]+@[\._a-zA-Z0-9-]+\.[a-zA-Z]+$/; 
			var regDomain =/^ftp|http|https:\/\/[\.a-zA-Z0-9-]+\.[a-zA-Z]+$/; 
			var regAlpha =/^[a-zA-Z]+$/; 
			var regIdPass =/^[a-zA-Z0-9_/]+$/; 
			var regHost =/^[a-zA-Z-]+$/; 
			var regHangul =/[°¡-ÆR]/; 
			var regHangulOnly =/^[°¡-ÆR ]*$/; 
/*
			if(issubmit) {
				alert("Ã³¸®ÁßÀÔ´Ï´Ù. Àá½Ã¸¸ ±â´Ù·Á ÁÖ¼¼¿ä.");
				return false;
			}
*/
			for(var i = 0;i < form.elements.length;i++) { 
					var currEl = form.elements[i]; 

					if(currEl.getAttribute("required") != null) { 
							
						if (currEl.option == "check" && currEl.value == "")
						{
							return ErrMsg(currEl,'check',form); 
						}
							if (trim(currEl.value).length < 1) { 
									return ErrMsg(currEl,'',form); 
							} 
					}
					
					if(currEl.getAttribute("requireds") != null) { 
						
						if (trim(currEl.value).length < 1) { 
							alert(currEl.hname + " Ç×¸ñÀº ÇÊ¼öÀÔ´Ï´Ù.");
							return false;
						} 
					}
					
					if(currEl.getAttribute("option") != null && currEl.value != "") { 
							if(currEl.option == "email" && !regMail.test(currEl.value)) { 
									return ErrMsg(currEl, "email", form); 
							} 
							if(currEl.option == "domain" && !regDomain.test(currEl.value)) { 
									return ErrMsg(currEl, "domain", form); 
							} 
							if(currEl.option == "phone" && !regPhone.test(currEl.value)) { 
									return ErrMsg(currEl, "phone", form); 
							} 
							if(currEl.option == "hangul" && !regHangulOnly.test(currEl.value)) { 
									return ErrMsg(currEl, "hangul", form); 
							} 
							if(currEl.option == "idpass" && !regIdPass.test(currEl.value)) { 
									return ErrMsg(currEl, "idpass", form); 
							} 
							if(currEl.option == "number" && !regNum.test(currEl.value)) { 
									return ErrMsg(currEl, "number", form); 
							} 
							/*
							if(currEl.option == "ssn" && !is_ssn(currEl.value)) { 
									return ErrMsg(currEl, "ssn", form); 
							} */
							if(currEl.option == "binno" && !is_binNo(currEl.value)) { 
									return ErrMsg(currEl, "binno", form); 
							} 
					} 
					if(currEl.getAttribute("nospace") != null && !checkspace(currEl.value)) { 
							return ErrMsg(currEl, "nospace", form); 
					} 
					
					if(currEl.getAttribute("ssn") != null && currEl.value != "") { 
							ssameEI = eval("form." + currEl.ssn + ".value"); 
							chkju = ssameEI + currEl.value;

							if(!is_ssn(chkju)) { 
									return ErrMsg(currEl, "ssn", form); 
							} 

					} 
					
					if(currEl.getAttribute("ssame") != null && currEl.value != "") { 
							ssameEI = eval("form." + currEl.ssame + ".value"); 
							if(currEl.value != ssameEI) { 
									return ErrMsg(currEl, "ssame", form); 
							} 
					} 
					
					if(currEl.getAttribute("minsize") != null && currEl.value != "") { 
							if(currEl.minsize > ByteCount(currEl.value)) { 
									return ErrMsg(currEl, "minsize", form); 
							} 
					} 
					if(currEl.getAttribute("minlength") != null && currEl.value != "") { 
							if(currEl.minlength > ByteCount(currEl.value)) { 
									return ErrMsg(currEl, "minlength", form); 
							} 
					} 

					if(currEl.getAttribute("maxsize") != null && currEl.value != "") { 
							if(currEl.maxsize < ByteCount(currEl.value)) { 
									return ErrMsg(currEl, "maxsize", form); 
							} 
					} 					

					if(currEl.getAttribute("maxlength") != null && currEl.value != "") { 
							if(currEl.getAttribute("maxlength") < ByteCount(currEl.value)) { 
									return ErrMsg(currEl, "maxlength", form); 
							} 
					} 					
			} 
		//var msg = "ÀÔ·ÂÇÏ½Å ³»¿ëÀ» Àü¼ÛÇÏ½Ã°Ú½À´Ï±î?";
		//if (confirm(msg)) {
			issubmit=true;
			return true;
		//}
		//return false;

	} 
	function ErrMsg(el, type, form) { 
	    var bgColor = '#E1FFE1'; 
		var name = (el.hname) ? el.hname : el.name; 
		switch(type) { 
			case "ssame": 
					eval("var samename = (form."+el.ssame+".hname) ? form."+el.ssame+".hname : form."+el.ssame+".name");
					alert("'"+ name + "' Ç×¸ñÀº '" + samename + "' Ç×¸ñ°ú °°¾Æ¾ß ÇÕ´Ï´Ù."); 
					break; 
			case "email": 
					alert("'"+ name + "'ÀÇ Çü½ÄÀÌ ¿Ã¹Ù¸£Áö ¾Ê½À´Ï´Ù."); 
					break; 
			case "domain": 
					alert("'"+ name + "'ÀÇ Çü½ÄÀÌ ¿Ã¹Ù¸£Áö ¾Ê½À´Ï´Ù\n\n02-1234-5678Çü½ÄÀ¸·Î ÀÔ·ÂÇÏ¼¼¿ä."); 
					break; 
			case "phone": 
					alert("'"+ name + "'ÀÇ Çü½ÄÀÌ ¿Ã¹Ù¸£Áö ¾Ê½À´Ï´Ù"); 
					break; 
			case "number": 
					alert("'"+ name + "' Ç×¸ñÀº ¼ýÀÚ¸¸ ÀÔ·ÂÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.");
					break;
			case "hangul": 
					alert("'"+ name + "' Ç×¸ñÀº ÇÑ±Û¸¸ ÀÔ·ÂÇÒ ¼ö ÀÖ½À´Ï´Ù"); 
					break; 
			case "english": 
					alert("'"+ name + "' Ç×¸ñÀº ¿µ¹®¸¸ ÀÔ·ÂÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù"); 
					break; 
			case "idpass": 
					alert("'"+ name + "' items only English and number will be able to input"); 
					break; 
			case "minlength": 
					alert("'"+ name + "' Ç×¸ñÀº " + el.getAttribute("minlength") + "ÀÚ ÀÌ»óÀÌ¾î¾ß ÇÕ´Ï´Ù."); 
					break; 
			case "minsize": 
					alert("'"+ name + "' Ç×¸ñÀº " + el.getAttribute("minsize") + "ÀÚ ÀÌ»óÀÌ¾î¾ß ÇÕ´Ï´Ù."); 
					break; 
			case "maxsize": 
					alert("'"+ name + "' Ç×¸ñÀº " + el.getAttribute("maxsize") + "ÀÚ ÀÌÇÏÀÌ¾î¾ß ÇÕ´Ï´Ù."); 
					break; 
			case "maxlength": 
					alert("'"+ name + "' Ç×¸ñÀº " + el.getAttribute("maxlength") + "ÀÚ ÀÌÇÏÀÌ¾î¾ß ÇÕ´Ï´Ù."); 
					break; 
			case "ssn": 
					alert("ÁÖ¹Îµî·Ï¹øÈ£°¡ ¿Ã¹Ù¸£Áö ¾Ê½À´Ï´Ù."); 
					break; 
			case "binno": 
					alert("»ç¾÷ÀÚµî·Ï¹øÈ£°¡ ¿Ã¹Ù¸£Áö ¾Ê½À´Ï´Ù."); 
					break; 
			case "nospace": 
					alert("'"+ name+"' Ç×¸ñ¿¡´Â ºóÄ­ÀÌ ¿Ã ¼ö ¾ø½À´Ï´Ù."); 
					break; 
			case "check": 
					alert("To select '"+ name+"'"); 
					break; 
			default: 
					alert("To input '"+ name + "' items "); 
					break; 
		} 
		el.style.backgroundColor = bgColor;
		el.focus(); 
		return false; 
	} 

//##############################################################################//
// ÇÑ±Û/ ¼ýÀÚ¸¸ ÀÔ·Â¹Þ°Ô ÇÏ´Â ÇÔ¼ö
// STYLE="IME-MODE:ACTIVE;"		: ÇÑ±Û¸¸ kr
// STYLE="IME-MODE:DISABLED;"	: ¼ýÀÚ¸¸ nu
// STYLE="IME-MODE:INACTIVE;"	: ¿µ¹®¸¸ en
// À§ ½ºÅ¸ÀÏ°ú °°ÀÌ »ç¿ëÇÔ
//##############################################################################//
function onlyNumber() { 
if ( ((event.keyCode < 48) || (57 < event.keyCode)) && (45 != event.keyCode) ) event.returnValue=false; 
} 
function onlyHan() { 
if ( (event.keyCode > 0) ) event.keyCode = '0'; return false; 
} 


function searchzipcode(str) {
	if (str)
	{
		strs = "?trans="+str;
	}else{
		strs = "";
	}
	theURL = "/register/address.php" + strs;
	window.open(theURL,"searchzipcode","left=100,top=100,width=618,height=300,scrollbars");
}

function win_open(url, name, option) {
	var popup = window.open(url, name, option);
	popup.focus();
}

function checkForm(frm){

	if(FormCheck(frm) == false) {
		return false;
	}
	frm.submit();

}


function check_byte(obj, countstr) {
	
	sms_str = obj.value;

	String.prototype.cut = function(len)
	{
		var str = this;
		var l = 0;
		for (var i=0; i<str.length; i++)
		{
			l += (str.charCodeAt(i) > 128) ? 2 : 1;
			if (l > len) return str.substring(0,i);
		}
		return str;
	}

	String.prototype.bytes = function()
	{
		var str = this;
		var l = 0;
		for (var i=0; i<str.length; i++) l += (str.charCodeAt(i) > 128) ? 2 : 1;
		return l;
	}


	if (sms_str.bytes() > countstr)
	{
		alert("up to the 600~700words");

		obj.value = sms_str.cut(countstr);
		return;
	}
}
