소셜로그인 : 소셜로그인 가입 시 본인인증 로직 추가

This commit is contained in:
projectSylas
2021-09-15 02:15:15 +00:00
parent 28dbc78cdc
commit 0f527be72e
5 changed files with 778 additions and 680 deletions

View File

@ -12,177 +12,229 @@ add_stylesheet('<link rel="stylesheet" href="'.get_social_skin_url().'/style.css
add_javascript('<script src="'.G5_JS_URL.'/remodal/remodal.js"></script>', 10);
$email_msg = $is_exists_email ? '등록할 이메일이 중복되었습니다.다른 이메일을 입력해 주세요.' : '';
?>
if($config['cf_cert_use'] && ($config['cf_cert_sa'] || $config['cf_cert_ipin'] || $config['cf_cert_hp'])) { ?>
<script src="<?php echo G5_JS_URL ?>/certify.js?v=<?php echo G5_JS_VER; ?>"></script>
<?php } ?>
<!-- 회원가입약관 동의 시작 { -->
<div class="register">
<form name="fregisterform" id="fregister" action="<?php echo $register_action_url; ?>" onsubmit="return fregisterform_submit(this);" method="POST" autocomplete="off">
<p><i class="fa fa-check-circle" aria-hidden="true"></i> 회원가입약관 및 개인정보 수집 및 이용의 내용에 동의하셔야 회원가입 하실 수 있습니다.</p>
<section id="fregister_term">
<h2>회원가입약관</h2>
<textarea readonly><?php echo get_text($config['cf_stipulation']) ?></textarea>
<fieldset class="fregister_agree">
<input type="checkbox" name="agree" value="1" id="agree11" class="selec_chk">
<label for="agree11"><span></span><b class="sound_only">회원가입약관의 내용에 동의합니다.</b></label>
</fieldset>
</section>
<section id="fregister_private">
<h2>개인정보 수집 및 이용</h2>
<div>
<table>
<caption>개인정보 수집 및 이용</caption>
<thead>
<tr>
<th>목적</th>
<th>항목</th>
<th>보유기간</th>
</tr>
</thead>
<tbody>
<tr>
<td>이용자 식별 및 본인여부 확인</td>
<td>아이디, 이름, 비밀번호<?php echo ($config['cf_cert_use'])? ", 휴대전화번호, 생년월일, 암호화된 개인식별부호(CI)" : ""; ?></td>
<td>회원 탈퇴 시까지</td>
</tr>
<tr>
<td>고객서비스 이용에 관한 통지,<br>CS대응을 위한 이용자 식별</td>
<td>연락처 (이메일, 휴대전화번호)</td>
<td>회원 탈퇴 시까지</td>
</tr>
</tbody>
</table>
</div>
<fieldset class="fregister_agree">
<input type="checkbox" name="agree2" value="1" id="agree21" class="selec_chk">
<label for="agree21"><span></span><b class="sound_only">개인정보 수집 및 이용의 내용에 동의합니다.</b></label>
</fieldset>
</section>
<div id="fregister_chkall" class="chk_all fregister_agree">
<input type="checkbox" name="chk_all" id="chk_all" class="selec_chk">
<label for="chk_all"><span></span>회원가입 약관에 모두 동의합니다</label>
</div>
<!-- } 회원가입 약관 동의 끝 -->
<!-- 회원정보 입력/수정 시작 { -->
<div class="mbskin" id="register_member">
<script src="<?php echo G5_JS_URL ?>/jquery.register_form.js"></script>
<!-- 새로가입 시작 -->
<form id="fregisterform" name="fregisterform" action="<?php echo $register_action_url; ?>" onsubmit="return fregisterform_submit(this);" method="post" enctype="multipart/form-data" autocomplete="off">
<input type="hidden" name="w" value="<?php echo $w; ?>">
<input type="hidden" name="url" value="<?php echo $urlencode; ?>">
<input type="hidden" name="mb_name" value="<?php echo $user_nick; ?>" >
<input type="hidden" name="provider" value="<?php echo $provider_name;?>" >
<input type="hidden" name="action" value="register">
<input type="hidden" name="cert_type" value="<?php echo $member['mb_certify']; ?>">
<input type="hidden" name="cert_no" value="">
<input type="hidden" name="mb_id" value="<?php echo $user_id; ?>" id="reg_mb_id">
<input type="hidden" name="mb_nick_default" value="<?php echo isset($user_nick)?get_text($user_nick):''; ?>">
<input type="hidden" name="mb_nick" value="<?php echo isset($user_nick)?get_text($user_nick):''; ?>" id="reg_mb_nick">
<div class="toggle">
<div class="toggle-title">
<span class="right_i"><i></i> 자세히보기</span>
<span class="title-name"><input type="checkbox" name="agree" value="1" id="agree11"> <label for="agree11">회원가입약관</label></span>
<div id="register_form" class="form_01">
<div class="tbl_frm01 tbl_wrap register_form_inner">
<h2>개인정보 입력</h2>
<ul>
<li>
<?php
if($config['cf_cert_use']) {
if($config['cf_cert_sa']) {
echo '<button type="button" id="win_sa_cert" class="btn_frmline win_sa_cert" data-type="TOSS">토스 인증</button>'.PHP_EOL;
echo '<button type="button" id="win_sa_cert" class="btn_frmline win_sa_cert" data-type="PASS">PASS 인증</button>'.PHP_EOL;
echo '<button type="button" id="win_sa_cert" class="btn_frmline win_sa_cert" data-type="PAYCO">페이코 인증</button>'.PHP_EOL;
echo '<button type="button" id="win_sa_cert" class="btn_frmline win_sa_cert" data-type="KFTC">금융인증서</button>'.PHP_EOL;
}
if($config['cf_cert_hp'])
echo '<button type="button" id="win_hp_cert" class="btn_frmline">휴대폰 본인확인</button>'.PHP_EOL;
if($config['cf_cert_ipin'])
echo '<button type="button" id="win_ipin_cert" class="btn_frmline">아이핀 본인확인</button>'.PHP_EOL;
echo '<noscript>본인확인을 위해서는 자바스크립트 사용이 가능해야합니다.</noscript>'.PHP_EOL;
}
?>
<?php
if ($config['cf_cert_use'] && $member['mb_certify']) {
if($member['mb_certify'] == 'ipin')
$mb_cert = '아이핀';
else
$mb_cert = '휴대폰';
?>
<div id="msg_certify">
<strong><?php echo $mb_cert; ?> 본인확인</strong><?php if ($member['mb_adult']) { ?> 및 <strong>성인인증</strong><?php } ?> 완료
</div>
<?php } ?>
</li>
<?php if($config["cf_cert_use"]){ ?>
<li>
<label for="reg_mb_name">이름<strong class="sound_only">필수</strong></label>
<input type="text" id="reg_mb_name" name="mb_name" value="<?php echo $user_name ? $user_name : $user_nick ?>" <?php echo $required ?> <?php echo $readonly; ?> class="frm_input full_input <?php echo $required ?> <?php echo $readonly ?>" size="10" placeholder="이름">
</li>
<?php } ?>
<?php if ($req_nick) { ?>
<li>
<label for="reg_mb_nick">
닉네임<strong class="sound_only">필수</strong>
<button type="button" class="tooltip_icon"><i class="fa fa-question-circle-o" aria-hidden="true"></i><span class="sound_only">설명보기</span></button>
<span class="tooltip">공백없이 한글,영문,숫자만 입력 가능 (한글2자, 영문4자 이상)<br> 닉네임을 바꾸시면 앞으로 <?php echo (int)$config['cf_nick_modify'] ?>일 이내에는 변경 할 수 없습니다.</span>
</label>
<input type="hidden" name="mb_nick_default" value="<?php echo isset($user_nick)?get_text($user_nick):''; ?>">
<input type="text" name="mb_nick" value="<?php echo isset($user_nick)?get_text($user_nick):''; ?>" id="reg_mb_nick" required class="frm_input required nospace full_input" size="10" maxlength="20" placeholder="닉네임">
<span id="msg_mb_nick"></span>
</li>
<?php } ?>
<li>
<label for="reg_mb_email">E-mail<strong class="sound_only">필수</strong>
<?php if ($config['cf_use_email_certify']) { ?>
<button type="button" class="tooltip_icon"><i class="fa fa-question-circle-o" aria-hidden="true"></i><span class="sound_only">설명보기</span></button>
<span class="tooltip">
<?php if ($w=='') { echo "E-mail 로 발송된 내용을 확인한 후 인증하셔야 회원가입이 완료됩니다."; } ?>
<?php if ($w=='u') { echo "E-mail 주소를 변경하시면 다시 인증하셔야 합니다."; } ?>
</span>
<?php } ?>
</label>
<input type="hidden" name="old_email" value="<?php echo $member['mb_email'] ?>">
<input type="text" name="mb_email" value="<?php echo isset($user_email)?$user_email:''; ?>" id="reg_mb_email" required class="frm_input email full_input required" size="70" maxlength="100" placeholder="E-mail">
<div class="check"><?php echo $email_msg; ?></div>
</li>
<li>
<?php if ($config['cf_use_hp'] || ($config["cf_cert_use"] && ($config['cf_cert_hp'] || $config['cf_cert_sa']))) { ?>
<label for="reg_mb_hp">휴대폰번호<?php if ($config['cf_req_hp']) { ?><strong class="sound_only">필수</strong><?php } ?></label>
<input type="text" name="mb_hp" value="<?php echo get_text($user_phone); ?>" id="reg_mb_hp" <?php echo ($config['cf_req_hp'])?"required":""; ?> class="frm_input full_input <?php echo ($config['cf_req_hp'])?"required":""; ?>" maxlength="20" placeholder="휴대폰번호">
<?php if ($config['cf_cert_use'] && ($config['cf_cert_hp'] || $config['cf_cert_sa'])) { ?>
<input type="hidden" name="old_mb_hp" value="<?php echo get_text($user_phone); ?>">
<?php } ?>
<?php } ?>
</li>
</ul>
</div>
</div>
<div class="btn_confirm">
<a href="<?php echo G5_URL ?>" class="btn_close">취소</a>
<button type="submit" id="btn_submit" class="btn_submit" accesskey="s"><?php echo $w==''?'회원가입':'정보수정'; ?></button>
</div>
</form>
</div>
<!-- 기존 계정 연결 -->
<div class="member_connect">
<p class="strong">혹시 기존 회원이신가요?</p>
<button type="button" class="connect-opener btn-txt" data-remodal-target="modal">
기존 계정에 연결하기
<i class="fa fa-angle-double-right"></i>
</button>
</div>
<div id="sns-link-pnl" class="remodal" data-remodal-id="modal" role="dialog" aria-labelledby="modal1Title" aria-describedby="modal1Desc">
<button type="button" class="connect-close" data-remodal-action="close">
<i class="fa fa-close"></i>
<span class="txt">닫기</span>
</button>
<div class="connect-fg">
<form method="post" action="<?php echo $login_action_url ?>" onsubmit="return social_obj.flogin_submit(this);">
<input type="hidden" id="url" name="url" value="<?php echo $login_url ?>">
<input type="hidden" id="provider" name="provider" value="<?php echo $provider_name ?>">
<input type="hidden" id="action" name="action" value="social_account_linking">
<div class="connect-title">기존 계정에 연결하기</div>
<div class="connect-desc">
기존 아이디에 SNS 아이디를 연결합니다.<br>
이 후 SNS 아이디로 로그인 하시면 기존 아이디로 로그인 할 수 있습니다.
</div>
<div class="toggle-inner">
<p><?php echo conv_content($config['cf_stipulation'], 0); ?></p>
<div id="login_fs">
<label for="login_id" class="login_id">아이디<strong class="sound_only"> 필수</strong></label>
<span class="lg_id"><input type="text" name="mb_id" id="login_id" class="frm_input required" size="20" maxLength="20" ></span>
<label for="login_pw" class="login_pw">비밀번호<strong class="sound_only"> 필수</strong></label>
<span class="lg_pw"><input type="password" name="mb_password" id="login_pw" class="frm_input required" size="20" maxLength="20"></span>
<br>
<input type="submit" value="연결하기" class="login_submit btn_submit">
</div>
</div> <!-- END OF TOGGLE -->
<div class="toggle">
<div class="toggle-title">
<span class="right_i"><i></i> 자세히보기</span>
<span class="title-name"><input type="checkbox" name="agree2" value="1" id="agree21"> <label for="agree21">개인정보 수집 및 이용</label></span>
</div>
<div class="toggle-inner">
<p><?php echo conv_content($config['cf_privacy'], 0); ?></p>
</div>
</div> <!-- END OF TOGGLE -->
<div class="all_agree">
<span class="title-name"><input type="checkbox" name="chk_all" value="1" id="chk_all"> <label for="chk_all"><strong>전체약관에 동의합니다.</strong></label></span>
</form>
</div>
</div>
<div class="sns_tbl tbl_wrap">
<table>
<caption>개인정보 입력</caption>
<tbody>
<tr>
<th scope="row"><label for="reg_mb_email">E-mail<strong class="sound_only">필수</strong></label></th>
<td>
<input type="text" name="mb_email" value="<?php echo isset($user_email)?$user_email:''; ?>" id="reg_mb_email" required class="frm_input email required" size="70" maxlength="100" placeholder="이메일을 입력해주세요." >
<p class="email_msg"><?php echo $email_msg; ?></p>
</td>
</tr>
<script>
// function fregister_submit(f)
// {
// if (!f.agree.checked) {
// alert("회원가입약관의 내용에 동의하셔야 회원가입 하실 수 있습니다.");
// f.agree.focus();
// return false;
// }
</tbody>
</table>
</div>
// if (!f.agree2.checked) {
// alert("개인정보 수집 및 이용의 내용에 동의하셔야 회원가입 하실 수 있습니다.");
// f.agree2.focus();
// return false;
// }
<div class="btn_top top">
<a href="<?php echo G5_URL ?>" class="btn_cancel">취소</a>
<input type="submit" value="회원가입" id="btn_submit" class="btn_submit" accesskey="s">
</div>
</form>
<!-- 새로가입 끝 -->
// return true;
// }
<div class="btn_group_trigger">
<a class="btn_submit_trigger">회원가입</a>
</div>
<!-- 기존 계정 연결 -->
<div class="member_connect">
<p class="strong">혹시 기존 회원이신가요?</p>
<button type="button" class="connect-opener btn-txt" data-remodal-target="modal">
기존 계정에 연결하기
<i class="fa fa-angle-double-right"></i>
</button>
</div>
<div id="sns-link-pnl" class="remodal" data-remodal-id="modal" role="dialog" aria-labelledby="modal1Title" aria-describedby="modal1Desc">
<button type="button" class="connect-close" data-remodal-action="close">
<i class="fa fa-close"></i>
<span class="txt">닫기</span>
</button>
<div class="connect-fg">
<form method="post" action="<?php echo $login_action_url ?>" onsubmit="return social_obj.flogin_submit(this);">
<input type="hidden" id="url" name="url" value="<?php echo $login_url ?>">
<input type="hidden" id="provider" name="provider" value="<?php echo $provider_name ?>">
<input type="hidden" id="action" name="action" value="social_account_linking">
<div class="connect-title">기존 계정에 연결하기</div>
<div class="connect-desc">
기존 아이디에 SNS 아이디를 연결합니다.<br>
이 후 SNS 아이디로 로그인 하시면 기존 아이디로 로그인 할 수 있습니다.
</div>
<div id="login_fs">
<label for="login_id" class="login_id">아이디<strong class="sound_only"> 필수</strong></label>
<span class="lg_id"><input type="text" name="mb_id" id="login_id" class="frm_input required" size="20" maxLength="20" ></span>
<label for="login_pw" class="login_pw">비밀번호<strong class="sound_only"> 필수</strong></label>
<span class="lg_pw"><input type="password" name="mb_password" id="login_pw" class="frm_input required" size="20" maxLength="20"></span>
<br>
<input type="submit" value="연결하기" class="login_submit btn_submit">
</div>
</form>
</div>
</div>
<script>
// submit 최종 폼체크
function fregisterform_submit(f)
{
if (!f.agree.checked) {
alert("회원가입약관의 내용에 동의하셔야 회원가입 하실 수 있습니다.");
f.agree.focus();
return false;
}
if (!f.agree2.checked) {
alert("개인정보 수집 및 이용의 내용에 동의하셔야 회원가입 하실 수 있습니다.");
f.agree2.focus();
return false;
}
// E-mail 검사
if ((f.w.value == "") || (f.w.value == "u" && f.mb_email.defaultValue != f.mb_email.value)) {
var msg = reg_mb_email_check();
if (msg) {
alert(msg);
jQuery(".email_msg").html(msg);
f.reg_mb_email.select();
return false;
}
}
document.getElementById("btn_submit").disabled = "disabled";
return true;
}
function flogin_submit(f)
{
var mb_id = $.trim($(f).find("input[name=mb_id]").val()),
mb_password = $.trim($(f).find("input[name=mb_password]").val());
if(!mb_id || !mb_password){
return false;
}
return true;
}
jQuery(function($){
if( jQuery(".toggle .toggle-title").hasClass('active') ){
jQuery(".toggle .toggle-title.active").closest('.toggle').find('.toggle-inner').show();
}
jQuery(".toggle .toggle-title .right_i").click(function(){
var $parent = $(this).parent();
if( $parent.hasClass('active') ){
$parent.removeClass("active").closest('.toggle').find('.toggle-inner').slideUp(200);
} else {
$parent.addClass("active").closest('.toggle').find('.toggle-inner').slideDown(200);
}
});
// 모두선택
$("input[name=chk_all]").click(function() {
$(function() {
// 모두선택
$("input[name=chk_all]").click(function() {
if ($(this).prop('checked')) {
$("input[name^=agree]").prop('checked', true);
} else {
@ -190,12 +242,161 @@ $email_msg = $is_exists_email ? '등록할 이메일이 중복되었습니다.
}
});
$(".btn_submit_trigger").on("click", function(e){
e.preventDefault();
$("#btn_submit").trigger("click");
});
});
</script>
$("#reg_zip_find").css("display", "inline-block");
var pageTypeParam = "pageType=register";
<?php if($config['cf_cert_use'] && $config['cf_cert_sa']) { ?>
// TOSS 통합인증
var url = "<?php echo G5_KGCERT_URL; ?>/kg_request.php";
var type = "";
var params = "";
var request_url = "";
$(".win_sa_cert").click(function() {
type = $(this).data("type");
switch(type) {
case "TOSS" :
params = "?directAgency=" + type + "&" + pageTypeParam;
request_url = url + params;
call_sa(request_url);
break;
case "PASS" :
params = "?directAgency=" + type + "&" + pageTypeParam;
request_url = url + params;
call_sa(request_url);
break;
case "PAYCO" :
params = "?directAgency=" + type + "&" + pageTypeParam;
request_url = url + params;
call_sa(request_url);
break;
case "KFTC" :
params = "?directAgency=" + type + "&" + pageTypeParam;
request_url = url + params;
call_sa(request_url);
break;
default :
return;
}
});
<?php } ?>
<?php if($config['cf_cert_use'] && $config['cf_cert_ipin']) { ?>
// 아이핀인증
var params = "";
$("#win_ipin_cert").click(function() {
params = "?" + pageTypeParam;
var url = "<?php echo G5_OKNAME_URL; ?>/ipin1.php"+params;
certify_win_open('kcb-ipin', url);
return;
});
<?php } ?>
<?php if($config['cf_cert_use'] && $config['cf_cert_hp']) { ?>
// 휴대폰인증
var params = "";
$("#win_hp_cert").click(function() {
params = "?" + pageTypeParam;
<?php
switch($config['cf_cert_hp']) {
case 'kcb':
$cert_url = G5_OKNAME_URL.'/hpcert1.php';
$cert_type = 'kcb-hp';
break;
case 'kcp':
$cert_url = G5_KCPCERT_URL.'/kcpcert_form.php';
$cert_type = 'kcp-hp';
break;
case 'lg':
$cert_url = G5_LGXPAY_URL.'/AuthOnlyReq.php';
$cert_type = 'lg-hp';
break;
default:
echo 'alert("기본환경설정에서 휴대폰 본인확인 설정을 해주십시오");';
echo 'return false;';
break;
}
?>
certify_win_open("<?php echo $cert_type; ?>", "<?php echo $cert_url; ?>"+params);
return;
});
<?php } ?>
//tooltip
$(document).on("click", ".tooltip_icon", function(e){
$(this).next(".tooltip").fadeIn(400).css("display","inline-block");
}).on("mouseout", ".tooltip_icon", function(e){
$(this).next(".tooltip").fadeOut();
});
});
// submit 최종 폼체크
function fregisterform_submit(f)
{
// 이름 검사
if (f.w.value=="") {
if (f.mb_name.value.length < 1) {
alert("이름을 입력하십시오.");
f.mb_name.focus();
return false;
}
}
<?php if($w == '' && $config['cf_cert_use'] && $config['cf_cert_req']) { ?>
// 본인확인 체크
if(f.cert_no.value=="") {
alert("회원가입을 위해서는 본인확인을 해주셔야 합니다.");
return false;
}
<?php } ?>
// 닉네임 검사
if ((f.w.value == "") || (f.w.value == "u" && f.mb_nick.defaultValue != f.mb_nick.value)) {
var msg = reg_mb_nick_check();
if (msg) {
alert(msg);
f.reg_mb_nick.select();
return false;
}
}
// E-mail 검사
if ((f.w.value == "") || (f.w.value == "u" && f.mb_email.defaultValue != f.mb_email.value)) {
var msg = reg_mb_email_check();
if (msg) {
alert(msg);
f.reg_mb_email.select();
return false;
}
}
<?php if (($config['cf_use_hp'] || $config['cf_cert_hp']) && $config['cf_req_hp']) { ?>
// 휴대폰번호 체크
var msg = reg_mb_hp_check();
if (msg) {
alert(msg);
f.reg_mb_hp.select();
return false;
}
<?php } ?>
document.getElementById("btn_submit").disabled = "disabled";
return true;
}
function flogin_submit(f)
{
var mb_id = $.trim($(f).find("input[name=mb_id]").val()),
mb_password = $.trim($(f).find("input[name=mb_password]").val());
if(!mb_id || !mb_password){
return false;
}
return true;
}
</script>
</div>
<!-- } 회원정보 입력/수정 끝 -->

View File

@ -25,6 +25,7 @@ $is_exists_social_account = social_before_join_check($url);
$user_nick = social_relace_nick($user_profile->displayName);
$user_email = isset($user_profile->emailVerified) ? $user_profile->emailVerified : $user_profile->email;
$user_id = $user_profile->sid ? preg_replace("/[^0-9a-z_]+/i", "", $user_profile->sid) : get_social_convert_id($user_profile->identifier, $provider_name);
$user_phone = $user_profile->phone;
if(! $user_nick) {
$tmp = explode('_', $user_id);

View File

@ -93,6 +93,52 @@ $mb_mailling = (isset($_POST['mb_mailling']) && $_POST['mb_mailling']) ? 1 : 0;
//회원 정보 공개
$mb_open = (isset($_POST['mb_open']) && $_POST['mb_open']) ? 1 : 0;
//===============================================================
// 본인확인
//---------------------------------------------------------------
if($config['cf_cert_use'] && $config['cf_cert_req']){
$mb_hp = hyphen_hp_number($mb_hp);
if($config['cf_cert_use'] && get_session('ss_cert_type') && get_session('ss_cert_dupinfo')) {
// 중복체크
$sql = " select mb_id from {$g5['member_table']} where mb_id <> '{$member['mb_id']}' and mb_dupinfo = '".get_session('ss_cert_dupinfo')."' ";
$row = sql_fetch($sql);
if ($row['mb_id']) {
alert("입력하신 본인확인 정보로 가입된 내역이 존재합니다.");
}
}
$sql_certify = '';
$md5_cert_no = get_session('ss_cert_no');
$cert_type = get_session('ss_cert_type');
if ($config['cf_cert_use'] && $cert_type && $md5_cert_no) {
// 해시값이 같은 경우에만 본인확인 값을 저장한다.
if (get_session('ss_cert_hash') == md5($mb_name.$cert_type.get_session('ss_cert_birth').$md5_cert_no)) {
$sql_certify .= " , mb_hp = '{$mb_hp}' ";
$sql_certify .= " , mb_certify = '{$cert_type}' ";
$sql_certify .= " , mb_adult = '".get_session('ss_cert_adult')."' ";
$sql_certify .= " , mb_birth = '".get_session('ss_cert_birth')."' ";
$sql_certify .= " , mb_sex = '".get_session('ss_cert_sex')."' ";
$sql_certify .= " , mb_dupinfo = '".get_session('ss_cert_dupinfo')."' ";
if($w == 'u')
$sql_certify .= " , mb_name = '{$mb_name}' ";
} else {
$sql_certify .= " , mb_hp = '{$mb_hp}' ";
$sql_certify .= " , mb_certify = '' ";
$sql_certify .= " , mb_adult = 0 ";
$sql_certify .= " , mb_birth = '' ";
$sql_certify .= " , mb_sex = '' ";
}
} else {
if (get_session("ss_reg_mb_name") != $mb_name || get_session("ss_reg_mb_hp") != $mb_hp) {
$sql_certify .= " , mb_hp = '{$mb_hp}' ";
$sql_certify .= " , mb_certify = '' ";
$sql_certify .= " , mb_adult = 0 ";
$sql_certify .= " , mb_birth = '' ";
$sql_certify .= " , mb_sex = '' ";
}
}
//===============================================================
}
// 회원정보 입력
$sql = " insert into {$g5['member_table']}
set mb_id = '{$mb_id}',
@ -110,8 +156,8 @@ $sql = " insert into {$g5['member_table']}
mb_mailling = '{$mb_mailling}',
mb_sms = '0',
mb_open = '{$mb_open}',
mb_open_date = '".G5_TIME_YMD."' ";
mb_open_date = '".G5_TIME_YMD."'
{$sql_certify} ";
$result = sql_query($sql, false);
if($result) {

View File

@ -12,181 +12,395 @@ add_stylesheet('<link rel="stylesheet" href="'.get_social_skin_url().'/style.css
add_javascript('<script src="'.G5_JS_URL.'/remodal/remodal.js"></script>', 10);
$email_msg = $is_exists_email ? '등록할 이메일이 중복되었습니다.다른 이메일을 입력해 주세요.' : '';
?>
if($config['cf_cert_use'] && ($config['cf_cert_sa'] || $config['cf_cert_ipin'] || $config['cf_cert_hp'])) { ?>
<script src="<?php echo G5_JS_URL ?>/certify.js?v=<?php echo G5_JS_VER; ?>"></script>
<?php } ?>
<!-- 회원가입약관 동의 시작 { -->
<div class="register">
<form name="fregisterform" id="fregister" action="<?php echo $register_action_url; ?>" onsubmit="return fregisterform_submit(this);" method="POST" autocomplete="off">
<p><i class="fa fa-check-circle" aria-hidden="true"></i> 회원가입약관 및 개인정보 수집 및 이용의 내용에 동의하셔야 회원가입 하실 수 있습니다.</p>
<section id="fregister_term">
<h2>회원가입약관</h2>
<textarea readonly><?php echo get_text($config['cf_stipulation']) ?></textarea>
<fieldset class="fregister_agree">
<input type="checkbox" name="agree" value="1" id="agree11" class="selec_chk">
<label for="agree11"><span></span><b class="sound_only">회원가입약관의 내용에 동의합니다.</b></label>
</fieldset>
</section>
<section id="fregister_private">
<h2>개인정보 수집 및 이용</h2>
<div>
<table>
<caption>개인정보 수집 및 이용</caption>
<thead>
<tr>
<th>목적</th>
<th>항목</th>
<th>보유기간</th>
</tr>
</thead>
<tbody>
<tr>
<td>이용자 식별 및 본인여부 확인</td>
<!-- #TODO 생년월일, 암호화된 개인식별부호(CI) 추가 -->
<td>아이디, 이름, 비밀번호<?php echo ($config['cf_cert_use'])? ", 휴대전화번호, 생년월일, 암호화된 개인식별부호(CI)" : ""; ?></td>
<td>회원 탈퇴 시까지</td>
</tr>
<tr>
<td>고객서비스 이용에 관한 통지,<br>CS대응을 위한 이용자 식별</td>
<td>연락처 (이메일, 휴대전화번호)</td>
<td>회원 탈퇴 시까지</td>
</tr>
</tbody>
</table>
</div>
<fieldset class="fregister_agree">
<input type="checkbox" name="agree2" value="1" id="agree21" class="selec_chk">
<label for="agree21"><span></span><b class="sound_only">개인정보 수집 및 이용의 내용에 동의합니다.</b></label>
</fieldset>
</section>
<div id="fregister_chkall" class="chk_all fregister_agree">
<input type="checkbox" name="chk_all" id="chk_all" class="selec_chk">
<label for="chk_all"><span></span>회원가입 약관에 모두 동의합니다</label>
</div>
<!-- } 회원가입 약관 동의 끝 -->
<!-- 회원정보 입력/수정 시작 { -->
<div class="mbskin" id="register_member">
<script src="<?php echo G5_JS_URL ?>/jquery.register_form.js"></script>
<!-- 새로가입 시작 -->
<form id="fregisterform" name="fregisterform" action="<?php echo $register_action_url; ?>" onsubmit="return fregisterform_submit(this);" method="post" enctype="multipart/form-data" autocomplete="off">
<input type="hidden" name="w" value="<?php echo $w; ?>">
<input type="hidden" name="url" value="<?php echo $urlencode; ?>">
<input type="hidden" name="mb_name" value="<?php echo $user_name ? $user_name : $user_nick ?>" >
<input type="hidden" name="provider" value="<?php echo $provider_name;?>" >
<input type="hidden" name="action" value="register">
<input type="hidden" name="cert_type" value="<?php echo $member['mb_certify']; ?>">
<input type="hidden" name="cert_no" value="">
<input type="hidden" name="mb_id" value="<?php echo $user_id; ?>" id="reg_mb_id">
<input type="hidden" name="mb_nick_default" value="<?php echo isset($user_nick)?get_text($user_nick):''; ?>">
<input type="hidden" name="mb_nick" value="<?php echo isset($user_nick)?get_text($user_nick):''; ?>" id="reg_mb_nick">
<div class="toggle">
<div class="toggle-title">
<span class="right_i"><i></i> 자세히보기</span>
<span class="title-name"><input type="checkbox" name="agree" value="1" id="agree11"> <label for="agree11">회원가입약관</label></span>
<div id="register_form" class="form_01">
<div class="tbl_frm01 tbl_wrap register_form_inner">
<h2>개인정보 입력</h2>
<ul>
<li>
<?php
if($config['cf_cert_use']) {
if($config['cf_cert_sa']) {
echo '<button type="button" id="win_sa_cert" class="btn_frmline win_sa_cert" data-type="TOSS">토스 인증</button>'.PHP_EOL;
echo '<button type="button" id="win_sa_cert" class="btn_frmline win_sa_cert" data-type="PASS">PASS 인증</button>'.PHP_EOL;
echo '<button type="button" id="win_sa_cert" class="btn_frmline win_sa_cert" data-type="PAYCO">페이코 인증</button>'.PHP_EOL;
echo '<button type="button" id="win_sa_cert" class="btn_frmline win_sa_cert" data-type="KFTC">금융인증서</button>'.PHP_EOL;
}
if($config['cf_cert_hp'])
echo '<button type="button" id="win_hp_cert" class="btn_frmline">휴대폰 본인확인</button>'.PHP_EOL;
if($config['cf_cert_ipin'])
echo '<button type="button" id="win_ipin_cert" class="btn_frmline">아이핀 본인확인</button>'.PHP_EOL;
echo '<noscript>본인확인을 위해서는 자바스크립트 사용이 가능해야합니다.</noscript>'.PHP_EOL;
}
?>
<?php
if ($config['cf_cert_use'] && $member['mb_certify']) {
if($member['mb_certify'] == 'ipin')
$mb_cert = '아이핀';
else
$mb_cert = '휴대폰';
?>
<div id="msg_certify">
<strong><?php echo $mb_cert; ?> 본인확인</strong><?php if ($member['mb_adult']) { ?> 및 <strong>성인인증</strong><?php } ?> 완료
</div>
<?php } ?>
</li>
<?php if($config["cf_cert_use"]){ ?>
<li>
<label for="reg_mb_name">이름<strong class="sound_only">필수</strong></label>
<input type="text" id="reg_mb_name" name="mb_name" value="<?php echo $user_name ? $user_name : $user_nick ?>" <?php echo $required ?> <?php echo $readonly; ?> class="frm_input full_input <?php echo $required ?> <?php echo $readonly ?>" size="10" placeholder="이름">
</li>
<?php } ?>
<?php if ($req_nick) { ?>
<li>
<label for="reg_mb_nick">
닉네임<strong class="sound_only">필수</strong>
<button type="button" class="tooltip_icon"><i class="fa fa-question-circle-o" aria-hidden="true"></i><span class="sound_only">설명보기</span></button>
<span class="tooltip">공백없이 한글,영문,숫자만 입력 가능 (한글2자, 영문4자 이상)<br> 닉네임을 바꾸시면 앞으로 <?php echo (int)$config['cf_nick_modify'] ?>일 이내에는 변경 할 수 없습니다.</span>
</label>
<input type="hidden" name="mb_nick_default" value="<?php echo isset($user_nick)?get_text($user_nick):''; ?>">
<input type="text" name="mb_nick" value="<?php echo isset($user_nick)?get_text($user_nick):''; ?>" id="reg_mb_nick" required class="frm_input required nospace full_input" size="10" maxlength="20" placeholder="닉네임">
<span id="msg_mb_nick"></span>
</li>
<?php } ?>
<li>
<label for="reg_mb_email">E-mail<strong class="sound_only">필수</strong>
<?php if ($config['cf_use_email_certify']) { ?>
<button type="button" class="tooltip_icon"><i class="fa fa-question-circle-o" aria-hidden="true"></i><span class="sound_only">설명보기</span></button>
<span class="tooltip">
<?php if ($w=='') { echo "E-mail 로 발송된 내용을 확인한 후 인증하셔야 회원가입이 완료됩니다."; } ?>
<?php if ($w=='u') { echo "E-mail 주소를 변경하시면 다시 인증하셔야 합니다."; } ?>
</span>
<?php } ?>
</label>
<input type="hidden" name="old_email" value="<?php echo $member['mb_email'] ?>">
<input type="text" name="mb_email" value="<?php echo isset($user_email)?$user_email:''; ?>" id="reg_mb_email" required class="frm_input email full_input required" size="70" maxlength="100" placeholder="E-mail">
<div class="check"><?php echo $email_msg; ?></div>
</li>
<li>
<?php if ($config['cf_use_hp'] || ($config["cf_cert_use"] && ($config['cf_cert_hp'] || $config['cf_cert_sa']))) { ?>
<label for="reg_mb_hp">휴대폰번호<?php if ($config['cf_req_hp']) { ?><strong class="sound_only">필수</strong><?php } ?></label>
<input type="text" name="mb_hp" value="<?php echo get_text($user_phone); ?>" id="reg_mb_hp" <?php echo ($config['cf_req_hp'])?"required":""; ?> class="frm_input full_input <?php echo ($config['cf_req_hp'])?"required":""; ?>" maxlength="20" placeholder="휴대폰번호">
<?php if ($config['cf_cert_use'] && ($config['cf_cert_hp'] || $config['cf_cert_sa'])) { ?>
<input type="hidden" name="old_mb_hp" value="<?php echo get_text($user_phone); ?>">
<?php } ?>
<?php } ?>
</li>
</ul>
</div>
</div>
<div class="btn_confirm">
<a href="<?php echo G5_URL ?>" class="btn_close">취소</a>
<button type="submit" id="btn_submit" class="btn_submit" accesskey="s"><?php echo $w==''?'회원가입':'정보수정'; ?></button>
</div>
</form>
</div>
<!-- 기존 계정 연결 -->
<div class="member_connect">
<p class="strong">혹시 기존 회원이신가요?</p>
<button type="button" class="connect-opener btn-txt" data-remodal-target="modal">
기존 계정에 연결하기
<i class="fa fa-angle-double-right"></i>
</button>
</div>
<div id="sns-link-pnl" class="remodal" data-remodal-id="modal" role="dialog" aria-labelledby="modal1Title" aria-describedby="modal1Desc">
<button type="button" class="connect-close" data-remodal-action="close">
<i class="fa fa-close"></i>
<span class="txt">닫기</span>
</button>
<div class="connect-fg">
<form method="post" action="<?php echo $login_action_url ?>" onsubmit="return social_obj.flogin_submit(this);">
<input type="hidden" id="url" name="url" value="<?php echo $login_url ?>">
<input type="hidden" id="provider" name="provider" value="<?php echo $provider_name ?>">
<input type="hidden" id="action" name="action" value="social_account_linking">
<div class="connect-title">기존 계정에 연결하기</div>
<div class="connect-desc">
기존 아이디에 SNS 아이디를 연결합니다.<br>
이 후 SNS 아이디로 로그인 하시면 기존 아이디로 로그인 할 수 있습니다.
</div>
<div class="toggle-inner">
<p><?php echo conv_content($config['cf_stipulation'], 0); ?></p>
<div id="login_fs">
<label for="login_id" class="login_id">아이디<strong class="sound_only"> 필수</strong></label>
<span class="lg_id"><input type="text" name="mb_id" id="login_id" class="frm_input required" size="20" maxLength="20" ></span>
<label for="login_pw" class="login_pw">비밀번호<strong class="sound_only"> 필수</strong></label>
<span class="lg_pw"><input type="password" name="mb_password" id="login_pw" class="frm_input required" size="20" maxLength="20"></span>
<br>
<input type="submit" value="연결하기" class="login_submit btn_submit">
</div>
</div> <!-- END OF TOGGLE -->
<div class="toggle">
<div class="toggle-title">
<span class="right_i"><i></i> 자세히보기</span>
<span class="title-name"><input type="checkbox" name="agree2" value="1" id="agree21"> <label for="agree21">개인정보처리방침안내</label></span>
</div>
<div class="toggle-inner">
<p><?php echo conv_content($config['cf_privacy'], 0); ?></p>
</div>
</div> <!-- END OF TOGGLE -->
<div class="all_agree">
<span class="title-name"><input type="checkbox" name="chk_all" value="1" id="chk_all"> <label for="chk_all"><strong>전체약관에 동의합니다.</strong></label></span>
</form>
</div>
</div>
<div class="sns_tbl tbl_wrap">
<table>
<caption>개인정보 입력</caption>
<tbody>
<tr>
<th scope="row"><label for="reg_mb_email">E-mail<strong class="sound_only">필수</strong></label></th>
<td>
<input type="text" name="mb_email" value="<?php echo isset($user_email)?$user_email:''; ?>" id="reg_mb_email" required class="frm_input email required" size="70" maxlength="100" placeholder="이메일을 입력해주세요." >
<p class="email_msg"><?php echo $email_msg; ?></p>
</td>
</tr>
<script>
// function fregister_submit(f)
// {
// if (!f.agree.checked) {
// alert("회원가입약관의 내용에 동의하셔야 회원가입 하실 수 있습니다.");
// f.agree.focus();
// return false;
// }
</tbody>
</table>
</div>
// if (!f.agree2.checked) {
// alert("개인정보 수집 및 이용의 내용에 동의하셔야 회원가입 하실 수 있습니다.");
// f.agree2.focus();
// return false;
// }
<div class="btn_confirm">
<input type="submit" value="회원가입" id="btn_submit" class="btn_submit" accesskey="s">
<a href="<?php echo G5_URL ?>" class="btn_cancel">취소</a>
</div>
</form>
<!-- 새로가입 끝 -->
// return true;
// }
<!-- 기존 계정 연결 -->
<div class="member_connect">
<p class="strong">혹시 기존 회원이신가요?</p>
<button type="button" class="connect-opener btn-txt" data-remodal-target="modal">
기존 계정에 연결하기
<i class="fa fa-angle-double-right"></i>
</button>
</div>
<div id="sns-link-pnl" class="remodal" data-remodal-id="modal" role="dialog" aria-labelledby="modal1Title" aria-describedby="modal1Desc">
<button type="button" class="connect-close" data-remodal-action="close">
<i class="fa fa-close"></i>
<span class="txt">닫기</span>
</button>
<div class="connect-fg">
<form method="post" action="<?php echo $login_action_url ?>" onsubmit="return social_obj.flogin_submit(this);">
<input type="hidden" id="url" name="url" value="<?php echo $login_url ?>">
<input type="hidden" id="provider" name="provider" value="<?php echo $provider_name ?>">
<input type="hidden" id="action" name="action" value="social_account_linking">
<div class="connect-title">기존 계정에 연결하기</div>
<div class="connect-desc">
기존 아이디에 SNS 아이디를 연결합니다.<br>
이 후 SNS 아이디로 로그인 하시면 기존 아이디로 로그인 할 수 있습니다.
</div>
<div id="login_fs">
<label for="login_id" class="login_id">아이디<strong class="sound_only"> 필수</strong></label>
<span class="lg_id"><input type="text" name="mb_id" id="login_id" class="frm_input required" size="20" maxLength="20" ></span>
<label for="login_pw" class="login_pw">비밀번호<strong class="sound_only"> 필수</strong></label>
<span class="lg_pw"><input type="password" name="mb_password" id="login_pw" class="frm_input required" size="20" maxLength="20"></span>
<br>
<input type="submit" value="연결하기" class="login_submit btn_submit">
</div>
</form>
</div>
</div>
<script>
// submit 최종 폼체크
function fregisterform_submit(f)
{
if (!f.agree.checked) {
alert("회원가입약관의 내용에 동의하셔야 회원가입 하실 수 있습니다.");
f.agree.focus();
return false;
}
if (!f.agree2.checked) {
alert("개인정보처리방침안내의 내용에 동의하셔야 회원가입 하실 수 있습니다.");
f.agree2.focus();
return false;
}
// E-mail 검사
if ((f.w.value == "") || (f.w.value == "u" && f.mb_email.defaultValue != f.mb_email.value)) {
var msg = reg_mb_email_check();
if (msg) {
alert(msg);
jQuery(".email_msg").html(msg);
f.reg_mb_email.select();
return false;
}
}
document.getElementById("btn_submit").disabled = "disabled";
return true;
}
function flogin_submit(f)
{
var mb_id = $.trim($(f).find("input[name=mb_id]").val()),
mb_password = $.trim($(f).find("input[name=mb_password]").val());
if(!mb_id || !mb_password){
return false;
}
return true;
}
jQuery(function($){
if( jQuery(".toggle .toggle-title").hasClass('active') ){
jQuery(".toggle .toggle-title.active").closest('.toggle').find('.toggle-inner').show();
}
jQuery(".toggle .toggle-title .right_i").click(function(){
var $parent = $(this).parent();
if( $parent.hasClass('active') ){
$parent.removeClass("active").closest('.toggle').find('.toggle-inner').slideUp(200);
} else {
$parent.addClass("active").closest('.toggle').find('.toggle-inner').slideDown(200);
}
});
// 모두선택
$("input[name=chk_all]").click(function() {
$(function() {
// 모두선택
$("input[name=chk_all]").click(function() {
if ($(this).prop('checked')) {
$("input[name^=agree]").prop('checked', true);
} else {
$("input[name^=agree]").prop("checked", false);
}
});
});
</script>
</div>
$("#reg_zip_find").css("display", "inline-block");
var pageTypeParam = "pageType=register";
<?php if($config['cf_cert_use'] && $config['cf_cert_sa']) { ?>
// TOSS 통합인증
var url = "<?php echo G5_KGCERT_URL; ?>/kg_request.php";
var type = "";
var params = "";
var request_url = "";
$(".win_sa_cert").click(function() {
if(!cert_confirm()) return false;
type = $(this).data("type");
switch(type) {
case "TOSS" :
params = "?directAgency=" + type + "&" + pageTypeParam;
request_url = url + params;
call_sa(request_url);
break;
case "PASS" :
params = "?directAgency=" + type + "&" + pageTypeParam;
request_url = url + params;
call_sa(request_url);
break;
case "PAYCO" :
params = "?directAgency=" + type + "&" + pageTypeParam;
request_url = url + params;
call_sa(request_url);
break;
case "KFTC" :
params = "?directAgency=" + type + "&" + pageTypeParam;
request_url = url + params;
call_sa(request_url);
break;
default :
return;
}
});
<?php } ?>
<?php if($config['cf_cert_use'] && $config['cf_cert_ipin']) { ?>
// 아이핀인증
var params = "";
$("#win_ipin_cert").click(function() {
if(!cert_confirm()) return false;
params = "?" + pageTypeParam;
var url = "<?php echo G5_OKNAME_URL; ?>/ipin1.php"+params;
certify_win_open('kcb-ipin', url);
return;
});
<?php } ?>
<?php if($config['cf_cert_use'] && $config['cf_cert_hp']) { ?>
// 휴대폰인증
var params = "";
$("#win_hp_cert").click(function() {
if(!cert_confirm()) return false;
params = "?" + pageTypeParam;
<?php
switch($config['cf_cert_hp']) {
case 'kcb':
$cert_url = G5_OKNAME_URL.'/hpcert1.php';
$cert_type = 'kcb-hp';
break;
case 'kcp':
$cert_url = G5_KCPCERT_URL.'/kcpcert_form.php';
$cert_type = 'kcp-hp';
break;
case 'lg':
$cert_url = G5_LGXPAY_URL.'/AuthOnlyReq.php';
$cert_type = 'lg-hp';
break;
default:
echo 'alert("기본환경설정에서 휴대폰 본인확인 설정을 해주십시오");';
echo 'return false;';
break;
}
?>
certify_win_open("<?php echo $cert_type; ?>", "<?php echo $cert_url; ?>"+params);
return;
});
<?php } ?>
//tooltip
$(document).on("click", ".tooltip_icon", function(e){
$(this).next(".tooltip").fadeIn(400).css("display","inline-block");
}).on("mouseout", ".tooltip_icon", function(e){
$(this).next(".tooltip").fadeOut();
});
});
// submit 최종 폼체크
function fregisterform_submit(f)
{
// 이름 검사
if (f.w.value=="") {
if (f.mb_name.value.length < 1) {
alert("이름을 입력하십시오.");
f.mb_name.focus();
return false;
}
}
<?php if($w == '' && $config['cf_cert_use'] && $config['cf_cert_req']) { ?>
// 본인확인 체크
if(f.cert_no.value=="") {
alert("회원가입을 위해서는 본인확인을 해주셔야 합니다.");
return false;
}
<?php } ?>
// 닉네임 검사
if ((f.w.value == "") || (f.w.value == "u" && f.mb_nick.defaultValue != f.mb_nick.value)) {
var msg = reg_mb_nick_check();
if (msg) {
alert(msg);
f.reg_mb_nick.select();
return false;
}
}
// E-mail 검사
if ((f.w.value == "") || (f.w.value == "u" && f.mb_email.defaultValue != f.mb_email.value)) {
var msg = reg_mb_email_check();
if (msg) {
alert(msg);
f.reg_mb_email.select();
return false;
}
}
<?php if (($config['cf_use_hp'] || $config['cf_cert_hp']) && $config['cf_req_hp']) { ?>
// 휴대폰번호 체크
var msg = reg_mb_hp_check();
if (msg) {
alert(msg);
f.reg_mb_hp.select();
return false;
}
<?php } ?>
document.getElementById("btn_submit").disabled = "disabled";
return true;
}
function flogin_submit(f)
{
var mb_id = $.trim($(f).find("input[name=mb_id]").val()),
mb_password = $.trim($(f).find("input[name=mb_password]").val());
if(!mb_id || !mb_password){
return false;
}
return true;
}
</script>
<!-- } 회원정보 입력/수정 끝 -->

View File

@ -1,364 +0,0 @@
<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
if( ! $config['cf_social_login_use']) { //소셜 로그인을 사용하지 않으면
return;
}
// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨
add_stylesheet('<link rel="stylesheet" href="'.G5_JS_URL.'/remodal/remodal.css">', 11);
add_stylesheet('<link rel="stylesheet" href="'.G5_JS_URL.'/remodal/remodal-default-theme.css">', 12);
add_stylesheet('<link rel="stylesheet" href="'.get_social_skin_url().'/style.css?ver='.G5_CSS_VER.'">', 13);
add_javascript('<script src="'.G5_JS_URL.'/remodal/remodal.js"></script>', 10);
$email_msg = $is_exists_email ? '등록할 이메일이 중복되었습니다.다른 이메일을 입력해 주세요.' : '';
?>
<!-- 회원가입약관 동의 시작 { -->
<div class="register">
<form name="fregister" id="fregister" action="" onsubmit="return fregister_submit(this);" method="POST" autocomplete="off">
<p><i class="fa fa-check-circle" aria-hidden="true"></i> 회원가입약관 및 개인정보 수집 및 이용의 내용에 동의하셔야 회원가입 하실 수 있습니다.</p>
<section id="fregister_term">
<h2>회원가입약관</h2>
<textarea readonly><?php echo get_text($config['cf_stipulation']) ?></textarea>
<fieldset class="fregister_agree">
<input type="checkbox" name="agree" value="1" id="agree11" class="selec_chk">
<label for="agree11"><span></span><b class="sound_only">회원가입약관의 내용에 동의합니다.</b></label>
</fieldset>
</section>
<section id="fregister_private">
<h2>개인정보 수집 및 이용</h2>
<div>
<table>
<caption>개인정보 수집 및 이용</caption>
<thead>
<tr>
<th>목적</th>
<th>항목</th>
<th>보유기간</th>
</tr>
</thead>
<tbody>
<tr>
<td>이용자 식별 및 본인여부 확인</td>
<!-- #TODO 생년월일, 암호화된 개인식별부호(CI) 추가 -->
<td>아이디, 이름, 비밀번호</td>
<td>회원 탈퇴 시까지</td>
</tr>
<tr>
<td>고객서비스 이용에 관한 통지,<br>CS대응을 위한 이용자 식별</td>
<td>연락처 (이메일, 휴대전화번호)</td>
<td>회원 탈퇴 시까지</td>
</tr>
</tbody>
</table>
</div>
<fieldset class="fregister_agree">
<input type="checkbox" name="agree2" value="1" id="agree21" class="selec_chk">
<label for="agree21"><span></span><b class="sound_only">개인정보 수집 및 이용의 내용에 동의합니다.</b></label>
</fieldset>
</section>
<div id="fregister_chkall" class="chk_all fregister_agree">
<input type="checkbox" name="chk_all" id="chk_all" class="selec_chk">
<label for="chk_all"><span></span>회원가입 약관에 모두 동의합니다</label>
</div>
<!-- } 회원가입 약관 동의 끝 -->
<!-- 회원정보 입력/수정 시작 { -->
<script src="<?php echo G5_JS_URL ?>/jquery.register_form.js"></script>
<!-- 새로가입 시작 -->
<input type="hidden" name="w" value="<?php echo $w; ?>">
<input type="hidden" name="url" value="<?php echo $urlencode; ?>">
<input type="hidden" name="mb_name" value="<?php echo $user_name ? $user_name : $user_nick ?>" >
<input type="hidden" name="provider" value="<?php echo $provider_name;?>" >
<input type="hidden" name="action" value="register">
<div id="register_form" class="form_01">
<div class="tbl_frm01 tbl_wrap register_form_inner">
<h2>개인정보 입력</h2>
<ul>
<li>
<?php
if($config['cf_cert_use']) {
// #TODO 조건 추가 필요
// if($config['cf_cert_sa']) {
echo '<button type="button" id="win_sa_toss" class="btn_frmline">토스 인증</button>'.PHP_EOL;
echo '<button type="button" id="win_sa_pass" class="btn_frmline">PASS 인증</button>'.PHP_EOL;
echo '<button type="button" id="win_sa_payco" class="btn_frmline">페이코 인증</button>'.PHP_EOL;
echo '<button type="button" id="win_sa_cert" class="btn_frmline">금융인증서</button>'.PHP_EOL;
// }
if($config['cf_cert_hp'])
echo '<button type="button" id="win_hp_cert" class="btn_frmline">휴대폰 본인확인</button>'.PHP_EOL;
if($config['cf_cert_ipin'])
echo '<button type="button" id="win_ipin_cert" class="btn_frmline">아이핀 본인확인</button>'.PHP_EOL;
echo '<noscript>본인확인을 위해서는 자바스크립트 사용이 가능해야합니다.</noscript>'.PHP_EOL;
}
?>
<?php
if ($config['cf_cert_use'] && $member['mb_certify']) {
if($member['mb_certify'] == 'ipin')
$mb_cert = '아이핀';
else
$mb_cert = '휴대폰';
?>
<div id="msg_certify">
<strong><?php echo $mb_cert; ?> 본인확인</strong><?php if ($member['mb_adult']) { ?> 및 <strong>성인인증</strong><?php } ?> 완료
</div>
<?php } ?>
</li>
<li>
<label for="reg_mb_name">이름<strong class="sound_only">필수</strong></label>
<input type="text" id="reg_mb_name" name="mb_name" value="<?php echo get_text($member['mb_name']) ?>" <?php echo $required ?> <?php echo $readonly; ?> class="frm_input full_input <?php echo $required ?> <?php echo $readonly ?>" size="10" placeholder="이름">
</li>
<?php if ($req_nick) { ?>
<li>
<label for="reg_mb_nick">
닉네임<strong class="sound_only">필수</strong>
<button type="button" class="tooltip_icon"><i class="fa fa-question-circle-o" aria-hidden="true"></i><span class="sound_only">설명보기</span></button>
<span class="tooltip">공백없이 한글,영문,숫자만 입력 가능 (한글2자, 영문4자 이상)<br> 닉네임을 바꾸시면 앞으로 <?php echo (int)$config['cf_nick_modify'] ?>일 이내에는 변경 할 수 없습니다.</span>
</label>
<input type="hidden" name="mb_nick_default" value="<?php echo isset($member['mb_nick'])?get_text($member['mb_nick']):''; ?>">
<input type="text" name="mb_nick" value="<?php echo isset($member['mb_nick'])?get_text($member['mb_nick']):''; ?>" id="reg_mb_nick" required class="frm_input required nospace full_input" size="10" maxlength="20" placeholder="닉네임">
<span id="msg_mb_nick"></span>
</li>
<?php } ?>
<li>
<label for="reg_mb_email">E-mail<strong class="sound_only">필수</strong>
<?php if ($config['cf_use_email_certify']) { ?>
<button type="button" class="tooltip_icon"><i class="fa fa-question-circle-o" aria-hidden="true"></i><span class="sound_only">설명보기</span></button>
<span class="tooltip">
<?php if ($w=='') { echo "E-mail 로 발송된 내용을 확인한 후 인증하셔야 회원가입이 완료됩니다."; } ?>
<?php if ($w=='u') { echo "E-mail 주소를 변경하시면 다시 인증하셔야 합니다."; } ?>
</span>
<?php } ?>
</label>
<input type="hidden" name="old_email" value="<?php echo $member['mb_email'] ?>">
<input type="text" name="mb_email" value="<?php echo isset($member['mb_email'])?$member['mb_email']:''; ?>" id="reg_mb_email" required class="frm_input email full_input required" size="70" maxlength="100" placeholder="E-mail">
<!-- #TODO 기존 회원 이메일 중복인 경우 -->
<div class="check">이미 등록된 이메일입니다. 이메일 주소를 변경해주세요.</div>
</li>
<li>
<?php if ($config['cf_use_hp'] || $config['cf_cert_hp']) { ?>
<label for="reg_mb_hp">휴대폰번호<?php if ($config['cf_req_hp']) { ?><strong class="sound_only">필수</strong><?php } ?></label>
<input type="text" name="mb_hp" value="<?php echo get_text($member['mb_hp']) ?>" id="reg_mb_hp" <?php echo ($config['cf_req_hp'])?"required":""; ?> class="frm_input full_input <?php echo ($config['cf_req_hp'])?"required":""; ?>" maxlength="20" placeholder="휴대폰번호">
<?php if ($config['cf_cert_use'] && $config['cf_cert_hp']) { ?>
<input type="hidden" name="old_mb_hp" value="<?php echo get_text($member['mb_hp']) ?>">
<?php } ?>
<?php } ?>
</li>
</ul>
</div>
</div>
<div class="btn_confirm">
<a href="<?php echo G5_URL ?>" class="btn_close">취소</a>
<button type="submit" id="btn_submit" class="btn_submit" accesskey="s"><?php echo $w==''?'회원가입':'정보수정'; ?></button>
</div>
</form>
</div>
<!-- 기존 계정 연결 -->
<div class="member_connect">
<p class="strong">혹시 기존 회원이신가요?</p>
<button type="button" class="connect-opener btn-txt" data-remodal-target="modal">
기존 계정에 연결하기
<i class="fa fa-angle-double-right"></i>
</button>
</div>
<div id="sns-link-pnl" class="remodal" data-remodal-id="modal" role="dialog" aria-labelledby="modal1Title" aria-describedby="modal1Desc">
<button type="button" class="connect-close" data-remodal-action="close">
<i class="fa fa-close"></i>
<span class="txt">닫기</span>
</button>
<div class="connect-fg">
<form method="post" action="<?php echo $login_action_url ?>" onsubmit="return social_obj.flogin_submit(this);">
<input type="hidden" id="url" name="url" value="<?php echo $login_url ?>">
<input type="hidden" id="provider" name="provider" value="<?php echo $provider_name ?>">
<input type="hidden" id="action" name="action" value="social_account_linking">
<div class="connect-title">기존 계정에 연결하기</div>
<div class="connect-desc">
기존 아이디에 SNS 아이디를 연결합니다.<br>
이 후 SNS 아이디로 로그인 하시면 기존 아이디로 로그인 할 수 있습니다.
</div>
<div id="login_fs">
<label for="login_id" class="login_id">아이디<strong class="sound_only"> 필수</strong></label>
<span class="lg_id"><input type="text" name="mb_id" id="login_id" class="frm_input required" size="20" maxLength="20" ></span>
<label for="login_pw" class="login_pw">비밀번호<strong class="sound_only"> 필수</strong></label>
<span class="lg_pw"><input type="password" name="mb_password" id="login_pw" class="frm_input required" size="20" maxLength="20"></span>
<br>
<input type="submit" value="연결하기" class="login_submit btn_submit">
</div>
</form>
</div>
</div>
<script>
function fregister_submit(f)
{
if (!f.agree.checked) {
alert("회원가입약관의 내용에 동의하셔야 회원가입 하실 수 있습니다.");
f.agree.focus();
return false;
}
if (!f.agree2.checked) {
alert("개인정보 수집 및 이용의 내용에 동의하셔야 회원가입 하실 수 있습니다.");
f.agree2.focus();
return false;
}
return true;
}
$(function() {
// 모두선택
$("input[name=chk_all]").click(function() {
if ($(this).prop('checked')) {
$("input[name^=agree]").prop('checked', true);
} else {
$("input[name^=agree]").prop("checked", false);
}
});
$("#reg_zip_find").css("display", "inline-block");
<?php if($config['cf_cert_use'] && $config['cf_cert_ipin']) { ?>
// 아이핀인증
$("#win_ipin_cert").click(function() {
if(!cert_confirm())
return false;
var url = "<?php echo G5_OKNAME_URL; ?>/ipin1.php";
certify_win_open('kcb-ipin', url);
return;
});
<?php } ?>
<?php if($config['cf_cert_use'] && $config['cf_cert_hp']) { ?>
// 휴대폰인증
$("#win_hp_cert").click(function() {
if(!cert_confirm())
return false;
<?php
switch($config['cf_cert_hp']) {
case 'kcb':
$cert_url = G5_OKNAME_URL.'/hpcert1.php';
$cert_type = 'kcb-hp';
break;
case 'kcp':
$cert_url = G5_KCPCERT_URL.'/kcpcert_form.php';
$cert_type = 'kcp-hp';
break;
case 'lg':
$cert_url = G5_LGXPAY_URL.'/AuthOnlyReq.php';
$cert_type = 'lg-hp';
break;
default:
echo 'alert("기본환경설정에서 휴대폰 본인확인 설정을 해주십시오");';
echo 'return false;';
break;
}
?>
certify_win_open("<?php echo $cert_type; ?>", "<?php echo $cert_url; ?>");
return;
});
<?php } ?>
//tooltip
$(document).on("click", ".tooltip_icon", function(e){
$(this).next(".tooltip").fadeIn(400).css("display","inline-block");
}).on("mouseout", ".tooltip_icon", function(e){
$(this).next(".tooltip").fadeOut();
});
});
// submit 최종 폼체크
function fregisterform_submit(f)
{
// 이름 검사
if (f.w.value=="") {
if (f.mb_name.value.length < 1) {
alert("이름을 입력하십시오.");
f.mb_name.focus();
return false;
}
}
<?php if($w == '' && $config['cf_cert_use'] && $config['cf_cert_req']) { ?>
// 본인확인 체크
if(f.cert_no.value=="") {
alert("회원가입을 위해서는 본인확인을 해주셔야 합니다.");
return false;
}
<?php } ?>
// 닉네임 검사
if ((f.w.value == "") || (f.w.value == "u" && f.mb_nick.defaultValue != f.mb_nick.value)) {
var msg = reg_mb_nick_check();
if (msg) {
alert(msg);
f.reg_mb_nick.select();
return false;
}
}
// E-mail 검사
if ((f.w.value == "") || (f.w.value == "u" && f.mb_email.defaultValue != f.mb_email.value)) {
var msg = reg_mb_email_check();
if (msg) {
alert(msg);
f.reg_mb_email.select();
return false;
}
}
<?php if (($config['cf_use_hp'] || $config['cf_cert_hp']) && $config['cf_req_hp']) { ?>
// 휴대폰번호 체크
var msg = reg_mb_hp_check();
if (msg) {
alert(msg);
f.reg_mb_hp.select();
return false;
}
<?php } ?>
document.getElementById("btn_submit").disabled = "disabled";
return true;
}
function flogin_submit(f)
{
var mb_id = $.trim($(f).find("input[name=mb_id]").val()),
mb_password = $.trim($(f).find("input[name=mb_password]").val());
if(!mb_id || !mb_password){
return false;
}
return true;
}
</script>
<!-- } 회원정보 입력/수정 끝 -->