| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258 |
- <!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>
|