<!DOCTYPE html>
<html lang="ko"
	  xmlns:th="http://www.thymeleaf.org">
<!--
 *******************************************************************************
 * @source  : ConsentUseInfoFormMob.html
 * @desc    : 정보이용동의팝업
 *            Yes24 간편가입에 사용됨
 *============================================================================
 * STYLE24
 * Copyright(C) 2021 TSIT, All rights reserved.
 *============================================================================
 * VER  DATE         AUTHOR      DESCRIPTION
 * ===  ===========  ==========  =============================================
 * 1.0  2021.05.14   jsshin       최초 작성
 *******************************************************************************
 -->
<div class="modal-dialog" role="document">
	<div class="modal-content">
		<div class="modal-header sr-only">
			<h5 class="modal-title" id="mbAgreeLabel">YES24 로그인 정보 이용동의</h5>
		</div>
		<div class="modal-body">
			<div class="pop_cont">
				<div class="agree_info">
					<h5 class="title">YES24 로그인 정보 이용동의</h5>
					<p>계정연동의 경우, STYLE24 휴면계정이면<br>휴면해제 후 이용 가능합니다</p>
					<div class="info_txt">
						<ul>
							<li>“<span class="mb_name" th:text="${custNm}">회원명</span>” 님의 <em>CI, 이름, 성별, 생년월일, 핸드폰번호, 이메일 정보</em>를 로그인 연동을 위해 아이스타일24에 제공합니다.</li>
							<li>정보제공 동의 시 YES24 계정으로 로그인 가능하며, 간편하게 회원가입이 가능합니다.</li>
						</ul>
					</div>
				</div>
			</div>
		</div>
		<div class="modal-footer">
			<div class="btn_group_flex">
				<div>
					<button type="button" id="btnAgree" class="btn btn_primary">
						<span>동의하기</span>
					</button>
				</div>
				<div>
					<button type="button" id="btnClose" class="btn btn_dark">
						<span>닫기</span>
					</button>
				</div>
			</div>
		</div>
	</div>
	<a href="#close-modal" rel="modal:close" id="mbAgreePop_close" class="close-modal">Close</a>
</div>
<script th:inline="javascript">
	/*<![CDATA[*/
	let ysCustAppAgreeYn;
	let ysCustMkAgreeYn;
	let ysPhoneAppAgreeYn;
	let ysPhoneMkAgreeYn;
	let ysCustNo;
	let ysReturnUrl;

	$('#btnAgree').on('click', function () {
		let jsonData = JSON.stringify({});
		gagajf.ajaxJsonSubmit('/customer/peristalsis/yes24', jsonData, fnPeristalsisCallback)
	});


	var fnPeristalsisCallback = function (userInfo) {
		// 1. CI 정보로 사용자가 없어서 회원가입 프로세스 처리 중 이메일, 휴대전화 중복
		if (userInfo.custStat === 'DUP_PHONE_CUST') {
			mcxDialog.alert("이미 사용 중인 휴대전화번호 입니다.");
			$.modal.close();
			return;
		}
		if (userInfo.custStat === 'DUP_EMAIL_CUST') {
			mcxDialog.alert("이미 사용 중인 이메일 입니다.");
			$.modal.close();
			return;
		}
		// 2. SNS 로그인 정보로 탈퇴확인
		if (userInfo.custStat === 'SECEDE_CUST') {
			mcxDialog.alert("탈퇴 회원 입니다.");
			$.modal.close();
			return;
		}
		// 3. SNS 로그인 정보로 휴면확인
		if (userInfo.custStat === 'DORMANT_CUST') {
			mcxDialog.alertC("휴면 고객님께서는 휴면을<br>해지하신 후 사용하실 수 있습니다.", {
				sureBtnText: "확인",
				sureBtnClick: function() {
					cfnGoToPage(_PAGE_CUSTOMER_DORMANT);
					$.modal.close();
				}
			});
			return;
		}
		// 4. 휴대전화 정보가 없으면 SNS 가입화면 이동
		if (userInfo.custStat === 'EMPTY_PHONE_CUST') {
			cfnGoToPage(_PAGE_CUSTOMER_SNS_JOIN);
			$.modal.close();
			return;
		}
		// 5. SNS 정보로 가입 성공시 가입완료 페이지 이동
		if (userInfo.custStat === 'NEW_CUST') {
			cfnGoToPage(_PAGE_CUSTOMER_JOIN_COMPLETE);
			$.modal.close();
			return;
		}
		// 6.SNS 정보로 가입 실패시 안내 창 알림
		if (userInfo.custStat === 'FAIL_CUST') {
			mcxDialog.alert("회원가입에 실패 했습니다.<br> 고객센터에 문의 하시기 바랍니다.");
			$.modal.close();
			return;
		}
		// 7.CI 정보가 없을때 안내 창 알림
		if (userInfo.custStat === 'EMPTY_CI_CUST') {
			mcxDialog.alert("연계정보(CI) 값이 없습니다.<br> 고객센터에 문의 하시기 바랍니다.");
			$.modal.close();
			return;
		}
		// 8. 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') {
				ysCustAppAgreeYn = result.appAgreeYn;
				ysCustMkAgreeYn = result.mkAgreeYn;
				ysCustNo = result.custNo;
				ysReturnUrl = result.returnUrl;
				setTimeout(function () {
					document.location.href = "idsend://?id=" + ysCustNo + "^link=" + ysReturnUrl;
				}, 1000); // 정보성 PUSH, 마케팅 PUSH 수신여부 확인이 정상적으로 처리되지 않을 때
				fnIsPushEnable(); // 정보성 PUSH, 마케팅 PUSH 수신여부 확인
			} else {
				document.location.href = result.returnUrl;
			}
		} else {
			mcxDialog.alert("로그인 실패 하였습니다.<br> 고객센터에 문의 하시기 바랍니다.");
		}
		$.modal.close();
	};

	$("#btnClose").click(function() {
		cfnGoToPage(_PAGE_CUSTOMER_JOIN_TYPE);
		$.modal.close();
	});

	// 앱에서 호출되는 함수(앱푸시)
	var settingsSwitchPush = function(onOff) {
		if (onOff === 'ON') {
			ysPhoneAppAgreeYn = 'Y';
		} else if (onOff === 'OFF'){
			ysPhoneAppAgreeYn = 'N';
		}
		fnIsAdEnable();
	}

	// 앱에서 호출되는 함수(마케팅동의)
	var settingsSwitchAdvertise = function (onOff) {
		if (onOff === 'ON') {
			ysPhoneMkAgreeYn = 'Y';
		} else if (onOff === 'OFF'){
			ysPhoneMkAgreeYn = 'N';
		}

		// 기기에 등록된 정보성 PUSH, 마케팅 PUSH 수신여부와
		// 고객DB 수신여부 비교 후 다르면 기기에 등록된 데이터로 업데이트
		if (ysPhoneAppAgreeYn !== ysCustAppAgreeYn || ysPhoneMkAgreeYn !== ysCustMkAgreeYn ) {
			fnUpdatePush(ysPhoneAppAgreeYn, ysPhoneMkAgreeYn);
		}
		document.location.href = "idsend://?id=" + ysCustNo + "^link=" + ysReturnUrl;
	}

	// 정보성 PUSH ON, OFF 여부 확인
	// 호출시 앱에서 settingsSwitchPush 호출 해서 ON, OFF 값을 param 값으로 준다.
	var fnIsPushEnable = function () {
		if (_osType === 'A') {
			window.style24.isPushEnable();
		} else if (_osType === 'I') {
			window.webkit.messageHandlers.isPushEnable.postMessage({'dummy':'dummy'});
		}
	}

	// 마케팅 PUSH ON, OFF 여부확인
	// 호출시 앱에서 settingsSwitchAdvertise 호출 해서 ON, OFF 값을 param 값으로 준다.
	var fnIsAdEnable = function () {
		if (_osType === 'A') {
			window.style24.isAdEnable();
		} else if (_osType === 'I') {
			window.webkit.messageHandlers.isAdEnable.postMessage({'dummy':'dummy'});
		}
	}

	var fnUpdatePush = function (appAgreeYn, mkAgreeYn) {
		let params = {}
		params.appAgreeYn = appAgreeYn;
		params.mkAgreeYn = mkAgreeYn;
		let jsonData = JSON.stringify(params);
		gagajf.ajaxJsonSubmit('/app/push/update', jsonData);
	}


	$(document).ready(function () {
		$('.close-modal').on('click', function () {
			cfnGoToPage(_PAGE_CUSTOMER_JOIN_TYPE);
		});
	});



	/*]]>*/
</script>
</html>