
window.onload = function() {
	try {
		fnOnLoad();
	} catch(er) {
	}
}

window.onunload = function() {
	try {
		fnOnUnLoad();
	} catch(er) {
	}
}

/* URL에서 파라메터를 제외한 순수 URL만 얻는다 */
function getPureURL(_URL) {
	var strArry = _URL.split("?");
	return strArry[0];
}

// Enter Key가 입력되었을때 지정된 함수를 실행
function isEnterKey(Fnc) {
	if (event.keyCode == 13) {
		eval(Fnc);
	}
}


String.prototype.onlyHangul = function() {
	var i; 
	var ch;
	var str;
	str = (this != window ? this : str);
	for (i=0;i<str.length;i++) { 
	  if(!((str.charCodeAt(i) > 0x3130 && str.charCodeAt(i) < 0x318F) || (str.charCodeAt(i) >= 0xAC00 && str.charCodeAt(i) <= 0xD7A3))){
	   return true;
	  }
	}
	return false;
}

String.prototype.IsIdChar = function() {
	var i; 
	var ch;
	var str;
	var tempstr;
	tempstr = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
	str = (this != window ? this : str);
	for (i=0;i<str.length;i++) { 
	    if(tempstr.indexOf(str.charAt(i)) == -1) return false;
	}
	return true;
}

String.prototype.trim = function() {
	var str;
	str = (this != window) ? this : str;
	if (str == null) str = "";
	return str.replace(/^\s+/g,'').replace(/\s+$/g,'');
}

// 문자열의 Byte 수 구하기
String.prototype.getByte = function() {
	var str;
	var Cnt=0;
	str = this != window ? this : str;
	if (str == null) str = 0;

    for (var i=0;i<str.length;i++) {
		if (escape(str.charAt(i)).length > 4) {
			Cnt += 2;
		} else {
			Cnt++;
		}
	}
	return Cnt;
}

// 숫자의 자리수 설정
String.prototype.getIntCipher = function(Cnt) {
	var str;
	var i, ReturnValue="";
	str = this != window ? this : str;
	str = str + "";
	if (str.length < Cnt) {
		for(i=1; i<=Cnt-str.length; i++)
			ReturnValue += "0"		
	}
	return ReturnValue+str;
}


// 연번인지 체크 (숫자로만 구성)
String.prototype.isStNumber = function() {
	var str;
	str = (this != window ? this : str).trim();
	if (!str.isNumber() || !str.validateCipher(3, 4)) return false;

	var buf = new Array(30);
	var buf2 = new Array(30);
	var result = true;

	buf[0]	="000";
	buf[1]	="111";
//	buf[2]	="222";
	buf[3]	="333";
	buf[4]	="444";
//	buf[5]	="555";
	buf[6]	="666";
	buf[7]	="777";
	buf[8]	="888";
	buf[9]	="999";
	buf[10]	="012";
	buf[11]	="123";
	buf[12]	="234";
	buf[13]	="345";
	buf[14]	="456";
	buf[15]	="567";
	buf[16]	="678";
	buf[17]	="";
	buf[18]	="";
	buf[19]	="";
	buf[20]	="";
	buf[21]	="";
	buf[22]	="";
	buf[23]	="";
	buf[24]	="";
	buf[25]	="";
	buf[26]	="";
	buf[27]	="";
	buf[28]	="";
	buf[29]	="";

	buf2[0]		="0000";
	buf2[1]		="1111";
	buf2[2]		="2222";
	buf2[3]		="3333";
	buf2[4]		="4444";
	buf2[5]		="5555";
//	buf2[6]		="6666";
	buf2[7]		="7777";
	buf2[8]		="8888";
//	buf2[9]		="9999";
	buf2[10]	="0123";
	buf2[11]	="1234";
	buf2[12]	="2345";
	buf2[13]	="3333";
	buf2[14]	="4567";
	buf2[15]	="5678";
	buf2[16]	="6789";
	buf2[17]	="";
	buf2[18]	="";
	buf2[19]	="";
	buf2[20]	="";
	buf2[21]	="";
	buf2[22]	="";
	buf2[23]	="";
	buf2[24]	="";
	buf2[25]	="";
	buf2[26]	="";
	buf2[27]	="";
	buf2[28]	="";
	buf2[29]	="";

    for (i = 0; i < 30; i++){
		if (str.length==3){
			if (str==buf[i])	result=false;
		}else{
			if (str==buf2[i])	result=false;
		}
    }
		
	if(result==false){
		return false;
    }else{
        return true;
    }
}


// 문자열이 null 이거나 Blank("")인지 검사
String.prototype.isBlank = function() {
	var str;
	str = (this != window ? this : str);
	for(var i=0;i<str.length;i++) {
		if ((str.charAt(i)!=' ')
			&&(str.charAt(i)!="\t")
			&&(str.charAt(i)!="\n")
			&&(str.charAt(i)!="\r")) {
				return false;
		}
	}
	return true;
}

// 문자열에 공백이 포함되어 있는지 체크
String.prototype.isInSpace = function() {
	var str;
	str = (this != window ? this : str);
	return (str.indexOf(" ")==-1) ? false:true;
}

String.prototype.isDigit = function() {
	var str;
	str = (this != window ? this : str);
	if (str.length > 1) { return false; }
	var string="1234567890";
	if (string.indexOf(str)!=-1) { return true; }
	return false;
}

String.prototype.isInteger = function(){
	var str;
	str = (this != window ? this : str);
	if (str.isBlank()) { return false; }
	for (var i=0;i<str.length;i++) {
		alert(str.charAt(i));
		if (!str.charAt(i).isDigit) { return false; }
	}
	return true;
}

// 숫자로만 구성되어 있는지 체크
String.prototype.isNumber = function() {
	var str;
	str = (this != window ? this : str);
	if (str == "") {
		return false;
	}
	//return !isNaN(str);
	return !isNaN(str);
}

// 2Byte문자(한글)이 포함되어있는지 체크
String.prototype.isHangul = function() {
	var i; 
	var ch;
	var str;
	str = (this != window ? this : str);
	for (i=0;i<str.length;i++) { 
		ch = str.charAt(i);
		if (ch.getByte() > 1) {
			return true;
		}
	}
	return false;
}

// 자리수를 체크
String.prototype.validateCipher = function(minCnt, maxCnt) {
	var str;
	str = (this != window ? this : str);
	if ( (str.length >= minCnt) && (str.length <= maxCnt) ) {
		return true;
	}
	return false;
}

// 자리수를 체크(Byte)
String.prototype.validateCipherB = function(minCnt, maxCnt) {
	var str;
	str = (this != window ? this : str);
	if ( (str.getByte() >= minCnt) && (str.getByte() <= maxCnt) ) {
		return true;
	}
	return false;
}

// 주민등록번호 체크(숫자로만 구성)
String.prototype.validateJuminNo = function() {
	var str;
	str = (this != window ? this : str).trim();
	if (!str.isNumber() || !str.validateCipher(13, 13)) return false;
	var i=0;
	var sum=0;
	var birthYear = (str.charAt(6) <= "2") ? "19" : "20"; // 생년월일 유효성 체크
	birthYear += str.substr(0,2);
	var birthMonth = str.substr(2,2)-1;
	var birthDate = str.substr(4,2);
	var birthDay = new Date(birthYear, birthMonth, birthDate);
	if ( birthDay.getYear() % 100 != str.substr(0,2) || birthDay.getMonth() != birthMonth 
		|| birthDay.getDate() != birthDate ) {
		return false;
	}
	var buf = new Array(12); // Checksum
	for (i=0; i<6; i++) buf[i] = parseInt(str.charAt(i));
	for (i=6; i<13; i++) buf[i] = parseInt(str.charAt(i));
	var multipliers = [2,3,4,5,6,7,8,9,2,3,4,5];
	for (i=0, sum=0; i<12; i++) sum += (buf[i] *= multipliers[i]);
	if ((11-(sum % 11)) % 10 != buf[12]) {
		return false;
	}
	return true;
}

// 외국인등록번호 체크(숫자로만 구성)
String.prototype.validateFgnJuminNo = function() {
	var str;
	str = (this != window ? this : str).trim();
	if (!str.isNumber() || !str.validateCipher(13, 13)) return false;
    var sum = 0;
    var odd = 0;
	var buf = new Array(13); // Checksum
    for (i = 0; i < 13; i++) buf[i] = parseInt(str.charAt(i));
    odd = buf[7]*10 + buf[8];
    if (odd%2 != 0) {
      return false;
    }
    if ((buf[11] != 6)&&(buf[11] != 7)&&(buf[11] != 8)&&(buf[11] != 9)) {
      return false;
    }
    multipliers = [2,3,4,5,6,7,8,9,2,3,4,5];
    for (i = 0, sum = 0; i < 12; i++) sum += (buf[i] *= multipliers[i]);
    sum=11-(sum%11);
    if (sum>=10) sum-=10;
    sum += 2;
    if (sum>=10) sum-=10;
    if ( sum != buf[12]) {
        return false;
    }
    else {
        return true;
    }
}

// 법인등록번호 체크(숫자로만 구성)
String.prototype.validateCorpNo = function() {
	var str;
	str = (this != window ? this : str).trim();
	if (!str.isNumber() || !str.validateCipher(13, 13)) return false;
	var i=0;
	var sum=0;
	var buf = new Array(12); // Checksum
	for (i=0; i<6; i++) buf[i] = parseInt(str.charAt(i));
	for (i=6; i<13; i++) buf[i] = parseInt(str.charAt(i));
	var multipliers = [1,2,1,2,1,2,1,2,1,2,1,2];
	for (i=0, sum=0; i<12; i++) sum += (buf[i] *= multipliers[i]);
	if ((10-(sum % 10)) % 10 != buf[12]) {
		return false;
	}
	return true;
}

// 사업자등록번호 체크(숫자로만 구성)
String.prototype.validateBizNo = function() {
	var str;
	str = (this != window ? this : str).trim();
	if (!str.isNumber() || !str.validateCipher(10, 10)) return false;
	var i=0;
	var sum=0;
	var buf = new Array(10); // Checksum
	for (i=0; i<10; i++) buf[i] = parseInt(str.charAt(i));
	var multipliers = [0,3,7,0,3,7,0,3,0.5,0];
	for (i=0, sum=0; i<10; i++) {
		if (multipliers[i]==0) {
			sum += buf[i] + multipliers[i];
		} else {
			var tmpI = (buf[i] * multipliers[i]).toString();
			if (tmpI.indexOf(".") != -1) {
				var tmpA = tmpI.split(".");
				sum += parseInt(tmpA[0])+parseInt(tmpA[1]);
			} else {
				sum += parseInt(tmpI);
			}
		}
	}
	if ((sum % 10) != 0) return false;
	return true;
}

// 이메일 체크
String.prototype.validateEmail = function() {
	str = (this != window ? this : str).trim();
	var pattern = /^[_a-zA-Z0-9-\.]+@[\.a-zA-Z0-9-]+\.[a-zA-Z]+$/;
	return (pattern.test(str)) ? true : false;
}

// 이메일 체크1
String.prototype.validateEmail1 = function() {
	str = (this != window ? this : str).trim();
	var pattern = /^[_a-zA-Z0-9-\.]+[\.a-zA-Z0-9-]+\.[a-zA-Z]+$/;
	return (pattern.test(str)) ? true : false;
}

function generalOpenPopup(doc, winName, winX, winY, locX, locY, showMenubars, statusBar, showScrollbars) {
	if (winName != "") {
//		var popupWin = window.open(doc,winName, "top="+locY+",left="+locX+",width="+winX+",height="+winY+",menubar="+showMenubars+",status="+statusBar+",scrollbars="+showScrollbars);
		var popupWin = window.open(doc,winName, 'top='+locY+',left='+locX+',width='+winX+',height='+winY+',menubar='+showMenubars+',status='+statusBar+',scrollbars=yes');
		popupWin.focus();
	} else {
		window.open(doc,winName, "top="+locY+",left="+locX+",width="+winX+",height="+winY+",menubar="+showMenubars+",status="+statusBar+",scrollbars="+showScrollbars);
	}
}

/* 화면중앙에 팝업창을 연다. */
function openPopupCenter(doc, winName, winWidth, winHeight, showScrollbars) {
	generalOpenPopup(doc, winName, winWidth, winHeight, (screen.width)/2-(winWidth/2), (screen.height)/2-(winHeight/2), "no", showScrollbars);
}

/* 지정된 위치에 팝업창을 연다. */
function openPopup(doc, winName, winWidth, winHeight, locX, locY, showScrollbars) {
	generalOpenPopup(doc, winName, winWidth, winHeight, locX, locY, "no", showScrollbars);
}

var FRM_CHK_ERR_MSG = ""; // 에러메세지 문자열이 담길 변수1
var FRM_CHK_ERR_MSG1 = ""; // 에러메세지 문자열이 담길 변수2
var FRM_CHK_ERR_MSG_PRINT = true; // 에러메세지를 출력할지여부
var FRM_ENABLE_VALIDATE = true; // validate 체크를 할지의 여부
var FRM_NAME;
var FRM_ELEMENT;
var FRM_ELEMENT_TITLE = "";
var RESTRICTED_EMAIL = new Array("hanmail.net", "hanmail.com", "daum.net", "daum.co.kr");
	
// 에러메세지 출력여부를 설정
function setPrintFrmErrMsg(print) {
	FRM_CHK_ERR_MSG_PRINT = print;
}

// validate 체크를 할지의 여부를 설정
function setEnableValidate(chk) {
	FRM_ENABLE_VALIDATE = chk;
}

// 에러메세지 출력
function FRM_ELEMENT_Error() {
	if (FRM_ELEMENT_TITLE == "") {
		FRM_ELEMENT_TITLE = FRM_ELEMENT.name;
	}
	if (FRM_CHK_ERR_MSG_PRINT) {
		if (FRM_CHK_ERR_MSG1 == "") {
			alert("\""+FRM_ELEMENT_TITLE+"\""+FRM_CHK_ERR_MSG);
		} else {
			alert(FRM_CHK_ERR_MSG1);
		}
		FRM_ELEMENT_TITLE = "";
		FRM_CHK_ERR_MSG = "";
		FRM_CHK_ERR_MSG1 = "";
		setFocus(FRM_ELEMENT);
	}
}

// 메세지 출력시 해당 Form의 이름을 지정
function FRM_ELEMENT_title(title) {
	FRM_ELEMENT_TITLE = title;
	return true;
}

// 해당 Form의 필수여부 체크
function FRM_ELEMENT_required(msg) {
	var runFunc = "FRM_ELEMENT.value.isBlank()";
	if (FRM_ELEMENT.type == "radio" || FRM_ELEMENT.type == "checkbox") {
		runFunc = "getFrmCheckedCnt(FRM_NAME[FRM_ELEMENT.name]) == 0";
	}
	if (eval(runFunc)) {
		FRM_CHK_ERR_MSG = "은(는) 필수항목입니다.";
		if (msg != undefined) {
			FRM_CHK_ERR_MSG1 = msg;
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;
}


function FRM_ELEMENT_allFill(msg, _count) {
	var i;
	var mStr = "";
	var preStr = FRM_ELEMENT.name.substring(0, FRM_ELEMENT.name.length-1);
	for(i=1; i<=_count; i++) {
		mStr += FRM_NAME[preStr+i].value;
	}
	if (mStr != "") {
		for(i=1; i<=_count; i++) {
			if (FRM_NAME[preStr+i].value.isBlank()) {
				FRM_CHK_ERR_MSG = "은(는) 필수항목입니다.";
				if (msg != undefined) {
					FRM_CHK_ERR_MSG1 = msg;
				}
				FRM_ELEMENT_Error();
				return false;
			}
		}
	}
	return true;
}

function FRM_ELEMENT_ageChk(msg, regcode1, regcode2, minAge, maxAge) {
	var today;
	var y;
	var tmpStr;
	var birthYear;
	var realAge;
	var result;
	var minErrStr;
	var maxErrStr;

	today=new Date();
	y=today.getYear();
	today=y;
	today=Number(today);

	Regcode=regcode1+regcode2;

	if(Number(regcode2.substring(0,1))>2){
		tmpStr="20";
	}else{
		tmpStr="19";
	}

	birthYear=tmpStr+regcode1.substring(0,2);
	realAge=Number(y)-Number(birthYear)+1;
	result="0";
	if (minAge!=""){
		if (realAge<Number(minAge)){
			result="1";
		}
		minErrStr="세이상 ";
	}else{
		minErrStr="";
	}
	if (maxAge!=""){
		if (realAge>Number(maxAge)){
			result="1";
		}
		maxErrStr="세이하 ";
	}else{
		maxErrStr="";
	}


	switch(Regcode){
		case "6207271841116": case "7707132120123": case "7801252235612": case "8407272814918": 
			alert("이벤트에 참여 하실 수 없습니다.");selfClose();
			return false;
			break;
	}


	if (result=="1"){
		FRM_CHK_ERR_MSG = msg+"는 "+minAge+minErrStr+maxAge+maxErrStr+"입니다.";
		alert(FRM_CHK_ERR_MSG);
		return false;
	}else{
		return true;
	}
}


////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

function FRM_ELEMENT_ageChkF(str,minage,maxage){
	if(str < minage || str > maxage){
		alert("참여나이는 "+minage+"세이상 "+maxage+"세이하 입니다..");
		setFocus(FRM_ELEMENT);
		return false;
	}else{
		return true;
	}
}

function FRM_ELEMENT_ageChkMin(str,minage){
	if(str < minage ){
		alert("참여나이는 "+minage+"세이상 입니다..");
		setFocus(FRM_ELEMENT);
		return false;
	}else{
		return true;
	}
}

function FRM_ELEMENT_ageChkMax(str,maxage){
	if(str > maxage){
		alert("참여나이는 "+maxage+"세이하 입니다..");
		setFocus(FRM_ELEMENT);
		return false;
	}else{
		return true;
	}
}

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//// 자음/모음//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function FRM_ELEMENT_Consonant(str){
	if (str.replace(/^[가-힣 ]*$/,'') != '') {
		FRM_CHK_ERR_MSG = "을 정확히 입력해 주세요.";		
		FRM_ELEMENT_Error();
		return false;
	}
	return true;
}


function FRM_ELEMENT_ageChkFH(str,MINAGE,MAXAGE){
	if(str < MINAGE){
		alert("참여나이는"+MINAGE+"세이상"+MAXAGE+"세이하 입니다.");
		setFocus(FRM_ELEMENT);
		return false;
	}else if(str > MAXAGE){
		alert("참여나이는"+MINAGE+"세이상"+MAXAGE+"세이하 입니다.");
		setFocus(FRM_ELEMENT);
		return false;
	}
	return true;
}




////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//자음모음 제어.
function FRM_ELEMENT_KoreanOnlyF(objj){
	var Charr=objj;
	if(Charr==null) return false;

	for(var i=0;i<Charr.length;i++){
		var c=Charr.charCodeAt(i);
		if(!((0xAC00 <=c&& c <= 0xD7A3) || (0x3131 <= c && c <= 0x318E))){
			alert('이름을 정확하게 입력해 주세요.^^');
			return false;
		}else{
			return true;
		}
	}
	return true;
}


// 입력받을 값의 최소값가 최대값을 지정
function FRM_ELEMENT_cipher(minCnt, maxCnt, msg) {
	if (FRM_ELEMENT.value.isBlank()) return true;
	var runFunc = "!FRM_ELEMENT.value.validateCipher(minCnt, maxCnt)";
	if (FRM_ELEMENT.type == "radio" || FRM_ELEMENT.type == "checkbox") {
		runFunc = "!((getFrmCheckedCnt(FRM_NAME[FRM_ELEMENT.name]) >= minCnt) && (getFrmCheckedCnt(FRM_NAME[FRM_ELEMENT.name]) <= maxCnt))";
	}
	if (eval(runFunc)) {
		if (minCnt == maxCnt) {
			FRM_CHK_ERR_MSG = "은(는) "+maxCnt+"자리로 입력하셔야 합니다.";
			if (FRM_ELEMENT.type == "radio" || FRM_ELEMENT.type == "checkbox") {
				FRM_CHK_ERR_MSG = "은(는) "+maxCnt+"개를 선택해야 합니다.";
			}
		} else {
			FRM_CHK_ERR_MSG = "은(는) "+minCnt+"글자이상 "+maxCnt+"글자이하로 입력하셔야 합니다.";
			if (FRM_ELEMENT.type == "radio" || FRM_ELEMENT.type == "checkbox") {
				FRM_CHK_ERR_MSG = "은(는) "+minCnt+"개이상 "+maxCnt+"개이하로 선택해야 합니다.";
			}
		}
		if (msg != undefined) {
			FRM_CHK_ERR_MSG1 = msg;
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;	
}

// 입력받을 값의 최소값가 최대값을 지정(Byte 계산)
function FRM_ELEMENT_cipherB(minCnt, maxCnt, msg) {
	if (FRM_ELEMENT.value.isBlank()) return true;
	var runFunc = "!FRM_ELEMENT.value.validateCipherB(minCnt, maxCnt)";
	if (eval(runFunc)) {
		if (minCnt == maxCnt) {
			FRM_CHK_ERR_MSG = "은(는) "+maxCnt+"자리로 입력하셔야 합니다.";
		} else {
			FRM_CHK_ERR_MSG = "은(는) "+minCnt+"글자이상 "+maxCnt+"글자이하로 입력하셔야 합니다.";
		}
		if (msg != undefined) {
			FRM_CHK_ERR_MSG1 = msg;
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;	
}

// 공백이 포함되지 않아야 하는 조건을 체크
function FRM_ELEMENT_notInBlank(msg) {
	if (FRM_ELEMENT.value.isInSpace()) {
		FRM_CHK_ERR_MSG = "은(는) 공백을 포함할 수 없습니다.";
		if (msg != undefined) {
			FRM_CHK_ERR_MSG1 = msg;
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;
}

// 연번인지 체크
function FRM_ELEMENT_stNumber(msg) {
	if (!FRM_ELEMENT.value.isStNumber()) {
		FRM_CHK_ERR_MSG = "은(는) 연번을 입력하실수 없습니다. 관리자에게 문의하여 주십시오.";
		if (msg != undefined) {
			FRM_CHK_ERR_MSG1 = msg;
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;
}



// 숫자로만 구성되어야 하는 조건을 체크
function FRM_ELEMENT_onlyNumber(msg) {
	if (!FRM_ELEMENT.value.isNumber()) {
		FRM_CHK_ERR_MSG = "은(는) 숫자만 입력하셔야 합니다.";
		if (msg != undefined) {
			FRM_CHK_ERR_MSG1 = msg;
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;
}

// 주민등록번호 유효성 체크(두개로 나뉜 폼)
function FRM_ELEMENT_juminNo(msg, divType) {
	if (divType == undefined) {
		divType = true;
	}
	var preStr = FRM_ELEMENT.name.substring(0, FRM_ELEMENT.name.length-1);
	var jumin;
	if (divType) {
		jumin = FRM_NAME[preStr+"1"].value + FRM_NAME[preStr+"2"].value
	} else {
		jumin = FRM_ELEMENT.value.replace(/-/g, "");
	}
	if (jumin.isBlank()) return true;
	// 유효성 체크
	if (!jumin.validateJuminNo()) {
		FRM_CHK_ERR_MSG = "가 올바르지 않습니다.";
		if (msg != undefined) {
			if (msg != null) {
				FRM_CHK_ERR_MSG1 = msg;
			}
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;
}

// 법인등록번호 유효성 체크(두개로 나뉜 폼)
function FRM_ELEMENT_corpNo(msg, divType) {
	if (divType == undefined) {
		divType = true;
	}
	var preStr = FRM_ELEMENT.name.substring(0, FRM_ELEMENT.name.length-1);
	var jumin;
	if (divType) {
		jumin = FRM_NAME[preStr+"1"].value + FRM_NAME[preStr+"2"].value
	} else {
		jumin = FRM_ELEMENT.value.replace(/-/g, "");
	}
	if (jumin.isBlank()) return true;
	// 유효성 체크
	if (!jumin.validateCorpNo()) {
		FRM_CHK_ERR_MSG = "가 올바르지 않습니다.";
		if (msg != undefined) {
			if (msg != null) {
				FRM_CHK_ERR_MSG1 = msg;
			}
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;
}

// 사업자등록번호 유효성 체크
function FRM_ELEMENT_bizNo(msg, divType) {
	if (divType == undefined) {
		divType = true;
	}
	var frmStr = FRM_ELEMENT.form.name;
	var preStr = FRM_ELEMENT.name.substring(0, FRM_ELEMENT.name.length-1);
	var biz;
	if (divType) {
		biz = eval(frmStr+"."+preStr+"1.value") + eval(frmStr+"."+preStr+"2.value") + eval(frmStr+"."+preStr+"3.value");
	} else {
		biz = FRM_ELEMENT.value.replace(/-/g, "");
	}
	if (biz.isBlank()) return true;
	// 유효성 체크
	if (!biz.validateBizNo()) {
		FRM_CHK_ERR_MSG = "가 올바르지 않습니다.";
		if (msg != undefined) {
			FRM_CHK_ERR_MSG1 = msg;
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;
}

// 이메일 유효성 체크
function FRM_ELEMENT_email(msg) {
	if (FRM_ELEMENT.value.isBlank()) return true;
	if (!FRM_ELEMENT.value.validateEmail()) {
		FRM_CHK_ERR_MSG = "주소가 올바르지 않습니다.";
		if (msg != undefined) {
			FRM_CHK_ERR_MSG1 = msg;
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;
}


// 이메일 유효성 체크1
function FRM_ELEMENT_email1(msg) {
	if (FRM_ELEMENT.value.isBlank()) return true;
	if (!FRM_ELEMENT.value.validateEmail1()) {
		FRM_CHK_ERR_MSG = "주소가 올바르지 않습니다.";
		if (msg != undefined) {
			FRM_CHK_ERR_MSG1 = msg;
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;
}




// 입력불가 이메일 체크
function FRM_ELEMENT_restrictedEmail(msg) {
	if (FRM_ELEMENT.value.isBlank()) return true;
	var email = FRM_ELEMENT.value.split("@");
	var chk = false;
	for(var i =0; i<RESTRICTED_EMAIL.length; i++) {
		if (RESTRICTED_EMAIL[i] == email[1]) {
			chk = true;
			break;
		}
	}	
	if (chk) {
		FRM_CHK_ERR_MSG = "은 "+email[1]+"의 메일을 사용할 수 없습니다.";
		if (msg != undefined) {
			FRM_CHK_ERR_MSG1 = msg;
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;
}

// 전화번호 유효성 체크
function FRM_ELEMENT_phone(msg) {
	var preStr = FRM_ELEMENT.name.substring(0, FRM_ELEMENT.name.length-1);
	var phone = FRM_NAME[preStr+"1"].value + FRM_NAME[preStr+"2"].value + FRM_NAME[preStr+"3"].value
	if (phone.isBlank()) return true;
	// 유효성 체크
	if (!phone.isNumber() || !phone.validateCipher(9, 11)) {
		FRM_CHK_ERR_MSG = "가 올바르지 않습니다.";
		if (msg != undefined) {
			FRM_CHK_ERR_MSG1 = msg;
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;
}

// 날짜 체크 YYYYMMDDgetIntCipher
function FRM_ELEMENT_date(msg) {
	var progressChk="";
	var frmStr = FRM_ELEMENT.form.name;
	var preStr = FRM_ELEMENT.name.substring(0, FRM_ELEMENT.name.length-1);
	var dateStr = eval(frmStr+"."+preStr+"1.value") + eval(frmStr+"."+preStr+"2.value") + eval(frmStr+"."+preStr+"3.value");
	if (dateStr.isBlank()) return true;
	if (dateStr.isNumber()) {
		eval(frmStr+"."+preStr+"1.value=\""+getIntCipher(Number(eval(frmStr+"."+preStr+"1.value")),4)+"\"");
		eval(frmStr+"."+preStr+"2.value=\""+getIntCipher(Number(eval(frmStr+"."+preStr+"2.value")),2)+"\"");
		eval(frmStr+"."+preStr+"3.value=\""+getIntCipher(Number(eval(frmStr+"."+preStr+"3.value")),2)+"\"");
		dateStr = getIntCipher(Number(eval(frmStr+"."+preStr+"1.value")),4) + getIntCipher(Number(eval(frmStr+"."+preStr+"2.value")),2) + getIntCipher(Number(eval(frmStr+"."+preStr+"3.value")),2);
		var cd = new Date(Number(eval(frmStr+"."+preStr+"1.value")), Number(eval(frmStr+"."+preStr+"2.value")), 0);
		if ( (Number(eval(frmStr+"."+preStr+"2.value")) <=0) || (Number(eval(frmStr+"."+preStr+"2.value")) >12) || (Number(eval(frmStr+"."+preStr+"3.value")) <=0) || (Number(eval(frmStr+"."+preStr+"3.value")) > cd.getDate()) ) {
			progressChk="N";
		}
	}
	// 유효성 체크
	if (!dateStr.isNumber() || !dateStr.validateCipher(8, 8) || progressChk == "N") {
		FRM_CHK_ERR_MSG = "이(가) 올바르지 않습니다.";
		if (msg != undefined) {
			FRM_CHK_ERR_MSG1 = msg;
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;
}

// 두개의 폼값이 같은지 비료
function FRM_ELEMENT_duplicate(msg) {
	var frmStr = FRM_ELEMENT.form.name;
	var preStr = FRM_ELEMENT.name;
	var mStr = eval(frmStr+"."+preStr+".value") + eval(frmStr+".re_"+preStr+".value");
	if (mStr.isBlank()) return true;
	// 유효성 체크
	if (eval(frmStr+"."+preStr+".value") != eval(frmStr+".re_"+preStr+".value")) {
		FRM_CHK_ERR_MSG = "가 일치하지 않습니다.";
		if (msg != undefined) {
			FRM_CHK_ERR_MSG1 = msg;
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;
}

// 폼값을 대문자로 변환
function FRM_ELEMENT_translateUppercase() {
	FRM_ELEMENT.value = FRM_ELEMENT.value.toUpperCase();
	return true;
}

// 폼값을 소문자로 변환
function FRM_ELEMENT_translateLowercase() {
	FRM_ELEMENT.value = FRM_ELEMENT.value.toLowerCase();
	return true;
}

// 한글사용금지 체크
function FRM_ELEMENT_notUseHangul(msg) { 
	if (FRM_ELEMENT.value.isHangul()) {
		FRM_CHK_ERR_MSG = "(은)는 한글이 포함될 수 없습니다.";
		if (msg != undefined) {
			FRM_CHK_ERR_MSG1 = msg;
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;
} 

// 한글만사용 체크
function FRM_ELEMENT_onlyUseHangul(msg) { 
	if (FRM_ELEMENT.value.onlyHangul()) {
		FRM_CHK_ERR_MSG = "(은)는 한글만 사용할 수 있습니다.";
		if (msg != undefined) {
			FRM_CHK_ERR_MSG1 = msg;
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;
} 


// 영문, 숫자만 사용가능
function FRM_ELEMENT_idCharChk(msg) { 
	if (FRM_ELEMENT.value.IsIdChar()==false) {
		FRM_CHK_ERR_MSG = "(은)는 영문과 숫자만 사용할 수 있습니다.";
		if (msg != undefined) {
			FRM_CHK_ERR_MSG1 = msg;
		}
		FRM_ELEMENT_Error();
		return false;
	}
	return true;
} 

// 폼체크 함수
function validate(frm) {
	var Hp1=frm.HP1.value;
	var Hp2=frm.HP2.value;
	var Hp3=frm.HP3.value;
	
	switch(Hp1+Hp2+Hp3){
		case "01032323232": //전체 이벤트 참여제외 2009-05-12 오후 6:00
			alert("참여하실 수 없습니다.");
			break;
		default:
			if (!FRM_ENABLE_VALIDATE) return false;
		// Form 요소를 가져오기
				FRM_NAME = frm;
			for (var i = 0; i < frm.elements.length; i++ ) {
				var el = frm.elements[i];		
				FRM_ELEMENT = el;
				FRM_ELEMENT_TITLE = "";
			// 검사를 하지 않을 폼 걸러내기
				if (el.alt == undefined || el.alt == "" || el.disabled) continue;
					optionAry = el.alt.split("|");
				for(var j=0; j<optionAry.length; j++) {
					if (!eval("FRM_ELEMENT_"+optionAry[j])) {
					return false;
				}
			}
		}
		return true;
	}	
}



// Key 입력에 따른 Focus 자동 이동(예 : 주민등록번호)
function autoFocus(curFrm, nxtFrm, cnt) {
	var object=eval("document."+curFrm)
	var object2=eval("document."+nxtFrm)

	if(object.value.length == cnt) {
		setFocus(object2);
	}
}

// 해당길이만큼 입력되면 실행되는 함수 (예 : 주민번호1-> 생년월일)
function autoDateChk(curFrm, frmYear, frmMonth, frmDay, cnt ) {
	var selYear;
	var selMonth;
	var selDay;

	var object=eval("document."+curFrm);
	var targetYear=eval("document."+frmYear);
	var targetMonth=eval("document."+frmMonth);
	var targetDay=eval("document."+frmDay);

	

	if(object.value.length == cnt) {
		selYear="19"+object.value.substring(0,2);
		selMonth=Number(object.value.substring(2,4));
		selDay=Number(object.value.substring(4,6));

		setOptionValue(targetYear, selYear);
		setOptionValue(targetMonth, selMonth);
		setOptionValue(targetDay, selDay);
	}
}

// Radio/checkbox 버튼의 선택값
function getFrmCheckedValue(frm) {
	if (frm[0] == undefined) {
		if (frm.checked) {
			return frm.value;
		}
	} else {
		for(var i=0;i<frm.length;i++) {
			if (frm[i].checked) {
				return frm[i].value;
			}
		}
	}
	return null;
}

function setRCFrmAlt(frm, str) {
	if (frm[0] == undefined) {
		frm.alt = str;
	} else {
		frm[0].alt = str;
	}
}

// Radio/checkbox 버튼의 선택개수
function getFrmCheckedCnt(frm) {
	var cnt=0;
	if (frm[0] == undefined) {
		if (frm.checked) {
			cnt = 1;
		}
	} else {
		for(var i=0;i<frm.length;i++) {
			if (frm[i].checked) {
				cnt++;
			}
		}
	}
	return cnt;
}

// Checkbox의 전체 선택
function setFrmCheckboxSelectAll(frm) {
	if (frm[0] == undefined) {
		frm.checked = true;
	} else {
		for(var i=0;i<frm.length;i++) {
			frm[i].checked = true;
		}
	}
}

// Checkbox의 전체 선택해제
function setFrmCheckboxUnselectAll(frm) {
	if (frm[0] == undefined) {
		frm.checked = false;
	} else {
		for(var i=0;i<frm.length;i++) {
			frm[i].checked = false;
		}
	}
}

// Radio/Checkbox의 선택
function setFrmCheckboxselect(frm, value) {
	if (frm != undefined) {
		if (frm.length == undefined) {
			if (frm.value == value) frm.checked = true;
		} else {
			for(var i=0;i<frm.length;i++) {
				if (frm[i].value == value) frm[i].checked = true;
			}
		}
	}
}

function setFocus(frm) {
	if (frm.type != "radio" && frm.type != "checkbox" && frm.type != "select-one") {
		frm.select();
	}
	if (frm.type == "radio" || frm.type == "checkbox") {
		if (frm[0] == undefined) {
			frm.focus();
		} else {
			frm[0].focus();
		}
	} else {
		frm.focus();
	}
	return;
}