﻿
/*  Ntreev Global Script [ Input Validate / 2009-05-28 ]
*   Copyright (c) 2009 Ns, ALL right reserved.
*   Script by Su-hyung, park
*/
// Status
var bJoinFrame = false;
// Input Elements
var name = $F('username');
var ssn = $F('ssn'), encssn = $F('encssn');
var id = $F('userid');
var pass = $F('nowpass'), pass2 = $F('userpass'), pass3 = $F('userpass2'), passwd = $F('nowpass2');
var email1 = $F('emailId'), email2 = $F('emailSelect'), email3 = $F('emailDomain');
var mobile1 = $F('mobile1'), mobile2 = $F('mobile2'), mobile3 = $F('mobile3');
var phone1 = $F('phone1'), phone2 = $F('phone2'), phone3 = $F('phone3');
var captcha = $F('CaptchaText');
var qnq = $F('customQa'), qna = $F('customAs');

// SignUp Tables
var basicTable = $('#basicTable');
var attesTable = $('#attesTable');
var addTable = $('#additionTable');
var addBtn = $('#additionBtn');

// 실명인증결과 메세지
var sttestationMsg = [
    '<div class="confirm-guide-v2">실명임이 확인되었습니다</div>',
    '<div class="confirm-guide-v3"><p><strong class="normal">주민번호가 유효하지 않습니다.</strong> 다시 입력해 주세요. <br />신용정보가 등록되지 않은 상태라면 아래 버튼을 클릭해 주세요</p><ul class="name-confirm-btn"><li><a href="https://www.siren24.com/siren24/sse/jsp/sse01s_j30.jsp" title="성인 만 17세이상"><img src="$imagepath/GameTree/img/member/btn_adult_17.gif" alt="성인 만 17세이상" /></a></li><li><a href="https://www.siren24.com/siren24/sse/jsp/sse01s_j31.jsp" title="청소년 만 14-17세이상"><img src="$imagepath/GameTree/img/member/btn_teenager_14_17.gif" alt="청소년 만 14-17세이상" /></a></li><li><a href="http://www.siren24.com/siren24/sse/jsp/sse01s_j32.jsp" title="어린이 만 14세미만"><img src="$imagepath/GameTree/img/member/btn_child_14.gif" alt="어린이 만 14세미만" /></a></li></ul></div>',
    '<div class="confirm-guide-v3"><p>동일 주민번호로는 <strong>탈퇴일로부터 15일간 재가입이 불가능</strong>합니다.</p><ul class="day15"><li class="title">아이디</li><li class="data"><strong>$userId</strong></li><li class="title">탈퇴일</li><li class="data">$leaveDate</li><li class="title">재가입가능일</li><li class="data">$liveDate 이후가능</li></ul></div>',
    '<div class="confirm-guide-v3"><p>고객님께서는 본 사이트의 회원가입이 제한되어 있습니다.<br />자세한 상담을 원하실 경우 <strong class="normal">고객센터</strong>로 문의하여 주시기 바랍니다.</p><ul class="day15"><li class="title">TEL</li><li class="data2">1644-6010</li><li class="title">FAX</li><li class="data2">02-3452-6009</li><li class="title">운영시간</li><li class="data2">09:00-18:00 (월-금,토요일 및 공휴일 휴무)</li></ul></div>',
    '<div class="confirm-guide-v2">SIREN24에서 도용방지 설정을 일시 해제하신 후 실명확인을 해주시기 바랍니다.</div>',
    '<div class="confirm-guide-v3"><p><strong class="normal">변경된 약관에 동의가 안된 아이디입니다.  변경된 약관에 동의 후 이용해 주세요.</strong></p><ul class="day15"><li class="title">아이디</li><li class="data"><strong>$userId</strong></li><li class="title">가입사이트</li><li class="data">$joinSite</li></ul><ul class="name-confirm-btn"><li><a href="javascript:Ns.Login.go();" title="로그인"><img src="$imagepath/GameTree/img/member/btn_login_s.gif" alt="로그인" /></a></li><li><a href="javascript:void(0)" onclick="return Ns.popup(\'/Secure/Mypage/member/FindId.aspx\', \'win_findid\', 410, 215, event);" title="아이디/비밀번호 찾기"><img src="$imagepath/GameTree/img/member/btn_idpw_s.gif" alt="아이디/비밀번호 찾기" /></a></li></ul></div>',
    '<div class="confirm-guide-v3"><p><strong class="normal">아래와 같이 이미 가입된 정회원아이디가 있습니다. </strong></p><ul class="day15"><li class="title">아이디</li><li class="data"><strong>$userId</strong></li></ul><ul class="name-confirm-btn"><li><a href="javascript:Ns.Login.go();" title="로그인"><img src="$imagepath/GameTree/img/member/btn_login_s.gif" alt="로그인" /></a></li><li><a href="javascript:void(0)" onclick="return Ns.popup(\'/Secure/Mypage/member/FindId.aspx\', \'win_findid\', 410, 215, event);" title="아이디/비밀번호 찾기"><img src="$imagepath/GameTree/img/member/btn_idpw_s.gif" alt="아이디/비밀번호 찾기" /></a></li></ul></div>',
    '<div class="confirm-guide-v3"><p><strong class="normal">아직 본인인증이 완료되지 않은 아래 아이디부터 가입이 완료되어야 합니다.</strong><br />신분증 사본을 고객센터로 접수해 주시거나 [다른 수단으로 인증하기] 를 하시면 정회원가입이 완료됩니다.</p><ul class="day15"><li class="title">아이디</li><li class="data"><strong>$userId</strong></li><li class="title">가입일</li><li class="data">$regDate</li></ul><ul class="name-confirm-btn"><li><a href="javascript:void(1);" onclick="reAttestation(0)" title="다른수단으로 인증하기"><img src="$imagepath/GameTree/img/member/btn_alternative.gif" alt="다른수단으로 인증하기" /></a></li></ul></div>',
    '<div class="confirm-guide-v3"><p>고객님은 <strong class="normal">만 14세미만</strong>입니다.<br />만 14세미만 어린이회원으로 가입을 계속 하시려면, <strong class="normal">어린이회원 가입하기</strong> 버튼을 눌러주세요.</p><ul class="name-confirm-btn"><li><a href="/SignUp/JoinAgreementYoung.aspx" title="어린이회원 가입하기"><img src="$imagepath/GameTree/img/member/btn_join_young_s.gif" alt="어린이회원 가입하기" /></a></li></ul></div>',
    '<div class="confirm-guide-v3"><p>고객님은 <strong class="normal">만 14세이상</strong>입니다.<br />만 14세이상 일반회원으로 가입을 계속 하시려면, <strong class="normal">일반회원 가입하기</strong> 버튼을 눌러주세요.</p><ul class="name-confirm-btn"><li><a href="/SignUp/JoinAgreement.aspx" title="일반회원 가입하기"><img src="$imagepath/GameTree/img/member/btn_join_s.gif" alt="일반회원 가입하기" /></a></li></ul></div>',
	'<div class="confirm-guide-v3"><p><strong class="normal">아직 보호자동의가 완료되지 않은 아래 아이디부터 가입이 완료되어야 합니다.</strong><br />회원가입 시 발송된 보호자동의 메일 확인 후 동의절차를 진행해주시거나  [다른 수단으로 인증하기] 를 하시면<br />정회원가입이 완료됩니다.</p><ul class="day15"><li class="title">아이디</li><li class="data"><strong>$userId</strong></li><li class="title">가입일</li><li class="data">$regDate</li></ul><ul class="name-confirm-btn"><li><a href="javascript:void(0);" onclick="reAttestation(1)" title="다른수단으로 인증하기"><img src="$imagepath/GameTree/img/member/btn_alternative.gif" alt="다른수단으로 인증하기" /></a></li></ul></div>',
    '<div class="confirm-guide-v1"><img src="$imagepath/GameTree/img/member/icon_notice.gif" alt="느낌표" /> 2006년 9월 25일부터 시행된 ‘주민등록법’에 의해 타인의 주민등록번호를 도용하여 인터넷사이트에 가입하는 자는<br />3년이하의 징역 또는 1,000만원 이하의벌금이 부과될 수 있습니다.</div>'

];

// 툴팁 메세지
var tooltips = [
	[1, '이름을 입력해 주세요'],
	[1, '주민등록번호를 입력해주세요'],
	[1, '잘못된 주민등록번호 입니다'],
	[1, '아이디를 입력해 주세요'],
	[1, '한글 및 특수문자는 사용하실 수 없습니다'],
	[1, '4~15자의 영문 및 숫자만 사용하실 수 있습니다'],
	[1, '사용할 수 없는 아이디입니다'],
	[1, '<strong>사용 가능한 아이디입니다</strong>'],
	[1, '비밀번호를 입력해 주세요'],
	[2, '6~15자 영문 대소문자, 숫자,특수문자<br />조합으로 이용이 가능합니다.'],
	[2, '보안에 문제가 있는 비밀번호입니다<br />보다 안전한 비밀번호를 입력해 주세요'],
	[1, '<strong>사용 가능한 비밀번호입니다</strong>'],
	[1, '비밀번호를 한번 더 입력해 주세요'],
	[1, '입력한 비밀번호가 일치하지 않습니다'],
	[1, '<strong>입력한 비밀번호가 일치합니다</strong>'],
	[1, '이메일 주소를 정확히 입력해 주세요'],
	[1, '연락처를 정확히 입력해 주세요.'],
	[3, '자동가입방지 문자가<br />일치하지 않습니다'],
	[1, '질문에대한 답변을 입력해 주세요']
];

// INPUT 툴팁 및 액션 설정
function setInput(name, data) {
	if (!name) return;
	var input = name;
	var blank = data.blank || [];
	var tip = document.createElement('div');
	var tipArea = document.createElement('div');
	var hide = function() {
		setTimeout(function() { tipArea.style.display = 'none'; }, 0)
	}

	if (Ns.Agent.msie) {
	    var iframe = document.createElement('iframe');  // for IE6
	    iframe.src = '/signup/blank.html';
	    iframe.style.position = 'absolute';
	    iframe.style.bottom = '5px';
	    iframe.style.left = '0';
	    iframe.style.display = 'none';
	    iframe.style.filter = 'alpha(opacity=0)';
	    tipArea.appendChild(iframe);
	}

	// tipArea.appendChild(iframe);
	tipArea.className = 'tooltip';
	tipArea.appendChild(tip);
	input.parentNode.insertBefore(tipArea, input.parentNode.firstChild);
	Ns.Event.add(window, 'unload', function() { tip = tipArea = null });

	if (data.enter) $(input).keydown(function(e) { if (Ns.Event.keyCode(e) == 13) data.enter.apply(this) });
	if (data.action) $(input).focus(data.action).keyup(data.action).click(data.action);

	if (data.number) $(input).keydown(function(e) {
		if (!Ns.Event.isNumberKey(e) && !Ns.Event.isControlKey(e))
			Ns.Event.cancle(e);
	});

	if (data.tab) $(input).keyup(function(e){
		if (this.value.length == this.maxLength && !Ns.Event.isControlKey(e))
			this.next();
	});

	input.view = function(msg) {
	    var msg = msg || blank;
	    tip.innerHTML = msg[1] || '';
	    tip.className = 'alert-type' + msg[0];
	    tipArea.style.display = 'block';
	    if (Ns.Agent.msie) {
	        iframe.width = tip.clientWidth;
	        iframe.height = tip.clientHeight + 8;
	        iframe.style.display = 'block';
	    }
	    return false;
	}

	input.validate = function() {
	    if (data.action ? input.valid : input.value.split(" ").join("")) return true;
	    input.focus();	        
	    return this.view();
	}

	$(input).blur(hide).keyup(function(e) {
		if (!data.action && Ns.Event.keyCode(e) != 13) hide();
	});

	return input;
};

// 주민등록번호 유효성 검사
function isSsn(ssn) {
	var ssn = String(ssn);
	var source = ssn.split('');

	// ssn 패턴 검사
	if (!/^\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{7}$/.test(ssn))
		return false;

	var now = new Date();
	var year = ssn.substr(0, 2);
	var month = ssn.substr(2, 2);
	var day = ssn.substr(4, 2);

	switch (source[6]) {
		case "9": case "0": year = '18'+year; break;
        case "1": case "2": year = '19'+year; break;
        case "3": case "4": year = '20'+year; break;
        case "5": case "6": year = '21'+year; break;
        case "7": case "8": year = '22'+year; break;
	}
	var birth = new Date(year, month-1, day);

	// 현재날짜와 출생날짜 비교
	if (birth > now)
		return false;

	// ssn 유효성 검사
	var multi = [2,3,4,5,6,7,8,9,2,3,4,5];
	var parity = source[12];
	var sum = 0;

	for (var i=0; multi[i]; i++)
		sum += source[i] * multi[i];

	return (11 - ( sum % 11)) % 10 == parity;
};

// 이메일 유효성 검사
function isEmail(email) {
    return /^([\w-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([\w-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/.test(email)
        ? true
        : false;
};

// 전화번호 검사
function isPhone(p1, p2, p3) {
	return /\d{2,3}\-\d{3,4}\-\d{3,4}/.test(p1.value+'-'+p2.value+'-'+p3.value);
};


// 실명인증 : Ajax
// JSON field [ statusCode, userId, regDate, leaveDate, liveDate, joinSite ]
// statusCode [ 0 : 성공 / 1 : 실패 / 2 : 15일 이전 탈퇴 / 3 : 회원가입 제한 / 4 : 도용방지 / 5 : 기 가입자 약관 동의 이전 / 6 : 이미 가입된 회원 / 7 : 본인 인증이 전 / 8 : 14세미만이 일반가입을 시도 / 9 : 일반회원이 14세미만 가입을 시도 ]
function goAttestation(child) {

	if (!name.validate()) {
		return;
	}

	if ( !ssn.val() || !encssn.val() ) {
		ssn.view(tooltips[1]);
		ssn.select();
		return;
	}

	if ( !isSsn(ssn.val()+encssn.val()) ) {
		ssn.view(tooltips[2]);
		ssn.select();
		return;
	}

	//return setAttestation(child);
	var url = '/SignUp/RealNameValid.aspx';   // 실명인증 프로세스 url
	$('ul.name-confirm li.confirm-guide').html('<div class="confirm-guide-v1"><p>실명확인중입니다. 잠시만 기다려 주세요.</p></div>');	 // 처리중 표시
	setTimeout(function() {
	    Ns.Ajax.request(url, {
	    param: Ns.Form.serialize('username', 'ssn', 'encssn'),
	    onSuccess: setAttestation
	    });
	}, 200);

	return false;
};

// 다른수단인증
function reAttestation(isChild) {
    //attesTable.show('');   
	attesTable[0].style.display = '';
	$("#verifyFrame")[0].src = (isChild ? 'VerificationFrameYoung.aspx' : 'VerificationFrame.aspx') + '?' + new Date();
};

// 실명인증 : Ajax callback
function setAttestation(data) {
    //data = [{ statusCode: 10, userId: 'asdf**', regDate: '2008.01.01 22:22', leaveDate: '2009.01.01 23:11', liveDate: '2009.05.05 23:11', joinSite: '팡야 (<a href="#">http://pangya.gametree.co.kr/</a>)', imagePath: 'http://dev.public.gametree.co.kr', isChild: 'true' }];   
    if (typeof (data.length) != "undefined") {
        document.frames["JoinChkFrame"].fnAttestation(data);
    } else {
        if (!data || !(data.statusCode < 11))
            return alert('확인되지 않은 오류가 발생하였습니다. 고객센터로 문의해주세요.');

        $('ul.name-confirm li.confirm-guide').html(sttestationMsg[data.statusCode]
            .replace('$userId', data.userId || '')
            .replace('$regDate', data.regDate || '')
            .replace('$leaveDate', data.leaveDate || '')
            .replace('$liveDate', data.liveDate || '')
            .replace('$joinSite', data.joinSite || '')
			.replace(/\$imagepath/g, data.imagePath || '')
		    );

        // 실명인증 성공시 버튼 제거 및 input비활성
        if (data.statusCode == 0 || data.statusCode == 6) {
            document.frames["JoinChkFrame"].fnAttestation(data);

        } else if(data.statusCode == 2) {
            return alert('탈퇴 후, 15일이 지나지 않아 가입이 제한된 \r\n신상정보입니다. 추후 다시 가입해주세요.');
        }
    }
};

//본인인증 display
function setVerifyFrame(isChild, isIpin) {
    $("#JoinChkFrame")[0].style.display = 'none';
    $("#agreementBox").show();

    if (isIpin.toLowerCase() == 'false') { //실명인증
        attesTable[0].style.display = ''; //본인인증
        $("#verifyFrame")[0].src = (isChild == 'True' ? 'VerificationFrameYoung.aspx' : 'VerificationFrame.aspx') + '?' + new Date();
        $('#verifyName').html($F('username').val());
        $('ul.name-confirm img[alt=실명인증]').hide();
        $('ul.name-confirm input').each(function() { this.disabled = 'disabled' });
    } else { // "1" - ipin인증
        if (isChild.toLowerCase() == 'true') { //14세 미만 아이핀 인증
            attesTable[0].style.display = ''; //부모본인인증
            $("#verifyFrame")[0].src = (isChild == 'True' ? 'VerificationFrameYoung.aspx' : 'VerificationFrame.aspx') + '?' + new Date();
        }
        else //성인아이핀 인증
        {
            showBasicTables();
        }
    }
}

// 본인인증정보 동의 체크
var agree = $F('chkbox1');
if (agree) { agree.onclick = function() { $('#helper-agree').hide() } };

// 본인인증 완료
function showBasicTables() {
    $('p.join-btn').show();
    //$('div.add_info').show();
	addBtn.show();
	basicTable.show();
	agree.disabled = 'disabled';
}

// 추가입력 컨트롤
var AddTables = false;
function showAddTables() {
	AddTables = true;
	addTable.show();
	addBtn.hide();
}
function hideAddTables() {
	AddTables = false;
    addTable.hide();
	addBtn.show();
}


// 이름
setInput( name, { blank : tooltips[0] });

// 주민등록번호
setInput( ssn, { number : 1, tab : 1, blank : tooltips[1] });
setInput( encssn, { number : 1, tab : 1, blank : tooltips[1] });

// 아이디
setInput( id, { blank : tooltips[3], action : ValidateId });

// 아이디 실시간 중복검사
function ValidateId() {
	var val = id.val();
	var url = '/SignUp/LoginIdValid.aspx';   // id 중복체크용 url
	id.valid = false;

	switch (true) {
		case /\W/.test(val) :
			id.view(tooltips[4]);
			break;
		case !this.isRange(4, 15) :
			id.view(tooltips[5]);
			break;
		default :
			// obj.valid = true; return;
			Ns.Ajax.request(url, {
				param : id.serialize(),
				onSuccess : function(code) {
					if (code == 1) {
						id.view(tooltips[6]);
					}
					else {
						id.view(tooltips[7]);
						id.valid = true;
					}
				}
			});
		}
}

// 비밀번호
setInput(passwd, { action: ValidatePassWd });
// 비밀번호 입력 안내(아이핀용)
function ValidatePassWd() {
    this.valid = false;

    switch (true) {
        case !this.isRange(6, 15):
            passwd.view([1, '6~15자의 현재 비밀번호를 입력해주세요']);
            break;
        default:
            this.valid = true;
    }
}

// 현재비밀번호
setInput( pass, { action : ValidatePassNow });

// 현재비밀번호 입력 안내
function ValidatePassNow() {
		this.valid = false;

		switch (true) {
			case !this.isRange(6, 15) :
				pass.view([1, '6~15자의 현재 비밀번호를 입력해주세요']);
				break;
			default :
				this.valid = true;
		}
	}


// 비밀번호 입력
setInput( pass2, { blank : tooltips[8], action : ValidatePass });

// 비밀번호 실시간 유효성 검사
function ValidatePass() {
	var val = pass2.val();
	pass2.valid = false;
	if (pass3) pass3.valid = false;

	switch (true) {
		case !this.isRange(6, 15) :
			pass2.view(tooltips[9]);
			break;
		case pass && pass.val() == pass2.val() :
			pass2.view(tooltips[10]);
			break;
		case !(/\d/.test(val) && /\D/.test(val)) || (id ? val == id.val() : false) :
			pass2.view(tooltips[10]);
			break;
		default :
			pass2.view(tooltips[11]);
			pass2.valid = true;
	}
}

// 비밀번호 재입력
setInput( pass3, { blank : tooltips[12], action : ValidatePassRe });

// 비밀번호 실시간 재입력 일치 검사
function ValidatePassRe() {
	var val = pass3.val();
	pass3.valid = false;

	switch (true) {
		case !val :
			pass3.view();
			break;
		case val !=  pass2.val() :
			pass3.view(tooltips[13]);
			break;
		default :
			pass3.view(tooltips[14]);
			pass3.valid = true;
	}
}

// 이메일
setInput( email1, { blank : tooltips[15] });

// 이메일 자동 셀렉트
if (email2) email2.onchange = function() {
	if (this.value) {
		email3.value = this.value;
		email3.readOnly = 'readonly';
	} else {
		email3.value = '';
		email3.readOnly = '';
		email3.focus();
	}
};

// 연락처
setInput( mobile1, { number : 1, tab : 1 });
setInput( mobile2, {  number : 1, tab : 1, blank : tooltips[16] });
setInput( mobile3, {  number : 1, tab : 1 });
setInput( phone1, {  number : 1, tab : 1 });
setInput( phone2, {  number : 1, tab : 1, blank : tooltips[16] });
setInput( phone3, {  number : 1, tab : 1 });

// 자동가입방지
setInput( captcha, { blank : tooltips[17] });

// 자동가입방지 유효성 검사
function captchaValidate() {
	//return true;
	var valid = false;
	Ns.Ajax.request('/SignUp/CaptchaValidate.aspx', {
		sync : true,
		param : captcha.serialize(),
		onSuccess : function(res) {
			if (res == 'OK') valid = true;
		}
	});
	return valid;
};

// 자동가입방지 새로받기
function captchaReflash() {
	var tg = $('#captchaImg')[0];
	tg.src = tg.src.replace(/\?.+/, '') + '?st=' + parseInt(Math.random()*10000);
};

// 우편번호찾기 Ajax
var addrVal = $F('txtDong');
var addrList = $F('zipcodeList');
var addrCode = $F('zipcode');
var wardNo = $F('wardno');
var address1 = $F('address1');
var address2 = $F('address2');
var addrValTxt = '동/면/읍 입력 후 주소 검색 버튼 클릭';

setInput( addrVal, { blank : [1, '검색할 주소를 입력해 주세요'], enter : getAddressList });
setInput( address2, { blank : [1, '주소 나머지 부분을 입력해주세요'] });

if (addrVal) {
	addrVal.onfocus = function() { if (this.value == addrValTxt) this.value = '' };
	addrVal.onblur = function() { if (this.value == '') this.value = addrValTxt };
	addrList.onchange = function() {
	    var txt = this.value ? this.value.split('^') : ['', '', ''];
	    addrCode.val(txt[0]);
	    wardNo.val(txt[1]);
	    address1.val(this.value ? this.txt().replace(/\d+[~ \s]+\d+/, '') : '');
	    address2.val('');
	    address2.readOnly = '';
	    address2.focus();
	};
};

function getAddressList() {
	if (!addrVal.val() || addrVal.val() == addrValTxt) {
		addrVal.view();
		addrVal.focus();
		return;
    }

	// var url = "/Ajax/AddressList.xml";
    var url = "/Ajax/AddressList.aspx";
	Ns.Ajax.request(url, {
	    param: 'q=' + escape(addrVal.val()) + '&f=' + addrVal.form.name + '&e=' + addrList.name,
	    onSuccess: function(xml) {

	        var txt = $('optionText', xml);
	        var val = $('optionValue', xml);

	        addrVal.focus();
	        addrVal.view(txt.length
				? [1, '검색된 주소에서 선택해주세요']
				: [1, '검색된 주소가 없습니다']
			);

			addrList.options.length = 0;
	        addrList.addOptions(new Option(txt.length + '건의 주소가 검색되었습니다.'));
	        for (var i = 0; txt[i]; i++) {
	            var addr = txt[i].firstChild.nodeValue;
	            var code = val[i].firstChild.nodeValue;
	            addrList.addOptions(new Option(addr, code));
	        }
	    }
	});
};

// 비밀번호 재발급 질문
setInput( qna, { blank : tooltips[18] });

// Submit : 유효성검사
function onValidate() {
    switch (true) {
		case id && !id.validate() :
			break;
		case pass && !pass.validate() :
			break;
		case name && !name.validate() :
		    break;
		case ssn && (!ssn.validate() || !encssn.validate()) :
			break;
		case ssn && !isSsn(ssn.val()+encssn.val()) :
			ssn.view(tooltips[2]);
			ssn.select();
			break;
		case pass2 && !pass2.validate() :
			break;
		case pass3 && !pass3.validate() :
			break;
		case email1 && !isEmail(email1.val()+'@'+email3.val()) :
			email1.view();
			email1.focus();
			break;
		case mobile1 && !phone1 && !isPhone(mobile1, mobile2, mobile3) :
			mobile2.view();
			mobile2.focus();
			break;
		case phone1 && !mobile1 && !isPhone(phone1, phone2, phone3) :
			phone2.view();
			phone3.focus();
			break;
		case mobile1 && !isPhone(mobile1, mobile2, mobile3) && phone1 && !isPhone(phone1, phone2, phone3) :
			try {
				mobile2.view();
				mobile2.focus();
			} catch(e) {
				phone2.view();
				phone2.focus();
			}
			break;
		case captcha && !captchaValidate() :
			captcha.view();
			captcha.focus();
			break;
		case address1 && address1.val() && !address2.validate() :
			break;
		case qnq && qnq.val() && !qna.validate() :
		    break;
		default:
		    return true;
    }
	return false;
};

// Submit : 유효성검사
function onValidateLite() {
    switch (true) {
        case id && !id.validate():
            break;
        case pass && !pass.validate():
            break;
        case pass2 && !pass2.validate():
            break;
        case pass3 && !pass3.validate():
            break;
        case email1 && !isEmail(email1.val() + '@' + email3.val()):
            email1.view();
            email1.focus();
            break;
        case mobile1 && !phone1 && !isPhone(mobile1, mobile2, mobile3):
            mobile2.view();
            mobile2.focus();
            break;
        case phone1 && !mobile1 && !isPhone(phone1, phone2, phone3):
            phone2.view();
            phone3.focus();
            break;
        case mobile1 && !isPhone(mobile1, mobile2, mobile3) && phone1 && !isPhone(phone1, phone2, phone3):
            try {
                mobile2.view();
                mobile2.focus();
            } catch (e) {
                phone2.view();
                phone2.focus();
            }
            break;
        case captcha && !captchaValidate():
            captcha.view();
            captcha.focus();
            break;
        case address1 && address1.val() && !address2.validate():
            break;
        case qnq && qnq.val() && !qna.validate():
            break;
        default:
            return true;
    }
    return false;
};

// Reset : 비밀번호
function onPassReset() {
    try {
        pass2.value = '';
        pass3.value = '';
		pass.value = '';
        pass.focus();
    } catch (e) {
        pass2.focus();
	}
	return false;
};

//아이핀 도움말
function showIpinHelp() {
    if ($('div.alert-type9')[0].style.display == 'none') {
        $('div.alert-type9').show();
    } else {
        $('div.alert-type9').hide()
    }
}

//인증선택
var operation_now = "name";
function choice(obj) {
    $('#' + operation_now + 'Auth').hide();
    $('#' + obj.id + 'Auth').show();
    operation_now = obj.id;
    if (attesTable[0]) {
        attesTable[0].style.display = 'none';
    }
}

//아이핀 description 감추기
function hideIPINDesc() {
    $("#divIPIN").hide();
}

function showJoinChkFrame() {
    bJoinFrame = true;
    $("#JoinChkFrame")[0].style.display = '';
    $("#agreementBox").hide();
    hideIPINDesc();
}

function initFrame() {
    if (bJoinFrame) {
        bJoinFrame = false;
        document.location.reload(); //초기화;
    }
}