<%--
  Class Name : EgovLoginUsr.jsp
  Description : 로그인화면
  Modification Information
 
      수정일         수정자                   수정내용
    -------    --------    ---------------------------
     2009.03.10    박지욱             최초 생성
     2011.08.31   JJY       경량환경 버전 생성
 
    author   : 공통서비스 개발팀  박지욱
    since    : 2009.03.10
--%>
<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="ui" uri="http://egovframework.gov/ctl/ui"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<%@ taglib prefix="spring" uri="http://www.springframework.org/tags"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>

<!DOCTYPE html>
<html lang="ko">
<head>
<script type="text/javascript">
function press(event) { if (event.keyCode == 13) actionLogin(); }

function actionLogin() {
    if (document.loginForm.a1.value != "Y") {
        alert("개인정보 수집 및 이용안내를 동의 해주세요."); return false;
    } else if (document.loginForm.a2.value != "Y") {
        alert("서비스 이용약관을 동의 해주세요."); return false;
    } else {
        document.loginForm.action="<c:url value='/web/user/join/insertMembManageInfoJoin.do'/>";
        document.loginForm.submit();
    }
}

//아이디 중복확인
function fn_id_check(){
	if(document.userManageVO.emplyrId.value == "") { alert("아이디를 입력해주세요."); return; }
	
	$.ajax({
		type:"POST",
		url:"<c:url value='/kcc/web/user/join/usrIdDplctCnfirmAjax.do' />",
		data:{ "checkId": document.userManageVO.emplyrId.value },
		dataType:'json',
		timeout:(1000*30),
		success:function(returnData, status){
			if(status == "success") {
				if(returnData.usedCnt > 0 ){
					alert("이미 사용중인 아이디입니다");
					document.userManageVO.userIdSearch.value = "N";
					document.userManageVO.userIdSearchVal.value = "";
				}else{
					alert("사용할 수 있는 아이디입니다");
					document.userManageVO.userIdSearch.value = "Y";
					document.userManageVO.userIdSearchVal.value = returnData.checkId;
				}
			}else{ alert("중복확인이 실패되었습니다.");return;} 
		},
		error:function(request , status, error){
			alert("중복확인이 실패되었습니다.");
			//alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
		}
	});
}

// 등록
function fnInsert(mode){
	var frm = document.userManageVO ; 
	
	if (frm.userIdSearch.value != "Y" || 
			frm.emplyrId.value != frm.userIdSearchVal.value) {
		alert("아이디 중복확인을 해주세요."); return;
	}
	
	if(frm.emplyrNm.value == ''){
		alert("성명은 필수값입니다"); return ;
	}
	
    if (frm.value =="" || frm.password2.value =="") {
        alert("비밀번호를 입력해주세요."); return false;
    } else if (frm.password.value != frm.password2.value) {
    	alert("비밀번호가 일치하지 않습니다. 확인해주세요."); return false;
    } else if (!validatePassword(frm.password.value)) {
    	alert("비밀번호를 재 작성해주세요."); return false;
    }
	
    if(null!=document.getElementById("brth")){ //생년월일 체크
		var numCheck = document.getElementById("brth").value;
    	if(numCheck!=""){
    		if(/[^0123456789]/g.test(numCheck)){
            	alert("생년월일은 숫자만 입력이 가능합니다.");
            	return;
        	}
    		if(numCheck.length > 6){
    			alert("생년월일은 6자 이내입니다.");
             	return;
         	}
    	}
	}
	
	if(null!=document.getElementById("offmTelno")){ //전화번호 체크
		var numCheck = document.getElementById("offmTelno").value;
    	if(numCheck!=""){
    		if(/[^0123456789-]/g.test(numCheck)){
           	 	alert("전화번호는 숫자와 특수문자'-'만 입력이 가능합니다.");
            	return;
        	}
    	}
	}
	if(null!=document.getElementById("fxnum")){ //팩스번호 체크
		var numCheck = document.getElementById("fxnum").value;
    	if(numCheck!=""){
    		if(/[^0123456789-]/g.test(numCheck)){
            	alert("팩스번호는 숫자와 특수문자'-'만 입력이 가능합니다.");
            	return;
        	}	
    	}
	}
	if(null!=document.getElementById("zip")){ //우편번호
		var numCheck = document.getElementById("zip").value;
    	if(numCheck!=""){
    		if(/[^0123456789]/g.test(numCheck)){
            	alert("우편번호는 숫자만 입력이 가능합니다.");
            	return;
        	}
    		if(numCheck.length > 6){
    			alert("우편번호는 6자 이내입니다.");
             	return;
         	}
    	}
	}
	
	if(null!=document.getElementById("moblphonNo")){ //핸드폰번호
		var numCheck = document.getElementById("moblphonNo").value;
    	if(numCheck!=""){
    		if(/[^0123456789-]/g.test(numCheck)){
    			alert("핸드폰번호는 숫자와 특수문자'-'만 입력이 가능합니다.");
            	return;
        	}
    		if(numCheck.length > 15){
    			alert("핸드폰번호는 15자 이내입니다.");
             	return;
         	}
    	}
	}
	
  	//이메일 있을 경우는 형식체크 
	if(null!=document.getElementById("emailAdres")){ //형식 체크 안하면 자바에서 에러남.
		var email = $("#email1").val() + "@" +  $("#email2").val();
		$('#emailAdres').val(email);
		if($('#email1').val() == '' || $('#email2').val() == ''){
		   	alert("이메일 주소를 입력해주세요."); return;
		}
		
		regExp = /^(\w*)(@{1})([a-z]{1,}(\.{1})[a-z]{2,3})$/gi
		if(!regExp.test(email)){
			alert("올바르지 않은 이메일 형식입니다."); return;
		}
	}
	
	if(!valiConfig()){ //환경설정 체크
		return;
	}
	
	frm.action = "/${siteId}/web/user/join/usrJoinInsert.do";  
	frm.submit();  
}

function validatePassword(character) {
    return /^(?=.*[A-Za-z])(?=.*\d)(?=.*[$@$!%*#?&])[A-Za-z\d$@$!%*#?&]{8,}$/.test(character);
}

$( document ).ready(function(){
	$("#email3").change(function(){
		var txt = $(this).val();
		if(txt != "0"){
			$("#email2").val(txt);
			$("#email2").attr("readonly","readonly");
		}else{
			$("#email2").val("");
			$("#email2").removeAttr("readonly");
		}
	});
});

function valiConfig(){ //설정 체크
	var alertValue = "";
	var firstNoYn = false;
	$('.memConfig').each(function(index, item){
		if($(this).find('.star_t').length> 0){ // 필수일때
			if(""==$(this).find('input[name]').val()){ //값이 없을때
				alertValue+= firstNoYn ? ","+$(this).find('input[name]').attr('title') : $(this).find('input[name]').attr('title');
				firstNoYn = true;
			}
		}
	});
	
	if(""!=alertValue){
		alertValue += "(은/는) 필수항목입니다.";
		alert(alertValue);
		return false;
	}
	return true;
}


</script>
<title>회원가입</title>
</head>
<body>
<form:form id="userManageVO" name="userManageVO" action="" method="post" >
<div class="login_area" style="width:100%;">


	<div class="member_title">개인정보 동의</div>
	
	<div class="table_area">
	<input type="hidden" name="userIdSearch"  value="N"/>
	<input type="hidden" name="userIdSearchVal"  value=""/>
	<input type="hidden" name="snsSite"  value="<c:out value="${loginVO.snsSite}"/>"/>
	<input type="hidden" name="snsId"  value="<c:out value="${loginVO.snsId}"/>"/>
	<input type="hidden" name="snsEmail"  value="<c:out value="${loginVO.snsEmail}"/>"/>
	<fieldset>
	<div class="dong">
		<c:if test="${not empty termsVO}">
			${termsVO.termsCn}
		</c:if>
		<!-- <h3>제 1 장 총칙</h3>
			
			<h4>제 1 조 목적</h4>
			
			<p>이 약관은 (이하 &quot;회사&quot;라 한다)가 제공하는 모든 서비스(이하 &quot;서비스&quot;라 한다)의 이용조건 및 절차에 관한 기본적인 사항에 대해 정의하는 것을 목적으로 합니다.</p>
			
			<h4>제 2 조 약관의 효력 및 변경</h4>
			
			<ol>
				<li>① 이 약관은 서비스를 통하여 알리거나 전자우편 등의 방법으로 회원에게 알림으로써 효력을 발생합니다.</li>
				<li>② 회사는 필요하다고 인정되는 경우에 본 약관을 변경할 수 있으며, 변경된 약관은 본 조 제1항과 같은 방법으로 공지함으로써 그 효력을 발생합니다.</li>
			</ol>
			
			<h4>제 3 조 약관 외 준칙</h4>
			</div> -->
	
	</fieldset>
	
	<div><input id="check2" name="check2" type="checkbox" value="1" /> 동의함 <label for="check2"><span>개인정보보호 취급방침에 대한 내용에 동의합니다.</span></label></div>
	
	<div class="member_title2">회원가입</div>
	
	<table class="write">
		<caption>등록 화면</caption>
		<colgroup>
			<col style="width: 120px;" />
			<col style="width: *;" />
		</colgroup>
		<tbody>
			<tr>
				<th scope="row">아이디 *</th>
				<td>
					<input class="in_w20" id="userId" name="emplyrId" type="text" />
					<a href="javascript:fn_id_check();">중복확인</a> 
				</td>
			</tr>
			<tr>
				<th scope="row">성명 *</th>
				<td>
					<input class="in_w20" id="emplyrNm" name="emplyrNm" type="text" value="<c:out value="${loginVO.name}"/>" 
					<c:if test="${not empty loginVO.name}">
					readonly
					</c:if>
					/>
				</td>
			</tr>
			<tr>
				<th scope="row">비밀번호 *</th>
				<td><input class="in_w20" id="userPw" name="password" type="password" autocomplete="off" /> * 8자~12자, 영문, 숫자, 특수문자 사용</td>
			</tr>
			<tr>
				<th scope="row">비밀번호 확인 *</th>
				<td><input class="in_w20" id="userPw2" name="password2" type="password" autocomplete="off" /></td>
			</tr>
			<tr class="memConfig">
					<th scope="row">이메일 <c:if test="${'Y' eq result.neceYn}"><span class="star_t">*</span></c:if></th>
					<td>
						<input name="" id="email1" type="text" title="이메일 아이디" class="emailId inp" 
						value="<c:out value="${fn:substringBefore(loginVO.email, '@') }"/>"
						<c:if test="${not empty loginVO.email}">
						readonly
						</c:if>
						
						/>
						@
						<input class="emailAddr emailDomainForm inp" name="" id="email2" type="text" title="이메일 주소" 
						value="<c:out value="${fn:substringAfter(loginVO.email, '@') }"/>"
						<c:if test="${not empty loginVO.email}">
						readonly
						</c:if>
						 />
						<label for="sr_email_more" class="hidden">이메일 도메인 선택</label>
						<select id="email3" name="" class="input_select select_email_js" title="직접입력 선택시 자동활성화&amp;포커스 이동" 
						<c:if test="${not empty loginVO.email}">
						disabled="disabled"
						</c:if>
						>
							<option value="0" selected>메일주소입력</option>
							<option  value="naver.com" label="naver.com"></option>
							<option  value="gmail.com" label="gmail.com"></option>
							<option  value="hanmail.net" label="hanmail.net"></option>
							<option  value="daum.net" label="daum.net"></option>
							<option  value="yahoo.co.kr" label="yahoo.co.kr"></option>
						</select>
						<input type="hidden" name="emailAdres" id="emailAdres">
					</td>
				</tr>
				
			<!-- 이후부터는 선택 -->
			<c:forEach var="result" items="${ mberManageCnfList }" varStatus="status">
				<tr class="memConfig">
					<th>${result.configName}<c:if test="${'Y' eq result.neceYn}"><span class="star_t">*</span></c:if></th>
					<td colspan="3">
						<input name="${result.configId}" id="${result.configId}" title="${result.configName}" type="text" size="20" maxlength="60" value="" />
					</td>
				</tr>
			</c:forEach>
		</tbody>
	</table>
	</div>
	<input type="hidden" name="url" value="${menuManageVO}"> 
	<div class="button_area alignc" style="width:100%"><a class="btn save" href="javascript:fnInsert('insert');" title="저장하기"><span>등록</span> </a></div>
</div>
</form:form>
</body>
</html>

