This commit is contained in:
hehihoho3@gmail.com 2025-03-26 15:09:12 +09:00
commit 7c411c5f45
4 changed files with 828 additions and 275 deletions

View File

@ -1074,12 +1074,21 @@ public class EgovLoginController {
String message = (String) commandMap.get("message"); String message = (String) commandMap.get("message");
String goEventPay = (String) commandMap.get("goEventPay"); String goEventPay = (String) commandMap.get("goEventPay");
// sns 회원가입 key 설정 /*
String naverClientId = itnNaverClientId; * 헤더에서 id/pw는 맞지만 보안로그인 설정 되어있을때 -> secure
String naverClientSecret = itnNaverClientSecret; *
*/
String kakaoRestApiKey = itnKakaoRestApiKey; String headerLoginResult = (String) commandMap.get("headerLoginResult");
String kakaoReturnUrl = itnKakaoReturnUrl; String id = (String) commandMap.get("id");
String pw = (String) commandMap.get("password");
// sns 회원가입 key 설정
// String naverClientId = itnNaverClientId;
// String naverClientSecret = itnNaverClientSecret;
//
// String kakaoRestApiKey = itnKakaoRestApiKey;
// String kakaoReturnUrl = itnKakaoReturnUrl;
// config 정보 가져오기 // config 정보 가져오기
MberManageConfigVO mberConfigVO = new MberManageConfigVO(); MberManageConfigVO mberConfigVO = new MberManageConfigVO();
@ -1130,6 +1139,16 @@ public class EgovLoginController {
model.addAttribute("userIp", userIp); model.addAttribute("userIp", userIp);
model.addAttribute("goEventPay", goEventPay); model.addAttribute("goEventPay", goEventPay);
if(StringUtil.isNotEmpty(headerLoginResult)) {
model.addAttribute("id_secure", id);
model.addAttribute("pw_secure", pw);
}else {
headerLoginResult = "N";
}
model.addAttribute("headerLoginResult", headerLoginResult);
return "web/login/EgovLoginGnrlUsr"; return "web/login/EgovLoginGnrlUsr";
} }
@ -1833,6 +1852,8 @@ public class EgovLoginController {
HttpServletRequest request, @RequestParam Map<String, Object> commandMap, ModelMap model, HttpServletRequest request, @RequestParam Map<String, Object> commandMap, ModelMap model,
HttpSession session, RedirectAttributes redirectAttributes) throws Exception { HttpSession session, RedirectAttributes redirectAttributes) throws Exception {
ModelAndView modelAndView = new ModelAndView(); ModelAndView modelAndView = new ModelAndView();
modelAndView.setViewName("jsonView"); modelAndView.setViewName("jsonView");

View File

@ -341,8 +341,8 @@ function whoisIpCountry() {
} }
function actionLogin() { function actionLogin() {
location.href="<c:url value='/web/user/login/login.do'/>"; // location.href="<c:url value='/web/user/login/login.do'/>";
/*
// 아이디 공백 제거 // 아이디 공백 제거
document.loginForm.id_text.value = $.trim(document.loginForm.id_text.value); document.loginForm.id_text.value = $.trim(document.loginForm.id_text.value);
@ -353,16 +353,6 @@ function actionLogin() {
alert("비밀번호를 입력하세요"); alert("비밀번호를 입력하세요");
return; return;
} else { } else {
// Whois IP 국가코드
//whoisIpCountry();
setTimeout(function() {
if (isKoreaIpAddress == false) {
alert("해외 IP로 감지되어 로그인이 제한되었습니다.\n문자온 고객센터로 문의 바랍니다.");
location.href='/web/uat/uia/actionLogout.do';
return false;
}
// 로그인 START // 로그인 START
var rsa = new RSAKey(); var rsa = new RSAKey();
rsa.setPublic($('#RSAModulus').val(),$('#RSAExponent').val()); rsa.setPublic($('#RSAModulus').val(),$('#RSAExponent').val());
@ -373,13 +363,84 @@ function actionLogin() {
$("#id").val(rsa.encrypt(id.val().toLowerCase())); $("#id").val(rsa.encrypt(id.val().toLowerCase()));
$("#password").val(rsa.encrypt(pw.val())); $("#password").val(rsa.encrypt(pw.val()));
document.loginForm.action="<c:url value='/web/user/login/actionSecurityLogin.do'/>";
saveid(document.loginForm); saveid(document.loginForm);
var checkForm = $("form[name=loginForm]").serialize() ;
$.ajax({
type : "POST",
async : false,
url : "/web/user/login/actionSecurityLoginBeforeHpAjax.do",
data : checkForm,
dataType:'json',
success : function(data) {
if (data.status=="success"){
document.loginForm.passFlag.value = data.passFlag;
if(data.passFlag == "Y")
{
actionLogin_end();
}
else
{
goLoginPage(id.val(), pw.val(), "secure");
}
}else if (data.status=="fail"){
if (data.returnType == "A"){
//휴면 회원
document.loginForm.action="<c:url value='/web/user/humanPage.do'/>";
document.loginForm.submit(); document.loginForm.submit();
}, 600); }else if (data.returnType == "B"){
//기업회원 기업정보 기입
document.cmpChangeForm.mberId.value = data.mberId;
document.cmpChangeForm.action="<c:url value='/web/user/login/membershipAttachDocBefore.do'/>";
document.cmpChangeForm.submit();
}else if (data.returnType == "C"){
document.cmpChangeForm.mberId.value = data.mberId;
document.cmpChangeForm.action="<c:url value='/web/user/login/loginRestrictionUse.do'/>";
document.cmpChangeForm.submit();
}else{
//로그인 실패 page이동
goLoginPage(id.val(), pw.val(), data.msg);
}
}
//alert(JSON.stringify(data));
console.log("sucess data1 : " + JSON.stringify(data));
if (data.isSuccess == true) {
console.log("fn_click_banner_add_stat sucess data2 : " + JSON.stringify(data));
}
else {
console.log("data.isSuccess not true ");
console.log("sucess data.msg : " + data.msg);
console.log("sucess data1 : " + JSON.stringify(data));
}
},
error : function(xhr, status, error) {
console.log("fn_click_banner_add_stat error : " + error);
console.log("fn_click_banner_add_stat xhr : " + JSON.stringify(xhr) + "\r\status : " + JSON.stringify(status) + "\r\error : " + JSON.stringify(error));
return false;
}
});
}
} }
*/
function goLoginPage(id, pw, headerLoginResult){
document.loginForm.id.value = id;
document.loginForm.password.value = pw;
document.loginForm.headerLoginResult.value = headerLoginResult;
document.loginForm.action = "<c:url value='/web/user/login/login.do'/>";
document.loginForm.submit();
}
//아이디/휴대폰 번호 체크
function actionLogin_end(){
document.loginForm.action="<c:url value='/web/user/login/actionSecurityLoginAfterHp.do'/>";
saveid(document.loginForm);
document.loginForm.submit();
} }
function saveid(form) { function saveid(form) {
@ -1636,14 +1697,19 @@ function actionLogin() {
<input type="hidden" id="id" name="id"> <input type="hidden" id="id" name="id">
<input type="hidden" id="password" name="password"> <input type="hidden" id="password" name="password">
<input type="hidden" id="ip" name="ip" value="${userIp}"> <input type="hidden" id="ip" name="ip" value="${userIp}">
<input type="hidden" id="passFlag" name="passFlag">
<input type="hidden" id="headerLoginResult" name="headerLoginResult">
<div id="login" class="login"> <div id="login" class="login">
<div class="inner"> <div class="inner">
<div class="login_left"> <div class="login_left">
<div class="login_put"> <div class="login_put">
<label for="id_text" class="label"></label> <label for="id_text" class="label"></label>
<input type="text" placeholder="아이디를 입력해주세요"id="id_text" name="id_text" class="id_text" maxlength="20" size="18" onclick="actionLogin();"> <!-- <input type="text" placeholder="아이디를 입력해주세요"id="id_text" name="id_text" class="id_text" maxlength="20" size="18" onclick="actionLogin();"> -->
<input type="text" placeholder="아이디를 입력해주세요"id="id_text" name="id_text" class="id_text" maxlength="20" size="18">
<label for="password_text" class="label"></label> <label for="password_text" class="label"></label>
<input type="password" placeholder="비밀번호를 입력해주세요" id="password_text" class="password_text" maxlength="30"size="18" onkeypress="if(event.keyCode==13) {actionLogin(); return false;}" onclick="actionLogin();"> <!-- <input type="password" placeholder="비밀번호를 입력해주세요" id="password_text" class="password_text" maxlength="30"size="18" onkeypress="if(event.keyCode==13) {actionLogin(); return false;}" onclick="actionLogin();"> -->
<input type="password" placeholder="비밀번호를 입력해주세요" id="password_text" class="password_text" maxlength="30"size="18" onkeypress="if(event.keyCode==13) {actionLogin(); return false;}">
<label for="login_button" class="label"></label> <label for="login_button" class="label"></label>
<button type="button" id="login_button" class="btnType btnType1" class="login_button" onclick="actionLogin();">로그인</button> <button type="button" id="login_button" class="btnType btnType1" class="login_button" onclick="actionLogin();">로그인</button>
</div> </div>
@ -1759,4 +1825,8 @@ function actionLogin() {
<input type="hidden" name="tr_add" id="tr_addHeader" value = ""> <input type="hidden" name="tr_add" id="tr_addHeader" value = "">
</form> </form>
<form name="cmpChangeForm" id="cmpChangeForm" method="post" action="#">
<input type="hidden" name="mberId" value=""/>
</form>
</header><!--// header 영역 --> </header><!--// header 영역 -->

View File

@ -25,10 +25,15 @@ $(document).ready(function (){
alert("${message}"); alert("${message}");
} }
//웹헤더에서 보안로그인으로 인해 페이지 접근 시
getid(document.loginForm2); getid(document.loginForm2);
<c:if test="${headerLoginResult ne 'N'}">
headerLoginResult("<c:out value='${headerLoginResult}'/>");
</c:if>
}); });
function press(event) { if (event.keyCode == 13) actionLogin(); } function press(event) { if (event.keyCode == 13) actionLoginPage(); }
function actionLoginPage() { function actionLoginPage() {
// 아이디 공백 제거 // 아이디 공백 제거
@ -41,133 +46,22 @@ function actionLoginPage() {
alert("비밀번호를 입력하세요"); alert("비밀번호를 입력하세요");
return; return;
} else { } else {
//IP체크 삭제 후 바로 로그인처리 - 22.05.03
// ipCheck();
actionLogin(); actionLogin();
/* var rsa = new RSAKey();
rsa.setPublic($('#RSAModulus2').val(),$('#RSAExponent2').val());
var id = $("#id_text2");
var pw = $("#password_text2");
document.loginForm2.id.value = rsa.encrypt(id.val());
document.loginForm2.password.value = rsa.encrypt(pw.val());
document.loginForm2.action="<c:url value='/web/user/login/actionSecurityLogin.do'/>";
saveid(document.loginForm2);
document.loginForm2.submit(); */
} }
} }
function ipCheck(){
//로그인 시 IP 체크
var id = $("#id_text2").val().toLowerCase();
var password = $("#password_text2").val();
var ip = "${userIp}";
var IPCnt;
$.ajax({
url : "<c:url value='/web/user/login/selectIPCntAjax.do' />",
type : 'POST',
data : {id : id, ip : ip},
dataType:'json',
async : false,
success : function(returnData, status){
if(status == "success") {
if(returnData.IPCheck == 0){
IPCnt = returnData.IPCheck;
$("#tr_certHeader").val(returnData.tr_cert);
$("#tr_urlHeader").val(returnData.tr_url);
$("#tr_addHeader").val(returnData.tr_add);
var KMCIS_window;
//등록된 IP가 없을 시 KMC 본인인증 팝업 오픈
KMCIS_window = window.open('', 'KMCISWindow', 'width=425, height=550, resizable=0, scrollbars=no, status=0, titlebar=0, toolbar=0, left=435, top=250' );
document.reqHeaderKMCISForm.target = 'KMCISWindow';
document.reqHeaderKMCISForm.action = 'https://www.kmcert.com/kmcis/web/kmcisReq.jsp';
document.reqHeaderKMCISForm.submit();
return false;
}else{
actionLogin();
}
}else{ alert("로그인 정보가 올바르지 않습니다.");return false;}
},
error : function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
}
});
}
// Whois IP 국가코드 Check
var isKoreaIpAddress = true;
function whoisIpCountry() {
$.ajax({
type:"POST",
url: "/web/whois/whoisIpCountryAjax.do",
data: {},
dataType:'json',
async: true,
timeout: 300,
success: function (data) {
if(data.isSuccess == true) {
if (data.rspCode == "10000") {
if (data.countryCode.toUpperCase() != "KR" && data.countryCode.toUpperCase() != "NONE" && data.countryCode.toUpperCase() != "") {
isKoreaIpAddress = false;
//alert("해당 IP는 해외 IP로 확인되어, 로그인이 제한되었습니다.\n문자온 고객센터로 문의 바랍니다.");
}
}
}
},
error: function (e) {
}
});
}
function actionLogin(){ function actionLogin(){
console.log('actionLogin : actionLogin')
setTimeout(function() {
if (isKoreaIpAddress == false) {
alert("해외 IP로 감지되어 로그인이 제한되었습니다.\n문자온 고객센터로 문의 바랍니다.");
location.href='/web/uat/uia/actionLogout.do';
return false;
}
// 로그인 START // 로그인 START
var rsa = new RSAKey(); var rsa = new RSAKey();
rsa.setPublic($('#RSAModulus2').val(),$('#RSAExponent2').val()); rsa.setPublic($('#RSAModulus2').val(),$('#RSAExponent2').val());
/* rsa.setPublic(document.loginForm2.RSAModulus.value, document.loginForm2.RSAExponent.value); */
var id = $("#id_text2"); var id = $("#id_text2");
var pw = $("#password_text2"); var pw = $("#password_text2");
/* var id = document.loginForm2.id_text;
var pw = document.loginForm2.password_text; */
/* $("#id").val(rsa.encrypt(id.val())); */
/* $("#password").val(rsa.encrypt(pw.val())); */
document.loginForm2.id.value = rsa.encrypt(id.val().toLowerCase()); document.loginForm2.id.value = rsa.encrypt(id.val().toLowerCase());
document.loginForm2.password.value = rsa.encrypt(pw.val()); document.loginForm2.password.value = rsa.encrypt(pw.val());
//document.loginForm2.action="<c:url value='/web/user/login/actionSecurityLogin.do'/>";
saveid(document.loginForm2);
//document.loginForm2.submit();
var checkForm = $("form[name=loginForm2]").serialize() ; var checkForm = $("form[name=loginForm2]").serialize() ;
$.ajax({ $.ajax({
@ -177,8 +71,6 @@ function actionLogin(){
data : checkForm, data : checkForm,
dataType:'json', dataType:'json',
success : function(data) { success : function(data) {
//alert(data.status);
//alert(data.data.moblphonNo);
if (data.status=="success"){ if (data.status=="success"){
document.loginForm2.passFlag.value = data.passFlag; document.loginForm2.passFlag.value = data.passFlag;
@ -199,7 +91,6 @@ function actionLogin(){
$("#input_list_item_5").show(); $("#input_list_item_5").show();
$("#input_list_item_6").show(); $("#input_list_item_6").show();
// $("#hp_text2").val(data.data.moblphonNo);
var $select = $('#hp_text2'); var $select = $('#hp_text2');
data.mberCertPhoneList.forEach(function(item) { data.mberCertPhoneList.forEach(function(item) {
$select.append($('<option>', { $select.append($('<option>', {
@ -207,19 +98,21 @@ function actionLogin(){
text: item.mbtlnum+'('+item.certAlias+')' // option의 화면에 보이는 텍스트 text: item.mbtlnum+'('+item.certAlias+')' // option의 화면에 보이는 텍스트
})); }));
}); });
} }
}else if (data.status=="fail"){ }else if (data.status=="fail"){
if (data.returnType == "A"){ if (data.returnType == "A"){
//휴면 회원
document.loginForm2.action="<c:url value='/web/user/humanPage.do'/>"; document.loginForm2.action="<c:url value='/web/user/humanPage.do'/>";
document.loginForm2.submit(); document.loginForm2.submit();
}else if (data.returnType == "B"){ }else if (data.returnType == "B"){
//기업회원 기업정보 기입
document.cmpChangeForm.mberId.value = data.mberId; document.cmpChangeForm.mberId.value = data.mberId;
document.cmpChangeForm.action="<c:url value='/web/user/login/membershipAttachDocBefore.do'/>"; document.cmpChangeForm.action="<c:url value='/web/user/login/membershipAttachDocBefore.do'/>";
document.cmpChangeForm.submit(); document.cmpChangeForm.submit();
}else if (data.returnType == "C"){ }else if (data.returnType == "C"){
//스팸문자이용제한페이지
document.cmpChangeForm.mberId.value = data.mberId; document.cmpChangeForm.mberId.value = data.mberId;
document.cmpChangeForm.action="<c:url value='/web/user/login/loginRestrictionUse.do'/>"; document.cmpChangeForm.action="<c:url value='/web/user/login/loginRestrictionUse.do'/>";
document.cmpChangeForm.submit(); document.cmpChangeForm.submit();
@ -228,17 +121,6 @@ function actionLogin(){
$("#ret_msg_info").html('<i></i>'+data.msg); $("#ret_msg_info").html('<i></i>'+data.msg);
} }
} }
//alert(JSON.stringify(data));
console.log("sucess data1 : " + JSON.stringify(data));
if (data.isSuccess == true) {
console.log("fn_click_banner_add_stat sucess data2 : " + JSON.stringify(data));
}
else {
console.log("data.isSuccess not true ");
console.log("sucess data.msg : " + data.msg);
console.log("sucess data1 : " + JSON.stringify(data));
}
}, },
error : function(xhr, status, error) { error : function(xhr, status, error) {
console.log("fn_click_banner_add_stat error : " + error); console.log("fn_click_banner_add_stat error : " + error);
@ -246,47 +128,22 @@ function actionLogin(){
return false; return false;
} }
}); });
}, 600);
} }
//아이디/휴대폰 번호 체크 //아이디/휴대폰 번호 체크
function actionLogin_end(){ function actionLogin_end(){
if (isKoreaIpAddress == false) {
alert("해외 IP로 감지되어 로그인이 제한되었습니다.\n문자온 고객센터로 문의 바랍니다.");
location.href='/web/uat/uia/actionLogout.do';
return false;
}
// 로그인 START // 로그인 START
var rsa = new RSAKey(); var rsa = new RSAKey();
rsa.setPublic($('#RSAModulus2').val(),$('#RSAExponent2').val()); rsa.setPublic($('#RSAModulus2').val(),$('#RSAExponent2').val());
/* rsa.setPublic(document.loginForm2.RSAModulus.value, document.loginForm2.RSAExponent.value); */
//var id = $("#id_text2");
//var pw = $("#password_text2");
var hp = $("#hp_text2").val(); var hp = $("#hp_text2").val();
var num = $("#num_text2").val(); var num = $("#num_text2").val();
/* var id = document.loginForm2.id_text;
var pw = document.loginForm2.password_text; */
/* $("#id").val(rsa.encrypt(id.val())); */
/* $("#password").val(rsa.encrypt(pw.val())); */
//document.loginForm2.id.value = rsa.encrypt(id.val().toLowerCase());
//document.loginForm2.password.value = rsa.encrypt(pw.val());
document.loginForm2.hp.value = hp; document.loginForm2.hp.value = hp;
document.loginForm2.num.value = num; document.loginForm2.num.value = num;
document.loginForm2.action="<c:url value='/web/user/login/actionSecurityLoginAfterHp.do'/>"; document.loginForm2.action="<c:url value='/web/user/login/actionSecurityLoginAfterHp.do'/>";
saveid(document.loginForm2); saveid(document.loginForm2);
document.loginForm2.submit(); document.loginForm2.submit();
} }
//아이디/휴대폰 번호 체크 //아이디/휴대폰 번호 체크
@ -294,7 +151,6 @@ function step1IdCheck(){
document.checkForm.callTo.value = $('#hp_text2').val(); document.checkForm.callTo.value = $('#hp_text2').val();
document.checkForm.userId.value = $('#id_text2').val().toLowerCase(); document.checkForm.userId.value = $('#id_text2').val().toLowerCase();
//document.checkForm.searchNm.value = $('#findPw_userNm').val();
if ($('#id_text2').val()==''){ if ($('#id_text2').val()==''){
alert("아이디를 입력해주세요."); alert("아이디를 입력해주세요.");
@ -318,13 +174,9 @@ function step1IdCheck(){
if(returnData.result == "success") { if(returnData.result == "success") {
timer(); timer();
} }
}else{ alert("실패");return;} }else{ alert("실패");return;}
}, },
error : function(request , status, error){ error : function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error); alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
} }
@ -345,13 +197,11 @@ function timer(){
document.getElementById("timer").innerHTML = min + "분" + sec + "초"; document.getElementById("timer").innerHTML = min + "분" + sec + "초";
time--; time--;
//타임아웃 시 //타임아웃 시
if (time < 0) { if (time < 0) {
clearInterval(x); //setInterval() 실행을 끝냄 clearInterval(x); //setInterval() 실행을 끝냄
document.getElementById("timer").innerHTML = "시간초과"; document.getElementById("timer").innerHTML = "시간초과";
} }
}, 1000); }, 1000);
if(time != 300){ if(time != 300){
@ -360,38 +210,6 @@ function timer(){
} }
} }
function actionLogin_bak(){
// Whois IP 국가코드
//whoisIpCountry();
setTimeout(function() {
if (isKoreaIpAddress == false) {
alert("해외 IP로 감지되어 로그인이 제한되었습니다.\n문자온 고객센터로 문의 바랍니다.");
location.href='/web/uat/uia/actionLogout.do';
return false;
}
// 로그인 START
var rsa = new RSAKey();
rsa.setPublic($('#RSAModulus2').val(),$('#RSAExponent2').val());
/* rsa.setPublic(document.loginForm2.RSAModulus.value, document.loginForm2.RSAExponent.value); */
var id = $("#id_text2");
var pw = $("#password_text2");
/* var id = document.loginForm2.id_text;
var pw = document.loginForm2.password_text; */
/* $("#id").val(rsa.encrypt(id.val())); */
/* $("#password").val(rsa.encrypt(pw.val())); */
document.loginForm2.id.value = rsa.encrypt(id.val().toLowerCase());
document.loginForm2.password.value = rsa.encrypt(pw.val());
document.loginForm2.action="<c:url value='/web/user/login/actionSecurityLogin.do'/>";
saveid(document.loginForm2);
document.loginForm2.submit();
}, 600);
}
//인증번호 발송 1분마다 한번씩 보내기 //인증번호 발송 1분마다 한번씩 보내기
function sendMsgYn(){ function sendMsgYn(){
@ -449,7 +267,6 @@ function getid(form){
if(getCookie("ncms_saveid") != ""){ if(getCookie("ncms_saveid") != ""){
form.checkId.checked = (form.id_text2.value = getCookie("ncms_saveid")); form.checkId.checked = (form.id_text2.value = getCookie("ncms_saveid"));
} }
/* form.checkId.checked = ((form.id_text.value = getCookie("ncms_saveid")) != ""); */
} }
function getCookie(Name) { function getCookie(Name) {
@ -471,7 +288,6 @@ function getCookie(Name) {
//로그인 화면 비밀번호 보기 추가 //로그인 화면 비밀번호 보기 추가
function fn_passView(obj){ function fn_passView(obj){
var passInputType = $('#password_text2').prop("type"); var passInputType = $('#password_text2').prop("type");
if(passInputType == 'text'){ if(passInputType == 'text'){
$('#password_text2').prop("type", "password"); $('#password_text2').prop("type", "password");
@ -484,51 +300,22 @@ function fn_passView(obj){
} }
} }
<c:if test="${headerLoginResult ne 'N'}">
function headerLoginResult(headerLoginResult){
//보안로그인로 왔을때
//함수명: 배너 클릭하면 통계 추가 (2023-05-17 최남규) - 메인화면(mainPage.jsp)에도 같음 함수명 추가했음(단, 배너 갯수 다름) if(headerLoginResult === 'secure'){
//설명: 베너코드(ITN054)와 메뉴코드(ITN055) 조합코드 전달 후 Ajax.do 에서 '_' 분리후 날짜와 배너코드와 메뉴코드와 클릭수 +1 document.loginForm2.id_text2.value = "<c:out value='${id_secure}'/>";
// 테이블(mj_banner_click_stat)에 최초 등록 후 이후 전체접속수(CLICK_A_CNT+1)를 수정 document.loginForm2.password_text2.value = "<c:out value='${pw_secure}'/>";
//배너 추가될때 배너코드를 공통코드(ITN054) 추가 actionLoginPage();
//배너클릭통계-배너코드(ITN054): 원키퍼: 001, 간판다움: 002, NORDIC TOOLS: 003, 폰더하기: 004
//배너클릭통계-메뉴코드(ITN055): 메인:01, 로그인: 02
function fn_click_banner_add_stat(bannerMenuCode){
console.log("fn_click_banner_add_stat 배너 선택 "+ bannerMenuCode) ;
if (bannerMenuCode == "001_02")
{
window.open("https://www.one-keeper.co.kr/cp/munjaon/index.aspx"); // 새탭에서 열림
} else if (bannerMenuCode == "002_02")
{
window.open("http://ganpandaum.co.kr"); // 새탭에서 열림
}
var _param = { "bannerMenuCode" : bannerMenuCode }
$.ajax({
type : "POST",
async : false,
url : "/web/main/insertBannerClickStatAjax.do",
data : _param,
dataType:'json',
success : function(data) {
//alert(JSON.stringify(data));
console.log("sucess data1 : " + JSON.stringify(data));
if (data.isSuccess == true) {
console.log("fn_click_banner_add_stat sucess data2 : " + JSON.stringify(data));
} }
//로그인 실패로 왔을때
else{ else{
console.log("data.isSuccess not true "); $("#ret_msg").show();
console.log("sucess data.msg : " + data.msg); $("#ret_msg_info").html('<i></i>'+headerLoginResult);
console.log("sucess data1 : " + JSON.stringify(data));
} }
},
error : function(xhr, status, error) {
console.log("fn_click_banner_add_stat error : " + error);
console.log("fn_click_banner_add_stat xhr : " + JSON.stringify(xhr) + "\r\status : " + JSON.stringify(status) + "\r\error : " + JSON.stringify(error));
return false;
} }
}); </c:if>
}
</script> </script>
<div class="inner"> <div class="inner">
@ -612,16 +399,11 @@ function fn_click_banner_add_stat(bannerMenuCode){
<div class="input_left">휴대폰번호</div> <div class="input_left">휴대폰번호</div>
<div class="input_right"> <div class="input_right">
<label for="list_inputType1" class="label">휴대폰번호</label> <label for="list_inputType1" class="label">휴대폰번호</label>
<!-- <input type="text" id="hp_text2" class="list_inputType1" placeholder="가입휴대폰번호" style="width: 250px;" -->
<!-- onfocus="this.placeholder=''" onblur="this.placeholder='가입휴대폰번호'" maxlength="20" readonly> -->
<select id="hp_text2" class="list_selType1" style="width:70%;"> <select id="hp_text2" class="list_selType1" style="width:70%;">
</select> </select>
</div> </div>
<div class="login_del"> <div class="login_del">
<button type="button" class="btnType btnType3" onclick="sendMsgYn();">인증번호 받기</button> <button type="button" class="btnType btnType3" onclick="sendMsgYn();">인증번호 받기</button>
</div> </div>
</div> </div>
<div class="input_list_item" id="input_list_item_5" style="display:none;"> <div class="input_list_item" id="input_list_item_5" style="display:none;">
@ -656,16 +438,6 @@ function fn_click_banner_add_stat(bannerMenuCode){
</ul> </ul>
</div> </div>
<ul class="adv_list"> <ul class="adv_list">
<!-- <li><a href="https://www.ubikey.co.kr/" target="_blank"><img src="/publish/images/adv/adv_login_ubikey.png" alt="인증서를 사용하는 곳이면 어디서나 편리하게! 휴대폰 인증서 서비스 UBIKEY"></a></li> -->
<!--
<li><a href="https://twww.one-keeper.co.kr/cp/munjaon/index.aspx" target="_blank"><img src="/publish/images/adv/adv_login_onekeeper.png" alt="소중한 내 개인정보! 원키퍼로 내가 지킨다!"></a></li>
<li><a href="http://ganpandaum.co.kr/" target="_blank"><img src="/publish/images/adv/adv_login_ganpandaum.png" alt="간판다움 간판 잘하는 청년들이 뭉쳤다 간판, 인테리어, 네온, 썬팅, 어닝, 실사"></a></li>
-->
<!--
<li><a href="#" target="_blank" onclick="fn_click_banner_add_stat('001_02'); return false;" ><img src="/publish/images/adv/adv_login_onekeeper.png" alt="소중한 내 개인정보! 원키퍼로 내가 지킨다!"></a></li>
<li><a href="#" target="_blank" onclick="fn_click_banner_add_stat('002_02'); return false;" ><img src="/publish/images/adv/adv_login_ganpandaum.png" alt="간판다움 간판 잘하는 청년들이 뭉쳤다 간판, 인테리어, 네온, 썬팅, 어닝, 실사"></a></li>
-->
</ul> </ul>
</div> </div>
</div> </div>

View File

@ -0,0 +1,690 @@
<%@ 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="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ page import="itn.com.cmm.LoginVO" %>
<!-- 암화화 순서에 유의 -->
<link rel="stylesheet" href="/publish/css/mem.css">
<script src="/publish/js/content.js"></script>
<script type="text/javascript" src="/js/RSA/rsa.js"></script>
<script type="text/javascript" src="/js/RSA/jsbn.js"></script>
<script type="text/javascript" src="/js/RSA/prng4.js"></script>
<script type="text/javascript" src="/js/RSA/rng.js"></script>
<script src="/publish/js/jquery-3.5.0.js"></script>
<script type="text/javascript">
$(document).ready(function (){
if(${!empty message}){
alert("${message}");
}
getid(document.loginForm2);
});
function press(event) { if (event.keyCode == 13) actionLogin(); }
function actionLoginPage() {
// 아이디 공백 제거
document.loginForm2.id_text2.value = $.trim(document.loginForm2.id_text2.value);
if (document.loginForm2.id_text2.value =="") {
alert("아이디를 입력하세요");
return;
} else if (document.loginForm2.password_text2.value =="") {
alert("비밀번호를 입력하세요");
return;
} else {
//IP체크 삭제 후 바로 로그인처리 - 22.05.03
// ipCheck();
actionLogin();
/* var rsa = new RSAKey();
rsa.setPublic($('#RSAModulus2').val(),$('#RSAExponent2').val());
var id = $("#id_text2");
var pw = $("#password_text2");
document.loginForm2.id.value = rsa.encrypt(id.val());
document.loginForm2.password.value = rsa.encrypt(pw.val());
document.loginForm2.action="<c:url value='/web/user/login/actionSecurityLogin.do'/>";
saveid(document.loginForm2);
document.loginForm2.submit(); */
}
}
function ipCheck(){
//로그인 시 IP 체크
var id = $("#id_text2").val().toLowerCase();
var password = $("#password_text2").val();
var ip = "${userIp}";
var IPCnt;
$.ajax({
url : "<c:url value='/web/user/login/selectIPCntAjax.do' />",
type : 'POST',
data : {id : id, ip : ip},
dataType:'json',
async : false,
success : function(returnData, status){
if(status == "success") {
if(returnData.IPCheck == 0){
IPCnt = returnData.IPCheck;
$("#tr_certHeader").val(returnData.tr_cert);
$("#tr_urlHeader").val(returnData.tr_url);
$("#tr_addHeader").val(returnData.tr_add);
var KMCIS_window;
//등록된 IP가 없을 시 KMC 본인인증 팝업 오픈
KMCIS_window = window.open('', 'KMCISWindow', 'width=425, height=550, resizable=0, scrollbars=no, status=0, titlebar=0, toolbar=0, left=435, top=250' );
document.reqHeaderKMCISForm.target = 'KMCISWindow';
document.reqHeaderKMCISForm.action = 'https://www.kmcert.com/kmcis/web/kmcisReq.jsp';
document.reqHeaderKMCISForm.submit();
return false;
}else{
actionLogin();
}
}else{ alert("로그인 정보가 올바르지 않습니다.");return false;}
},
error : function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
}
});
}
// Whois IP 국가코드 Check
var isKoreaIpAddress = true;
function whoisIpCountry() {
$.ajax({
type:"POST",
url: "/web/whois/whoisIpCountryAjax.do",
data: {},
dataType:'json',
async: true,
timeout: 300,
success: function (data) {
if(data.isSuccess == true) {
if (data.rspCode == "10000") {
if (data.countryCode.toUpperCase() != "KR" && data.countryCode.toUpperCase() != "NONE" && data.countryCode.toUpperCase() != "") {
isKoreaIpAddress = false;
//alert("해당 IP는 해외 IP로 확인되어, 로그인이 제한되었습니다.\n문자온 고객센터로 문의 바랍니다.");
}
}
}
},
error: function (e) {
}
});
}
function actionLogin(){
console.log('actionLogin : actionLogin')
setTimeout(function() {
if (isKoreaIpAddress == false) {
alert("해외 IP로 감지되어 로그인이 제한되었습니다.\n문자온 고객센터로 문의 바랍니다.");
location.href='/web/uat/uia/actionLogout.do';
return false;
}
// 로그인 START
var rsa = new RSAKey();
rsa.setPublic($('#RSAModulus2').val(),$('#RSAExponent2').val());
/* rsa.setPublic(document.loginForm2.RSAModulus.value, document.loginForm2.RSAExponent.value); */
var id = $("#id_text2");
var pw = $("#password_text2");
/* var id = document.loginForm2.id_text;
var pw = document.loginForm2.password_text; */
/* $("#id").val(rsa.encrypt(id.val())); */
/* $("#password").val(rsa.encrypt(pw.val())); */
document.loginForm2.id.value = rsa.encrypt(id.val().toLowerCase());
document.loginForm2.password.value = rsa.encrypt(pw.val());
//document.loginForm2.action="<c:url value='/web/user/login/actionSecurityLogin.do'/>";
saveid(document.loginForm2);
//document.loginForm2.submit();
var checkForm = $("form[name=loginForm2]").serialize() ;
$.ajax({
type : "POST",
async : false,
url : "/web/user/login/actionSecurityLoginBeforeHpAjax.do",
data : checkForm,
dataType:'json',
success : function(data) {
//alert(data.status);
//alert(data.data.moblphonNo);
if (data.status=="success"){
document.loginForm2.passFlag.value = data.passFlag;
if(data.passFlag == "Y")
{
actionLogin_end();
}
else
{
//번호인증팝업 띄우기
$("#input_list_item_1").hide();
$("#input_list_item_2").hide();
$("#input_list_item_3").hide();
$("#input_list_item_0").hide();
$("#input_list_item_4").show();
$("#input_list_item_5").show();
$("#input_list_item_6").show();
// $("#hp_text2").val(data.data.moblphonNo);
var $select = $('#hp_text2');
data.mberCertPhoneList.forEach(function(item) {
$select.append($('<option>', {
value: item.mbtlnum, // option의 value 값
text: item.mbtlnum+'('+item.certAlias+')' // option의 화면에 보이는 텍스트
}));
});
}
}else if (data.status=="fail"){
if (data.returnType == "A"){
//휴면 회원
document.loginForm2.action="<c:url value='/web/user/humanPage.do'/>";
document.loginForm2.submit();
}else if (data.returnType == "B"){
//기업회원 기업정보 기입
document.cmpChangeForm.mberId.value = data.mberId;
document.cmpChangeForm.action="<c:url value='/web/user/login/membershipAttachDocBefore.do'/>";
document.cmpChangeForm.submit();
}else if (data.returnType == "C"){
//스팸문자이용제한페이지
document.cmpChangeForm.mberId.value = data.mberId;
document.cmpChangeForm.action="<c:url value='/web/user/login/loginRestrictionUse.do'/>";
document.cmpChangeForm.submit();
}else{
$("#ret_msg").show();
$("#ret_msg_info").html('<i></i>'+data.msg);
}
}
//alert(JSON.stringify(data));
console.log("sucess data1 : " + JSON.stringify(data));
if (data.isSuccess == true) {
console.log("fn_click_banner_add_stat sucess data2 : " + JSON.stringify(data));
}
else {
console.log("data.isSuccess not true ");
console.log("sucess data.msg : " + data.msg);
console.log("sucess data1 : " + JSON.stringify(data));
}
},
error : function(xhr, status, error) {
console.log("fn_click_banner_add_stat error : " + error);
console.log("fn_click_banner_add_stat xhr : " + JSON.stringify(xhr) + "\r\status : " + JSON.stringify(status) + "\r\error : " + JSON.stringify(error));
return false;
}
});
}, 600);
}
//아이디/휴대폰 번호 체크
function actionLogin_end(){
if (isKoreaIpAddress == false) {
alert("해외 IP로 감지되어 로그인이 제한되었습니다.\n문자온 고객센터로 문의 바랍니다.");
location.href='/web/uat/uia/actionLogout.do';
return false;
}
// 로그인 START
var rsa = new RSAKey();
rsa.setPublic($('#RSAModulus2').val(),$('#RSAExponent2').val());
/* rsa.setPublic(document.loginForm2.RSAModulus.value, document.loginForm2.RSAExponent.value); */
//var id = $("#id_text2");
//var pw = $("#password_text2");
var hp = $("#hp_text2").val();
var num = $("#num_text2").val();
/* var id = document.loginForm2.id_text;
var pw = document.loginForm2.password_text; */
/* $("#id").val(rsa.encrypt(id.val())); */
/* $("#password").val(rsa.encrypt(pw.val())); */
//document.loginForm2.id.value = rsa.encrypt(id.val().toLowerCase());
//document.loginForm2.password.value = rsa.encrypt(pw.val());
document.loginForm2.hp.value = hp;
document.loginForm2.num.value = num;
document.loginForm2.action="<c:url value='/web/user/login/actionSecurityLoginAfterHp.do'/>";
saveid(document.loginForm2);
document.loginForm2.submit();
}
//아이디/휴대폰 번호 체크
function step1IdCheck(){
document.checkForm.callTo.value = $('#hp_text2').val();
document.checkForm.userId.value = $('#id_text2').val().toLowerCase();
//document.checkForm.searchNm.value = $('#findPw_userNm').val();
if ($('#id_text2').val()==''){
alert("아이디를 입력해주세요.");
return;
}else if ($('#hp_text2').val()==''){
alert("핸드폰번호를 입력해주세요.");
return;
}
var checkForm = $("form[name=checkForm]").serialize() ;
$.ajax({
url : "<c:url value='/web/user/sendSysMsgDataAjax.do' />",
type : 'POST',
data : checkForm,
dataType:'json',
success : function(returnData, status){
if(status == "success") {
alert(returnData.message);
if(returnData.result == "success") {
timer();
}
}else{ alert("실패");return;}
},
error : function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
}
});
}
var time = 300; //기준시간 작성
var min = ""; //분
var sec = ""; //초
//인증번호 타이머
function timer(){
//setInterval(함수, 시간) : 주기적인 실행
var x = setInterval(function() {
//parseInt() : 정수를 반환
min = parseInt(time/60);
sec = time%60; //나머지를 계산
document.getElementById("timer").innerHTML = min + "분" + sec + "초";
time--;
//타임아웃 시
if (time < 0) {
clearInterval(x); //setInterval() 실행을 끝냄
document.getElementById("timer").innerHTML = "시간초과";
}
}, 1000);
if(time != 300){
time = 300;
clearInterval(x);
}
}
function actionLogin_bak(){
// Whois IP 국가코드
//whoisIpCountry();
setTimeout(function() {
if (isKoreaIpAddress == false) {
alert("해외 IP로 감지되어 로그인이 제한되었습니다.\n문자온 고객센터로 문의 바랍니다.");
location.href='/web/uat/uia/actionLogout.do';
return false;
}
// 로그인 START
var rsa = new RSAKey();
rsa.setPublic($('#RSAModulus2').val(),$('#RSAExponent2').val());
/* rsa.setPublic(document.loginForm2.RSAModulus.value, document.loginForm2.RSAExponent.value); */
var id = $("#id_text2");
var pw = $("#password_text2");
/* var id = document.loginForm2.id_text;
var pw = document.loginForm2.password_text; */
/* $("#id").val(rsa.encrypt(id.val())); */
/* $("#password").val(rsa.encrypt(pw.val())); */
document.loginForm2.id.value = rsa.encrypt(id.val().toLowerCase());
document.loginForm2.password.value = rsa.encrypt(pw.val());
document.loginForm2.action="<c:url value='/web/user/login/actionSecurityLogin.do'/>";
saveid(document.loginForm2);
document.loginForm2.submit();
}, 600);
}
//인증번호 발송 1분마다 한번씩 보내기
function sendMsgYn(){
document.checkForm.receive.value = $('#hp_text2').val();
if ($('#hp_text2').val()==''){
alert("휴대폰 번호를 입력해주세요.");
return;
}
var checkForm = $("form[name=checkForm]").serialize() ;
$.ajax({
url : "<c:url value='/web/user/sendSysMsgSelectAjax.do' />",
type : 'POST',
data : checkForm,
dataType:'json',
success : function(returnData, status){
if(status == "success") {
if(returnData.compare){
step1IdCheck();
}else{
alert("인증번호 발송은 1분마다 가능합니다.");
return;
}
}else{ alert("실패");return;}
},
error : function(request , status, error){
alert("code:"+request.status+"\n"+"message:"+request.responseText+"\n"+"error:"+error);
}
});
}
function textClear(pram){
var area = pram;
$('#'+area).val('');
}
function saveid(form) {
var expdate = new Date();
// 기본적으로 30일동안 기억하게 함. 일수를 조절하려면 * 30에서 숫자를 조절하면 됨
if (form.checkId.checked)
expdate.setTime(expdate.getTime() + 1000 * 3600 * 24 * 30); // 30일
else
expdate.setTime(expdate.getTime() - 1); // 쿠키 삭제조건
setCookie("ncms_saveid", form.id_text2.value, expdate);
}
function setCookie (name, value, expires) {
document.cookie = name + "=" + escape (value) + "; path=/; expires=" + expires.toGMTString();
}
function getid(form){
if(getCookie("ncms_saveid") != ""){
form.checkId.checked = (form.id_text2.value = getCookie("ncms_saveid"));
}
/* form.checkId.checked = ((form.id_text.value = getCookie("ncms_saveid")) != ""); */
}
function getCookie(Name) {
var search = Name + "="
if (document.cookie.length > 0) { // 쿠키가 설정되어 있다면
offset = document.cookie.indexOf(search)
if (offset != -1) { // 쿠키가 존재하면
offset += search.length
// set index of beginning of value
end = document.cookie.indexOf(";", offset)
// 쿠키 값의 마지막 위치 인덱스 번호 설정
if (end == -1)
end = document.cookie.length
return unescape(document.cookie.substring(offset, end))
}
}
return "";
}
//로그인 화면 비밀번호 보기 추가
function fn_passView(obj){
var passInputType = $('#password_text2').prop("type");
if(passInputType == 'text'){
$('#password_text2').prop("type", "password");
//비밀번호 보호 이미지
$(obj).find('img').attr('src', '/publish/images/content/password_protect.png');
}else{
$('#password_text2').prop("type", "text");
//비밀번호 비보호 이미지
$(obj).find('img').attr('src', '/publish/images/content/password_protect2.png');
}
}
//함수명: 배너 클릭하면 통계 추가 (2023-05-17 최남규) - 메인화면(mainPage.jsp)에도 같음 함수명 추가했음(단, 배너 갯수 다름)
//설명: 베너코드(ITN054)와 메뉴코드(ITN055) 조합코드 전달 후 Ajax.do 에서 '_' 분리후 날짜와 배너코드와 메뉴코드와 클릭수 +1
// 테이블(mj_banner_click_stat)에 최초 등록 후 이후 전체접속수(CLICK_A_CNT+1)를 수정
//배너 추가될때 배너코드를 공통코드(ITN054) 추가
//배너클릭통계-배너코드(ITN054): 원키퍼: 001, 간판다움: 002, NORDIC TOOLS: 003, 폰더하기: 004
//배너클릭통계-메뉴코드(ITN055): 메인:01, 로그인: 02
function fn_click_banner_add_stat(bannerMenuCode){
console.log("fn_click_banner_add_stat 배너 선택 "+ bannerMenuCode) ;
if (bannerMenuCode == "001_02")
{
window.open("https://www.one-keeper.co.kr/cp/munjaon/index.aspx"); // 새탭에서 열림
} else if (bannerMenuCode == "002_02")
{
window.open("http://ganpandaum.co.kr"); // 새탭에서 열림
}
var _param = { "bannerMenuCode" : bannerMenuCode }
$.ajax({
type : "POST",
async : false,
url : "/web/main/insertBannerClickStatAjax.do",
data : _param,
dataType:'json',
success : function(data) {
//alert(JSON.stringify(data));
console.log("sucess data1 : " + JSON.stringify(data));
if (data.isSuccess == true) {
console.log("fn_click_banner_add_stat sucess data2 : " + JSON.stringify(data));
}
else {
console.log("data.isSuccess not true ");
console.log("sucess data.msg : " + data.msg);
console.log("sucess data1 : " + JSON.stringify(data));
}
},
error : function(xhr, status, error) {
console.log("fn_click_banner_add_stat error : " + error);
console.log("fn_click_banner_add_stat xhr : " + JSON.stringify(xhr) + "\r\status : " + JSON.stringify(status) + "\r\error : " + JSON.stringify(error));
return false;
}
});
}
</script>
<div class="inner">
<form:form id="loginForm2" name="loginForm2" method="post">
<input type="hidden" name="beforeUrl" value="<c:out value='/web/user/login/login.do'/>"/>
<input type="hidden" name="userSe" value="USR"/>
<input type="hidden" id="RSAModulus2" value="${RSAModulus}"/>
<input type="hidden" id="RSAExponent2" value="${RSAExponent}"/>
<input type="hidden" id="id" name="id">
<input type="hidden" id="password" name="password">
<input type="hidden" name="goEventPay" value="${goEventPay}"/>
<input type="hidden" id="hp" name="hp">
<input type="hidden" id="num" name="num">
<input type="hidden" id="passFlag" name="passFlag">
<div class="send_top">
<div class="mypage_content current">
<div class="heading">
<h2>로그인</h2>
</div>
<div class="mem_cont_in widthS login_wrap">
<div class="input_list">
<p class="welcome">
<span>문자온</span>에 오신것을 환영합니다.<br>
<span class="c_222 fwMd">로그인</span>해주세요.
</p>
<div class="input_list_item" id="input_list_item_1">
<div class="input_left">아이디</div>
<div class="input_right">
<label for="list_inputType1" class="label">아이디</label>
<input type="text" id="id_text2" class="list_inputType1" placeholder="아이디를 입력해주세요"
onfocus="this.placeholder=''" onblur="this.placeholder='아이디를 입력해주세요'" onkeypress="press(event);" maxlength="20">
</div>
<div class="login_del">
<button type="button" onclick="textClear('id_text2')" tabindex="-1">
<img src="/publish/images/content/login_del.png" alt="입력 삭제">
</button>
</div>
</div>
<div class="input_list_item" id="input_list_item_2">
<div class="input_left">비밀번호</div>
<div class="input_right">
<label for="list_inputType1" class="label">비밀번호 입력</label>
<input type="password" id="password_text2" class="list_inputType1" placeholder="비밀번호를 입력해주세요"
onfocus="this.placeholder=''" onblur="this.placeholder='비밀번호를 입력해주세요'" onkeypress="if(event.keyCode==13) {actionLoginPage(); return false;}">
</div>
<div class="login_del">
<!-- <i class="password_protect"></i> -->
<button type="button" onclick="fn_passView(this); return false;" tabindex="-1">
<img id="passViewImg" src="/publish/images/content/password_protect.png" alt="비밀번호 보기">
</button>
<button type="button" onclick="textClear('password_text2')" tabindex="-1">
<img src="/publish/images/content/login_del.png" alt="입력 삭제">
</button>
</div>
</div>
<c:if test="${fail}">
<div class="pass_no2" id="input_list_item_0">
<p>
<i></i>아이디 또는 비밀번호가 일치하지 않습니다.
</p>
</div>
</c:if>
<c:if test="${fail2}">
<div class="pass_no2" id="input_list_item_0">
<p>
<i></i>인증번호가 일치하지 않습니다.
</p>
</div>
</c:if>
<div class="pass_no2" style="display:none;" id="ret_msg">
<p id="ret_msg_info">
<i></i>아이디 또는 비밀번호가 일치하지 않습니다.
</p>
</div>
<div class="mem_btnWrap2" id="input_list_item_3">
<button type="button" class="mem_btn5" onclick="javascript:actionLoginPage(); return false;">로그인</button>
</div>
<div class="input_list_item" id="input_list_item_4" style="display:none;">
<div class="input_left">휴대폰번호</div>
<div class="input_right">
<label for="list_inputType1" class="label">휴대폰번호</label>
<!-- <input type="text" id="hp_text2" class="list_inputType1" placeholder="가입휴대폰번호" style="width: 250px;" -->
<!-- onfocus="this.placeholder=''" onblur="this.placeholder='가입휴대폰번호'" maxlength="20" readonly> -->
<select id="hp_text2" class="list_selType1" style="width:70%;">
</select>
</div>
<div class="login_del">
<button type="button" class="btnType btnType3" onclick="sendMsgYn();">인증번호 받기</button>
</div>
</div>
<div class="input_list_item" id="input_list_item_5" style="display:none;">
<div class="input_left">인증번호 입력</div>
<div class="input_right">
<label for="list_inputType1" class="label">인증번호 입력</label>
<input type="text" id="num_text2" class="list_inputType1" placeholder="인증번호를 입력해주세요" maxlength="6"
onfocus="this.placeholder=''" onblur="this.placeholder='인증번호를 입력해주세요'" onkeypress="if(event.keyCode==13) {return false;}">
</div>
<div class="login_del">
<!-- <i class="password_protect"></i> -->
<button type="button" onclick="textClear('num_text2')" tabindex="-1">
<img src="/publish/images/content/login_del.png" alt="입력 삭제">
</button>
</div>
</div>
<div class="mem_btnWrap2" id="input_list_item_6" style="display:none;">
<button type="button" class="mem_btn5" onclick="javascript:actionLogin_end(); return false;">확인</button>
</div>
<div class="lgoin_bottom clearfix">
<div>
<div class="checkbox_wrap">
<input type="checkbox" id="save_id" name="checkId" title="아이디 저장" class="joinCheckbox type3">
<label for="save_id">아이디 저장</label>
</div>
</div>
<ul>
<li><a href="/web/user/login/selectUserDept.do">회원가입</a></li>
<li class="SortLine"><a href="/web/user/findUserId.do">아이디찾기</a></li>
<li class="SortLine"><a href="/web/user/rePassword.do">비밀번호찾기</a></li>
</ul>
</div>
<ul class="adv_list">
<!-- <li><a href="https://www.ubikey.co.kr/" target="_blank"><img src="/publish/images/adv/adv_login_ubikey.png" alt="인증서를 사용하는 곳이면 어디서나 편리하게! 휴대폰 인증서 서비스 UBIKEY"></a></li> -->
<!--
<li><a href="https://twww.one-keeper.co.kr/cp/munjaon/index.aspx" target="_blank"><img src="/publish/images/adv/adv_login_onekeeper.png" alt="소중한 내 개인정보! 원키퍼로 내가 지킨다!"></a></li>
<li><a href="http://ganpandaum.co.kr/" target="_blank"><img src="/publish/images/adv/adv_login_ganpandaum.png" alt="간판다움 간판 잘하는 청년들이 뭉쳤다 간판, 인테리어, 네온, 썬팅, 어닝, 실사"></a></li>
-->
<!--
<li><a href="#" target="_blank" onclick="fn_click_banner_add_stat('001_02'); return false;" ><img src="/publish/images/adv/adv_login_onekeeper.png" alt="소중한 내 개인정보! 원키퍼로 내가 지킨다!"></a></li>
<li><a href="#" target="_blank" onclick="fn_click_banner_add_stat('002_02'); return false;" ><img src="/publish/images/adv/adv_login_ganpandaum.png" alt="간판다움 간판 잘하는 청년들이 뭉쳤다 간판, 인테리어, 네온, 썬팅, 어닝, 실사"></a></li>
-->
</ul>
</div>
</div>
<!--// 비밀번호 확인 -->
</div>
</div>
<!--// 마이페이지 - 회원정보 변경 -->
</form:form>
<form name="checkForm" id="checkForm" method="post" action="#">
<input type="hidden" name="searchNm" value=""/>
<input type="hidden" name="userId" value=""/>
<input type="hidden" name="callTo" value=""/>
<input type="hidden" name="receive" value=""/>
</form>
<form name="cmpChangeForm" id="cmpChangeForm" method="post" action="#">
<input type="hidden" name="mberId" value=""/>
</form>
</div>