File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
2023-06-22
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
2025-07-21
2025-07-21
2025-07-21
2025-07-21
2025-07-21
<%--
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='/itn/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>이 약관은 (이하 "회사"라 한다)가 제공하는 모든 서비스(이하 "서비스"라 한다)의 이용조건 및 절차에 관한 기본적인 사항에 대해 정의하는 것을 목적으로 합니다.</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" /> * 8자~12자, 영문, 숫자, 특수문자 사용</td>
</tr>
<tr>
<th scope="row">비밀번호 확인 *</th>
<td><input class="in_w20" id="userPw2" name="password2" type="password" /></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="직접입력 선택시 자동활성화&포커스 이동"
<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>