| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173 |
- <!DOCTYPE html>
- <html lang="ko"
- xmlns:th="http://www.thymeleaf.org">
- <!--
- *******************************************************************************
- * @source : SnsCallBackFormMob.html
- * @desc : SNS 콜백 화면 Page
- *============================================================================
- * STYLE24
- * Copyright(C) 2020 TSIT, All rights reserved.
- *============================================================================
- * VER DATE AUTHOR DESCRIPTION
- * === =========== ========== =============================================
- * 1.0 2021.02.15 jsshin 최초 작성
- *******************************************************************************
- -->
- <head th:replace="~{mob/common/fragments/HeadMob :: head}"></head>
- <th:block th:replace="~{web/common/fragments/VariablesWeb :: variables}"></th:block>
- <th:block th:replace="~{mob/common/fragments/ScriptsMob :: scripts}"></th:block>
- <body>
- <script th:inline="javascript">
- /*<![CDATA[*/
- const resultMap = [[${resultMap}]];
- // SNS 로그인 콜백함수(네이버, 카카오, YES24)
- var fnSnsSigninCallback = function(userInfo) {
- // 1.CI 정보로 사용자가 없어 회원가입 처리 중 이메일, 휴대전화 중복
- if (userInfo.custStat === 'DUP_PHONE_CUST') {
- mcxDialog.alert("이미 사용 중인 휴대전화번호 입니다.");
- return;
- }
- if (userInfo.custStat === 'DUP_EMAIL_CUST') {
- mcxDialog.alert("이미 사용 중인 이메일 입니다.");
- return;
- }
- // 2.SNS 로그인 정보로 탈퇴확인
- if (userInfo.custStat === 'SECEDE_CUST') {
- mcxDialog.alert("탈퇴 회원 입니다.");
- return;
- }
- // 3.SNS 로그인 정보로 휴면확인
- if (userInfo.custStat === 'DORMANT_CUST') {
- mcxDialog.alertC("휴면 고객님께서는 휴면을<br>해지하신 후 사용하실 수 있습니다.", {
- sureBtnText: "확인",
- sureBtnClick: function() {
- cfnGoToPage(_PAGE_CUSTOMER_DORMANT);
- }
- });
- return;
- }
- // 4.휴대전화 정보가 없으면 SNS 가입화면 이동
- if (userInfo.custStat === 'EMPTY_PHONE_CUST') {
- cfnGoToPage(_PAGE_CUSTOMER_SNS_JOIN);
- }
- // 5.YES24 첫 로그인 시도 시 정보동의 페이지 이동
- if (userInfo.custStat === 'NEED_AGREE_CUST') {
- cfnConsentUseInfo(userInfo.custNm);
- return;
- }
- // 6.SNS 정보로 가입 성공시 가입완료 페이지 이동
- if (userInfo.custStat === 'NEW_CUST') {
- cfnGoToPage(_PAGE_CUSTOMER_JOIN_COMPLETE);
- return;
- }
- // 7.SNS 정보로 가입 실패시 안내 창 알림
- if (userInfo.custStat === 'FAIL_CUST') {
- mcxDialog.alertC("회원가입에 실패 했습니다.<br> 고객센터에 문의 하시기 바랍니다.", {
- sureBtnText: "확인",
- sureBtnClick: function() {
- cfnGoToPage(_PAGE_CUSTOMER_JOIN_TYPE);
- }
- });
- return;
- }
- // 8.CI 정보가 없을때 안내 창 알림
- if (userInfo.custStat === 'EMPTY_CI_CUST') {
- mcxDialog.alertC("연계정보(CI) 값이 없습니다.<br> 고객센터에 문의 하시기 바랍니다.", {
- sureBtnText: "확인",
- sureBtnClick: function() {
- cfnGoToPage(_PAGE_CUSTOMER_JOIN_TYPE);
- }
- });
- return;
- }
- // 9.SNS 로그인 연동 성공 및 기존 SNS 연동된 회원 로그인 시도
- if (userInfo.custStat === 'SUCC_CUST') {
- let params = {};
- params.snsType = userInfo.snsType;
- params.snsId = [[${snsLoginPrefix}]] + userInfo.snsId;
- $.post(_frontUrl + '/login'
- , $.param(params)
- ,fnReloadAfterLogin
- , "json");
- }
- };
- // 로그인 후 처리
- var fnReloadAfterLogin = function(result) {
- if (result.status === 'OK') {
- if (_isApp === 'true') {
- if (gagajf.isNull(result.appAgreeDt)) {
- fnAppPushAgreeUpdate('Y');
- }
- document.location.href = "idsend://?id=" + result.custNo + "^link=" + result.returnUrl;
- } else {
- document.location.href = result.returnUrl;
- }
- } else {
- fnFailLoginProcess(result);
- }
- };
- // 로그인 실패 후 과정
- var fnFailLoginProcess = function (result) {
- // 탈퇴회원
- if (result.status === 'SECEDE_CUST') {
- mcxDialog.alert("탈퇴 회원 입니다.");
- return;
- }
- // 휴면회원
- if (result.status === 'DORMANT_CUST') {
- mcxDialog.alertC("휴면 고객님께서는 휴면을<br>해지하신 후 사용하실 수 있습니다.", {
- sureBtnText: "확인",
- sureBtnClick: function() {
- cfnGoToPage(_PAGE_CUSTOMER_DORMANT);
- }
- });
- return;
- }
- // CI(본인인증)정보 없는 회원
- if (result.status === 'CI_EMPTY') {
- // 본인이증 필요한 회원
- mcxDialog.alertC("본인인증 후 다시 로그인 하시기 바랍니다.", {
- sureBtnText: "확인",
- sureBtnClick: function() {
- cfnGoToPage(_PAGE_CUSTOMER_CERTIFICATION);
- }
- });
- return;
- }
- return; // 정상적으로 로그인 되지 않았으므로 return
- }
- // 앱푸시동의 데이터 처리
- var fnAppPushAgreeUpdate = function (appAgreeYn) {
- let params = {}
- params.appAgreeYn = appAgreeYn;
- let jsonData = JSON.stringify(params);
- gagajf.ajaxJsonSubmit('/app/appagree/update', jsonData);
- }
- $(document).ready(function() {
- if (gagajf.isNull(resultMap.snsId) && gagajf.isNull(resultMap.snsType)){
- mcxDialog.alertC("인증에 실패하였습니다.<br> 로그인 정보를 확인해주시기 바랍니다.", {
- sureBtnText: "확인",
- sureBtnClick: function() {
- cfnGoToPage(_PAGE_LOGIN);
- }
- });
- } else {
- fnSnsSigninCallback(resultMap);
- }
- });
- /*]]>*/
- </script>
- </body>
- </html>
|