<!DOCTYPE html>
<html lang="ko"
	xmlns:th="http://www.thymeleaf.org"
	xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
	layout:decorator="mob/common/layout/AppLayoutMob">
<!--
 *******************************************************************************
 * @source  : SettingFormMob.html
 * @desc    : 설정 Page
 *============================================================================
 * STYLE24
 * Copyright(C) 2021 TSIT, All rights reserved.
 *============================================================================
 * VER  DATE         AUTHOR      DESCRIPTION
 * ===  ===========  ==========  =============================================
 * 1.0  2021.05.20   jsshin     최초 작성
 *******************************************************************************
 -->
<body>
<th:block layout:fragment="content">
<main class="container app-only">
	<!-- APP Setting -->
	<!-- ★ 컨텐츠 시작 -->
	<section class="sett">
		<form action="" class="form_wrap">
			<div class="inner">
				<div class="form_field">
					<dl>
						<dd>
							<div class="setItems">
								<span class="set_opt">정보성 PUSH 알림</span>
								<div class="switch">
									<input id="btnPushSetting" type="checkbox" th:checked="${appAgreeYn == 'Y'}"/>
									<label for="btnPushSetting"></label>
								</div>
							</div>
							<p>재입고 알림, 주문, 배송정보 등 내 상품 정보 및 공지를 안내 받으실 수 있습니다.</p>
							<p class="pot">기기 알림에 관한 설정은 '휴대폰 설정>알림>스타일24'에서 변경할 수 있습니다.</p>
						</dd>
						<dd>
							<div class="setItems">
								<span class="set_opt">마케팅 PUSH 수신동의</span>
								<div class="switch">
									<input id="btnMkSetting" type="checkbox" th:checked="${appMkAgreeYn == 'Y'}" />
									<label for="btnMkSetting"></label>
								</div>
							</div>
							<p>PUSH 알림 수신에 동의하시면 이벤트, 쿠폰, 할인 안내 등 다양한 소식을 받으실 수 있습니다.</p>
						</dd>
						<dd>
							<div class="setItems">
								<span class="set_opt">알림함</span>
								<div class="alink">
									<a href="javascript:void(0);" onclick="cfnGoToPage(_PAGE_APP_NOTICE);"></a>
								</div>
							</div>
						</dd>
					</dl>
				</div>
			</div>
			<div class="inner">
				<div class="form_field">
					<dl>
						<dd>
							<div class="setItems">
								<span class="set_opt">현재버전 <em th:text="${appVersion}">1.0</em></span>
								<span class="alink">
									<th:block th:if="${appVersion != regAppVersion}">
										<th:block th:if="${osType == 'A'}">
											<input id="chk-2" type="button">
											<label for="chk-2">
												<span></span>
											</label>
										</th:block>
										<th:block th:if="${osType == 'I'}">
											<input id="chk-3" type="button">
											<label for="chk-3">
												<span></span>
											</label>
										</th:block>
									</th:block>
									<th:block th:unless="${appVersion != regAppVersion}">
										<input id="chk-4" type="button" disabled>
										<label for="chk-4">
											<span></span>
										</label>
									</th:block>
								</span>
							</div>
						</dd>
					</dl>
				</div>
			</div>
		</form>
	</section>
	<!-- ★ 컨텐츠 종료 -->
</main>


<script th:inline="javascript">
	const isLogin = [[${isLogin}]];
	let appAgreeYn = [[${appAgreeYn}]];
	let appMkAgreeYn = [[${appMkAgreeYn}]];

	$(document).ready(function(){
		$('#htopTitle').text('설정');

		// 앱으로 푸시 상태값 조회
		if (_isApp === 'true') {
			fnIsEnable();
		}

	});

	var fnIsEnable = function () {
		if (_osType === 'A') {
			window.style24.isPushEnable(); // 정보성(푸시수신 API) settingsSwitchPush
			window.style24.isAdEnable();   // 마케팅성(광고푸시 API) settingsSwitchAdvertise
		} else if (_osType === 'I') {
			window.webkit.messageHandlers.isPushEnable.postMessage({'dummy':'dummy'}); // 정보성(푸시수신 API) settingsSwitchPush
			window.webkit.messageHandlers.isAdEnable.postMessage({'dummy':'dummy'}); // 마케팅성(광고푸시 API) settingsSwitchAdvertise
		}
	}

	// 앱에서 호출되는 함수(앱푸시)
	var settingsSwitchPush = function(onOff) {
		if (onOff === 'ON') {
			$('#btnPushSetting').prop('checked', true);
		} else if (onOff === 'OFF') {
			$('#btnPushSetting').prop('checked', false);
		}

		if (isLogin) {
			// 데이터 상 앱푸시 여부(Y/N) 이랑
			// 핑거푸시에 등록된 푸시수신 여부(ON/OFF)
			if (appAgreeYn === 'Y' && onOff === 'OFF') {
				fnAppPushAgreeUpdate('N');
			} else if (appAgreeYn === 'N' && onOff === 'ON') {
				fnAppPushAgreeUpdate('Y');
			}
		}
	}

	// 앱에서 호출되는 함수(마케팅동의)
	var settingsSwitchAdvertise = function (onOff) {
		if (onOff === 'ON') {
			$('#btnMkSetting').prop('checked', true);
		} else if (onOff === 'OFF') {
			$('#btnMkSetting').prop('checked', false);
		}

		if (isLogin) {
			// 데이터 상 마케팅동의 여부(Y/N) 이랑
			// 핑거푸시에 등록된 푸시수신 여부(ON/OFF)
			if (appMkAgreeYn === 'Y' && onOff === 'OFF') {
				fnAppMkAgreeUpdate('N');
			} else if (appMkAgreeYn === 'N' && onOff === 'ON') {
				fnAppMkAgreeUpdate('Y');
			}
		}
	}

	$('#btnPushSetting').on('click', function() {
		let appAgreeYn;
		if (_isApp === 'true') {
			if ($(this).is(":checked")) {
				fnSetAppPush('ON');
				appAgreeYn = 'Y';
			} else {
				// 정보성 푸시가 상위 개념이라 마케팅도 같이 OFF가 되어여함
				fnSetAppPush('OFF');
				fnSetAdPush('OFF');
				appAgreeYn = 'N';
				$('#btnMkSetting').prop('checked', false);
			}
			if (isLogin) {
				if (appAgreeYn === 'N') { // 마케팅도 N 처리
					fnUpdatePush('N', 'N');
				} else {
					fnAppPushAgreeUpdate('Y');
				}
			}
		}
	});

	$('#btnMkSetting').on('click', function() {
		let mkAgreeYn;
		if (_isApp === 'true') {
			if ($(this).is(":checked")) {
				fnSetAdPush('ON');
				mkAgreeYn = 'Y';
			} else {
				fnSetAdPush('OFF');
				mkAgreeYn = 'N';
			}
			if (isLogin) {
				fnAppMkAgreeUpdate(mkAgreeYn);
			}
		}
	});

	// 정보성 푸시 On,Off 처리
	var fnSetAppPush = function (appPushOnOff) {
		if (_osType === 'A') {
			window.style24.pushEnable(appPushOnOff);
		} else if (_osType === 'I') {
			window.webkit.messageHandlers.pushEnable.postMessage({'status':appPushOnOff});
		}
	}

	// 마케팅 푸시 On,Off 처리
	var fnSetAdPush = function (mkPushOnOff) {
		if (_osType === 'A') {
			window.style24.adEnable(mkPushOnOff);
		} else if (_osType === 'I') {
			window.webkit.messageHandlers.adEnable.postMessage({'status':mkPushOnOff});
		}
	}

	// 앱푸시동의 데이터 처리
	var fnAppPushAgreeUpdate = function (appAgreeYn) {
		let params = {}
		params.appAgreeYn = appAgreeYn;
		let jsonData = JSON.stringify(params);
		gagajf.ajaxJsonSubmit('/app/appagree/update', jsonData);
	}

	// 마케팅동의 데이터 처리
	var fnAppMkAgreeUpdate = function (mkAgreeYn) {
		let params = {}
		params.mkAgreeYn = mkAgreeYn;
		let jsonData = JSON.stringify(params);
		gagajf.ajaxJsonSubmit('/app/mkagree/update', jsonData);
	}

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

	// 안드로이드 앱
	$('#chk-2').on('click', function () {
		document.location.href='update://?link=https://play.google.com/store/apps/details?id=com.istyle24.commerce';
	});

	// 아이폰앱
	$('#chk-3').on('click', function () {
		document.location.href='update://?link=https://apps.apple.com/kr/app/id627774402?mt=8';
	});

</script>
</th:block>
</body>

</html>