Sfoglia il codice sorgente

Merge branch 'develop' into bin2107

bin2107 5 anni fa
parent
commit
b71c7c274e
100 ha cambiato i file con 482 aggiunte e 180 eliminazioni
  1. 0 9
      src/main/java/com/style24/front/biz/dao/TsfCustomerDao.java
  2. 1 1
      src/main/java/com/style24/front/biz/service/TsfCustomerService.java
  3. 29 33
      src/main/java/com/style24/front/biz/web/TsfIndexController.java
  4. 1 1
      src/main/java/com/style24/front/biz/web/TsfMypageController.java
  5. 2 2
      src/main/java/com/style24/persistence/mybatis/shop/TsfCounsel.xml
  6. 0 35
      src/main/java/com/style24/persistence/mybatis/shop/TsfCustomer.xml
  7. 39 0
      src/main/webapp/WEB-INF/views/mob/error/500Mob.html
  8. 0 40
      src/main/webapp/WEB-INF/views/web/common/error/500Web.html
  9. 5 4
      src/main/webapp/WEB-INF/views/web/common/fragments/HeadWeb.html
  10. 0 27
      src/main/webapp/WEB-INF/views/web/common/layout/ErrorLayoutWeb.html
  11. 35 4
      src/main/webapp/WEB-INF/views/web/error/500Web.html
  12. 25 8
      src/main/webapp/WEB-INF/views/web/goods/GoodsDealDetailFormWeb.html
  13. 23 1
      src/main/webapp/WEB-INF/views/web/goods/GoodsDetailFormWeb.html
  14. 7 1
      src/main/webapp/WEB-INF/views/web/goods/GoodsDetailQnaFormWeb.html
  15. 1 1
      src/main/webapp/WEB-INF/views/web/goods/GoodsDetailReviewFormWeb.html
  16. 15 12
      src/main/webapp/WEB-INF/views/web/goods/GoodsIncludeFormWeb.html
  17. 1 1
      src/main/webapp/WEB-INF/views/web/mypage/MypageCustModifyFormWeb.html
  18. 298 0
      src/main/webapp/WEB-INF/views/web/mypage/MypagePointForm2Web.html
  19. BIN
      src/main/webapp/images/ico_inspect_err.png
  20. BIN
      src/main/webapp/images/ico_logo_err.png
  21. BIN
      src/main/webapp/images/ico_page_err.png
  22. BIN
      src/main/webapp/images/mo/arrow_npay.png
  23. BIN
      src/main/webapp/images/mo/btn_npay_txt.png
  24. BIN
      src/main/webapp/images/mo/goApp.png
  25. BIN
      src/main/webapp/images/mo/ico_admin.png
  26. BIN
      src/main/webapp/images/mo/ico_besttag.png
  27. BIN
      src/main/webapp/images/mo/ico_besttag2.png
  28. BIN
      src/main/webapp/images/mo/ico_big_check.png
  29. BIN
      src/main/webapp/images/mo/ico_branb_home.png
  30. BIN
      src/main/webapp/images/mo/ico_brandhome_arrow.png
  31. BIN
      src/main/webapp/images/mo/ico_btn_dealopen.png
  32. BIN
      src/main/webapp/images/mo/ico_complete_check.png
  33. BIN
      src/main/webapp/images/mo/ico_count.png
  34. BIN
      src/main/webapp/images/mo/ico_cp_down.png
  35. BIN
      src/main/webapp/images/mo/ico_itemdelete_btn.png
  36. BIN
      src/main/webapp/images/mo/ico_mb_arrow2.png
  37. BIN
      src/main/webapp/images/mo/ico_plus_white.png
  38. BIN
      src/main/webapp/images/mo/ico_point3.png
  39. BIN
      src/main/webapp/images/mo/ico_point3_black.png
  40. BIN
      src/main/webapp/images/mo/ico_point4.png
  41. BIN
      src/main/webapp/images/mo/ico_point4_black.png
  42. BIN
      src/main/webapp/images/mo/ico_secret.png
  43. BIN
      src/main/webapp/images/mo/ico_share.png
  44. BIN
      src/main/webapp/images/mo/ico_timer2.png
  45. BIN
      src/main/webapp/images/mo/img_mb_join_done.jpg
  46. BIN
      src/main/webapp/images/mo/img_npay_txt.png
  47. BIN
      src/main/webapp/images/mo/logo_STYLE24_white.png
  48. BIN
      src/main/webapp/images/mo/star_empty.png
  49. BIN
      src/main/webapp/images/mo/star_empty_big.png
  50. BIN
      src/main/webapp/images/mo/star_empty_big_only.png
  51. BIN
      src/main/webapp/images/mo/thumb/bnn_1stage.jpg
  52. BIN
      src/main/webapp/images/mo/thumb/bnn_1stage02.jpg
  53. BIN
      src/main/webapp/images/mo/thumb/bnn_2stage1.jpg
  54. BIN
      src/main/webapp/images/mo/thumb/bnn_2stage2.jpg
  55. BIN
      src/main/webapp/images/mo/thumb/br_main03.png
  56. BIN
      src/main/webapp/images/mo/thumb/dp_slide_Item01.png
  57. BIN
      src/main/webapp/images/mo/thumb/main_itItems01.jpg
  58. BIN
      src/main/webapp/images/mo/thumb/main_itItems02.jpg
  59. BIN
      src/main/webapp/images/mo/thumb/main_itItems03.jpg
  60. BIN
      src/main/webapp/images/mo/thumb/main_itItems04.jpg
  61. BIN
      src/main/webapp/images/mo/thumb/main_pickImg01.jpg
  62. BIN
      src/main/webapp/images/mo/thumb/main_pickImg02.jpg
  63. BIN
      src/main/webapp/images/mo/thumb/main_pickImg03.jpg
  64. BIN
      src/main/webapp/images/mo/thumb/main_pickImg04.jpg
  65. BIN
      src/main/webapp/images/mo/thumb/main_recommItems01.jpg
  66. BIN
      src/main/webapp/images/mo/thumb/main_recommItems02.jpg
  67. BIN
      src/main/webapp/images/mo/thumb/main_recommItems03.jpg
  68. BIN
      src/main/webapp/images/mo/thumb/main_recommItems04.jpg
  69. BIN
      src/main/webapp/images/mo/thumb/main_stylereport01.jpg
  70. BIN
      src/main/webapp/images/mo/thumb/main_stylereport02.jpg
  71. BIN
      src/main/webapp/images/mo/thumb/main_stylereport03.jpg
  72. BIN
      src/main/webapp/images/mo/thumb/main_stylereport04.jpg
  73. BIN
      src/main/webapp/images/mo/thumb/main_trendy01.jpg
  74. BIN
      src/main/webapp/images/mo/thumb/main_trendy02.jpg
  75. BIN
      src/main/webapp/images/mo/thumb/main_trendy03.jpg
  76. BIN
      src/main/webapp/images/mo/thumb/main_trendy04.jpg
  77. BIN
      src/main/webapp/images/mo/thumb/main_trendy05.jpg
  78. BIN
      src/main/webapp/images/mo/thumb/prod1.jpg
  79. BIN
      src/main/webapp/images/mo/thumb/prod3.jpg
  80. BIN
      src/main/webapp/images/mo/thumb/tmp_pdDetail4.jpg
  81. BIN
      src/main/webapp/images/pc/btn_main_pop_arrow.png
  82. BIN
      src/main/webapp/images/pc/btn_open_bnr.png
  83. BIN
      src/main/webapp/images/pc/btn_video_pause.png
  84. BIN
      src/main/webapp/images/pc/btn_video_play.png
  85. BIN
      src/main/webapp/images/pc/ico_arrow_thin.png
  86. BIN
      src/main/webapp/images/pc/ico_chk_gift_required.png
  87. BIN
      src/main/webapp/images/pc/ico_coupon_10.png
  88. BIN
      src/main/webapp/images/pc/ico_coupon_12.png
  89. BIN
      src/main/webapp/images/pc/ico_coupon_15.png
  90. BIN
      src/main/webapp/images/pc/ico_coupon_15000.png
  91. BIN
      src/main/webapp/images/pc/ico_coupon_20000.png
  92. BIN
      src/main/webapp/images/pc/ico_coupon_7.png
  93. BIN
      src/main/webapp/images/pc/ico_filter_reset.png
  94. BIN
      src/main/webapp/images/pc/ico_share.png
  95. BIN
      src/main/webapp/images/pc/ico_slide_arrow.png
  96. BIN
      src/main/webapp/images/pc/ico_slide_arrow_white.png
  97. BIN
      src/main/webapp/images/pc/img_mb_join_done.jpg
  98. BIN
      src/main/webapp/images/pc/pay_kakao.png
  99. BIN
      src/main/webapp/images/pc/pay_naver.png
  100. BIN
      src/main/webapp/images/pc/pay_payco.png

+ 0 - 9
src/main/java/com/style24/front/biz/dao/TsfCustomerDao.java

@@ -134,15 +134,6 @@ public interface TsfCustomerDao {
 	 */
 	int updateCustomerAuth(Customer customer);
 
-	/**
-	 * 이메일 유효성 확인
-	 * @param customer - 고객정보
-	 * @return int - 결과
-	 * @author jsshin
-	 * @since 2021. 03. 15
-	 */
-	int getCustomerByEmail(Customer customer);
-
 	/**
 	 * 고객정보- 마케팅 정보 수정
 	 * @param customer - 고객정보

+ 1 - 1
src/main/java/com/style24/front/biz/service/TsfCustomerService.java

@@ -874,7 +874,7 @@ public class TsfCustomerService {
 	 */
 	public boolean getCustomerByEmail(Customer customer) {
 		customer.encryptData();
-		int resultCnt = customerDao.getCustomerByEmail(customer);
+		int resultCnt = coreCustomerService.getCustomerByEmail(customer);
 		return resultCnt > 0;
 	}
 

+ 29 - 33
src/main/java/com/style24/front/biz/web/TsfIndexController.java

@@ -1,8 +1,25 @@
 package com.style24.front.biz.web;
 
+import java.io.IOException;
+import java.math.BigInteger;
+import java.security.SecureRandom;
+
+import javax.servlet.RequestDispatcher;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
+
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.env.Environment;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.HttpRequestMethodNotSupportedException;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.servlet.ModelAndView;
+
 import com.fasterxml.jackson.databind.ObjectMapper;
-import com.gagaframework.web.parameter.GagaMap;
-import com.gagaframework.web.rest.server.GagaResponseStatus;
 import com.style24.core.support.env.TscConstants;
 import com.style24.core.support.message.TscMessageByLocale;
 import com.style24.front.biz.service.TsfCustomerService;
@@ -13,24 +30,11 @@ import com.style24.front.support.controller.TsfBaseController;
 import com.style24.front.support.security.session.TsfSession;
 import com.style24.persistence.domain.CustSnsInfo;
 import com.style24.persistence.domain.Customer;
+
 import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.core.env.Environment;
-import org.springframework.stereotype.Controller;
-import org.springframework.web.HttpRequestMethodNotSupportedException;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.servlet.ModelAndView;
 
-import javax.servlet.RequestDispatcher;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpSession;
-import java.io.IOException;
-import java.math.BigInteger;
-import java.security.SecureRandom;
+import com.gagaframework.web.parameter.GagaMap;
+import com.gagaframework.web.rest.server.GagaResponseStatus;
 
 /**
  * Index Controller
@@ -72,7 +76,7 @@ public class TsfIndexController extends TsfBaseController {
 	 */
 	@GetMapping("/error")
 	public ModelAndView error(HttpServletRequest request, HttpServletResponse response) throws HttpRequestMethodNotSupportedException, IOException {
-		ModelAndView mav = new ModelAndView(super.getDeviceViewName("common/error/500"));
+		ModelAndView mav = new ModelAndView(super.getDeviceViewName("error/500"));
 
 		Object status = request.getAttribute(RequestDispatcher.ERROR_STATUS_CODE);
 
@@ -162,8 +166,7 @@ public class TsfIndexController extends TsfBaseController {
 	 * @since 2021. 02. 23
 	 */
 	@GetMapping("/signin/kakologin")
-	public String signinKaKaoLogin(@RequestParam(value = "rememberMe", required = false) String rememberMe
-			, @RequestParam(value = "requestGb", required = false) String requestGb) {
+	public String signinKaKaoLogin(@RequestParam(value = "rememberMe", required = false) String rememberMe, @RequestParam(value = "requestGb", required = false) String requestGb) {
 
 		if (StringUtils.isNotBlank(rememberMe)) {
 			// RememberMe 세션 저장
@@ -188,8 +191,7 @@ public class TsfIndexController extends TsfBaseController {
 	 * @since 2021. 02. 23
 	 */
 	@GetMapping("/signin/naverlogin")
-	public String signinNaverLogin(@RequestParam(value = "rememberMe", required = false) String rememberMe
-			, @RequestParam(value = "requestGb", required = false) String requestGb) {
+	public String signinNaverLogin(@RequestParam(value = "rememberMe", required = false) String rememberMe, @RequestParam(value = "requestGb", required = false) String requestGb) {
 
 		if (StringUtils.isNotBlank(rememberMe)) {
 			// RememberMe 세션 저장
@@ -214,8 +216,7 @@ public class TsfIndexController extends TsfBaseController {
 	 * @since 2021. 02. 23
 	 */
 	@GetMapping("/signin/yes24login")
-	public String signinYes24Login(@RequestParam(value = "rememberMe", required = false) String rememberMe
-			, @RequestParam(value = "requestGb", required = false) String requestGb) {
+	public String signinYes24Login(@RequestParam(value = "rememberMe", required = false) String rememberMe, @RequestParam(value = "requestGb", required = false) String requestGb) {
 
 		if (StringUtils.isNotBlank(rememberMe)) {
 			// RememberMe 세션 저장
@@ -232,7 +233,6 @@ public class TsfIndexController extends TsfBaseController {
 		return "redirect:" + redirectUrl;
 	}
 
-
 	/**
 	 * SNS 로그인
 	 *
@@ -243,9 +243,7 @@ public class TsfIndexController extends TsfBaseController {
 	 * @since 2021. 02. 23
 	 */
 	@RequestMapping("/signin/snsLoginCallback")
-	public ModelAndView signinSnsLoginCallback(@RequestParam(value = "snsType", required = false) String snsType, HttpSession session
-			, @RequestParam(value = "code", required = false) String code, @RequestParam(value = "state", required = false) String state
-			, @RequestParam(value = "error", required = false) boolean isError, HttpServletRequest request) {
+	public ModelAndView signinSnsLoginCallback(@RequestParam(value = "snsType", required = false) String snsType, HttpSession session, @RequestParam(value = "code", required = false) String code, @RequestParam(value = "state", required = false) String state, @RequestParam(value = "error", required = false) boolean isError, HttpServletRequest request) {
 
 		ModelAndView mav = new ModelAndView();
 
@@ -321,9 +319,8 @@ public class TsfIndexController extends TsfBaseController {
 		return mav;
 	}
 
-
 	@RequestMapping("/signin/yes24LoginCallback")
-	public ModelAndView yes24LoginCallback(@RequestParam("ipin")String ipin, HttpSession session, HttpServletRequest request) {
+	public ModelAndView yes24LoginCallback(@RequestParam("ipin") String ipin, HttpSession session, HttpServletRequest request) {
 		ModelAndView mav = new ModelAndView();
 		boolean isSnsLoing = false;
 		GagaMap userInfo = new GagaMap();
@@ -334,7 +331,6 @@ public class TsfIndexController extends TsfBaseController {
 			isSnsLoing = true;
 		}
 
-
 		GagaMap resultMap = new GagaMap();
 
 		// SNS 로그인 성공시 정보 세션 저장
@@ -364,7 +360,7 @@ public class TsfIndexController extends TsfBaseController {
 		mav.addObject("resultMap", resultMap);
 		mav.setViewName(super.getDeviceViewName("SnsCallBackForm"));
 
-		return  mav;
+		return mav;
 	}
 
 }

+ 1 - 1
src/main/java/com/style24/front/biz/web/TsfMypageController.java

@@ -721,7 +721,7 @@ public class TsfMypageController extends TsfBaseController {
 		// 사용내역 조회
 		mav.addObject("usePointList", pointService.getUsePointList(point));
 
-		mav.setViewName(super.getDeviceViewName("mypage/MypagePointForm"));
+		mav.setViewName(super.getDeviceViewName("mypage/MypagePointForm2"));
 		return mav;
 	}
 

+ 2 - 2
src/main/java/com/style24/persistence/mybatis/shop/TsfCounsel.xml

@@ -271,12 +271,12 @@
 		SELECT COUNT(*) AS CNT
 		FROM   TB_COUNSEL A
 		     , TB_GOODS G
-		<if test="goodsType != null and goodsType = 'G056_D'">
+		<if test="goodsType != null and goodsType == 'G056_D'">
 		     , TB_GOODS_COMPOSE C
 		</if>
 		WHERE  1 = 1
 		<choose>
-		    <when test="goodsType != null and goodsType = 'G056_D'">
+		    <when test="goodsType != null and goodsType == 'G056_D'">
 		AND    A.REL_GOODS_CD = G.GOODS_CD
 		AND    G.GOODS_CD = C.COMPS_GOODS_CD
 		AND    C.GOODS_CD = #{relGoodsCd}

+ 0 - 35
src/main/java/com/style24/persistence/mybatis/shop/TsfCustomer.xml

@@ -552,41 +552,6 @@
 		WHERE  CUST_NO = #{custNo}
 	</update>
 
-	<!--이메일 유효성 체크-->
-	<select id="getCustomerByEmail" parameterType="Customer">
-		/* TsfCustomer.getCustomerByEmail */
-		SELECT B.CNT
-		FROM (
-		       SELECT A.CNT
-		       , ROW_NUMBER() OVER (ORDER BY A.CNT DESC) AS NUMB
-		       FROM (
-		       SELECT COUNT(*) AS CNT
-		       FROM   TB_CUSTOMER
-		       WHERE  CUST_STAT = 'G104_10'   /* 활동회원*/
-		       AND    SITE_CD = #{siteCd}
-		       AND    CUST_NO != #{custNo}
-		       AND    EMAIL = #{encodedEmail}
-
-		       UNION ALL
-
-		       SELECT COUNT(*) AS CNT
-		       FROM   TB_SECEDE_CUST
-		       WHERE  SITE_CD = #{siteCd}
-		       AND    CUST_NO != #{custNo}
-		       AND    EMAIL = #{encodedEmail}
-
-		       UNION ALL
-
-		       SELECT COUNT(*) AS CNT
-		       FROM   TB_DORMANT_CUST
-		       WHERE  SITE_CD = #{siteCd}
-		       AND    CUST_NO != #{custNo}
-		       AND    EMAIL = #{encodedEmail}
-		       ) A
-		) B
-		WHERE NUMB = 1
-	</select>
-
 	<!--고객정보 수정-->
 	<update id="updateCustomerInfo" parameterType="Customer">
 		/* TsfCustomer.updateCustomerInfo */

File diff suppressed because it is too large
+ 39 - 0
src/main/webapp/WEB-INF/views/mob/error/500Mob.html


+ 0 - 40
src/main/webapp/WEB-INF/views/web/common/error/500Web.html

@@ -1,40 +0,0 @@
-<!DOCTYPE html>
-<html lang="ko"
-	xmlns:th="http://www.thymeleaf.org"
-	xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
-	layout:decorator="web/common/layout/ErrorLayoutWeb">
-<!--
- *******************************************************************************
- * @source  : 500.html
- * @desc    : 500 Error Page
- *============================================================================
- * STYLE24
- * Copyright(C) 2020 TSIT, All rights reserved.
- *============================================================================
- * VER  DATE         AUTHOR      DESCRIPTION
- * ===  ===========  ==========  =============================================
- * 1.0  2021.01.28   gagamel     최초 작성
- *******************************************************************************
- -->
-<head>
-	<title>Error</title>
-</head>
-
-<body>
-
-<th:block th:fragment="content">
-	<div id="wrapper">
-		<ul class="msgWrap">
-			<li class="title">죄송합니다. 서비스 이용이 원활하지 않습니다.</li>
-			<li class="cont" th:if="${message == null}">요청하신 페이지에 에러가 발생하였습니다. 서비스 이용에 불편을 끼쳐드려 죄송합니다.</li>
-			<li class="cont" th:if="${message != null && message != '' && message != 'null'}" th:text="${message}"></li>
-			<li class="button">
-				<button type="button" class="btn big white" onclick="cfnGoToPage(_PAGE_MAIN);">스타일24몰</button>
-				<button type="button" class="btn big black marL10"  onclick="history.back(-1); return false;">이전페이지</button>
-			</li>
-		</ul>
-	</div>
-</th:block>
-
-</body>
-</html>

+ 5 - 4
src/main/webapp/WEB-INF/views/web/common/fragments/HeadWeb.html

@@ -50,7 +50,7 @@
 	<link rel="icon" href="/images/favicon-16x16.png" sizes="16x16" type="image/png"/>
 
 	<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/ion-rangeslider/2.3.1/css/ion.rangeSlider.min.css">
-	<link rel="stylesheet" type="text/css" href="http://ldfront.style24.com/ux/pc/css/slick.css"/>
+	<link rel="stylesheet" type="text/css" href="/ux/pc/css/slick.css"/>
 	<link rel="stylesheet" type="text/css" th:href="@{'/ux/pc/css/swiper.min.css?v=' + ${#calendars.format(#calendars.createNow(), 'yyyyMMddHHmmss')}}" href="/ux/pc/css/swiper.min.css"/>
 	<link rel="stylesheet" type="text/css" th:href="@{'/ux/pc/css/jquery-ui.css?v=' + ${#calendars.format(#calendars.createNow(), 'yyyyMMddHHmmss')}}" href="/ux/pc/css/jquery-ui.css"/>
 	<link rel="stylesheet" type="text/css" th:href="@{'/ux/pc/css/reset.css?v=' + ${#calendars.format(#calendars.createNow(), 'yyyyMMddHHmmss')}}" href="/ux/pc/css/reset.css"/>
@@ -59,13 +59,14 @@
 	<link rel="stylesheet" type="text/css" th:href="@{'/ux/pc/css/layout.css?v=' + ${#calendars.format(#calendars.createNow(), 'yyyyMMddHHmmss')}}" href="/ux/pc/css/layout.css"/>
 	<link rel="stylesheet" type="text/css" th:href="@{'/ux/pc/css/main.css?v=' + ${#calendars.format(#calendars.createNow(), 'yyyyMMddHHmmss')}}" href="/ux/pc/css/main.css"/>
 	
-	<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
-	<!--<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>-->
+<!-- 	<script src="http://code.jquery.com/jquery-1.9.1.js"></script> -->
+	<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
 	<script src="https://code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
 	<script src="https://cdnjs.cloudflare.com/ajax/libs/Swiper/4.5.0/js/swiper.min.js"></script>
+	<script src="https://cdnjs.cloudflare.com/ajax/libs/ion-rangeslider/2.3.1/js/ion.rangeSlider.min.js"></script>
 	<script src="/ux/pc/js/jquery.modal.min.js"></script>
 	<script src="/ux/pc/js/jquery-ui.js"></script>
-	<script src="/ux/pc/js/jquery.ui.datepicker.monthyearpicker.js"></script>
+<!-- 	<script src="/ux/pc/js/jquery.ui.datepicker.monthyearpicker.js"></script> -->
 	<script src="/ux/plugins/jquery.serializeObject.min.js"></script>
 	<script src="/ux/plugins/mcxdialog/mcxdialog_ui.js"></script>
 	

+ 0 - 27
src/main/webapp/WEB-INF/views/web/common/layout/ErrorLayoutWeb.html

@@ -1,27 +0,0 @@
-<!DOCTYPE html>
-<html lang="ko"
-	xmlns:th="http://www.thymeleaf.org"
-	xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout">
-
-<head th:replace="~{web/common/fragments/HeadWeb :: head}"></head>
-
-<body>
-
-<th:block th:replace="~{web/common/fragments/VariablesWeb :: variables}"></th:block>
-
-<!-- CONTENT AREA -->
-<th:block layout:fragment="content"></th:block>
-<!-- // CONTENT AREA -->
-
-<th:block th:replace="~{web/common/fragments/ScriptsWeb :: scripts}"></th:block>
-
-<script th:inline="javascript">
-/*<![CDATA[*/
-	$(document).ready(function() {
-		
-	});
-/*]]>*/
-</script>
-
-</body>
-</html>

File diff suppressed because it is too large
+ 35 - 4
src/main/webapp/WEB-INF/views/web/error/500Web.html


+ 25 - 8
src/main/webapp/WEB-INF/views/web/goods/GoodsDealDetailFormWeb.html

@@ -11,14 +11,15 @@
  * STYLE24
  * Copyright(C) 2020 TSIT, All rights reserved.
  *============================================================================
- * VER  DATE		 AUTHOR	     DESCRIPTION
+ * VER  DATE		 AUTHOR		 DESCRIPTION
  * ===  ===========  ==========  =============================================
- * 1.0  2021.03.02   eskim       최초 작성
+ * 1.0  2021.03.02   eskim	   최초 작성
  *******************************************************************************
  -->
 <body>
 <th:block layout:fragment="content">
 <script src="https://cdnjs.cloudflare.com/ajax/libs/ion-rangeslider/2.3.1/js/ion.rangeSlider.min.js"></script>
+<script src="https://developers.kakao.com/sdk/js/kakao.min.js"></script>
 <div id="container" class="container pd deal" th:with="imgGoodsUrl=${@environment.getProperty('upload.goods.view')}, uxImgUrl=${@environment.getProperty('domain.uximage')}, imgUrl=${@environment.getProperty('upload.image.view')}">
 	<div class="wrap">
 		<!-- 상품 대표설명 -->
@@ -91,7 +92,10 @@
 							</div>
 							<div class="descript_box">
 								<div class="desc_top">
-									<button type="button" class="itemShare">상품 공유하기</button>
+									<div class="shareSet">
+										<button class="btn_share" data-name="openShare">공유하기</button>
+										<th:block th:include="~{web/goods/GoodsIncludeFormWeb :: goodsSnsForm}"></th:block>
+									</div>
 									<button type="button" class="itemLike" th:classappend="${goodsInfo.wishYn == 'Y'}? 'likeit' : ''"  onclick="cfnPutWishList(this);" th:attr="goodsCd=${params.goodsCd}, ithrCd=${params.ithrCd}, contentsLoc=${params.contentsLoc}, planDtlSq=${params.planDtlSq}">관심상품 추가</button>
 								</div>
 								<div class="desc_info">
@@ -286,7 +290,7 @@
 	
 	// 옵션1 조회
 	var fnOption1 = function(flag, goodsCd, currPrice, selfGoodsYn){
-		debugger;
+		
 		let data = {goodsCd : goodsCd
 					};
 		let jsonData = JSON.stringify(data);
@@ -390,7 +394,7 @@
 	
 	// 옵션2 조회
 	var fnOption2 = function(obj, flag){
-		debugger;
+		
 		let $obj = $(obj);
 		let $target = $obj.find('input[name="opt1"]');
 		let goodsCd = $target.val();
@@ -405,9 +409,9 @@
 					};
 		let jsonData = JSON.stringify(data);
 		
-		gagajf.ajaxJsonSubmit('/goods/detail/option2/list', jsonData, function(result) {debugger;
+		gagajf.ajaxJsonSubmit('/goods/detail/option2/list', jsonData, function(result) {
 			
-			if (result.dataList != null && result.dataList.length > 0) {debugger;
+			if (result.dataList != null && result.dataList.length > 0) {
 				let tagUpS = "";
 				let tagDownS = "";
 				let tagUp = "";
@@ -542,7 +546,7 @@
 
 			if (minOrdQty > itemCnt) {
 				alert("무슨작업을 해야할가요?");
-				return false; 		//무슨작업을 해야하나?
+				return false;		 //무슨작업을 해야하나?
 			}
 			
 			//상품정보
@@ -775,6 +779,19 @@
 		
 		$('.timer_box').css('display', 'none');
 		
+		//공유 버튼 토글 
+		$("button[data-name=openShare]").on("click", function(){
+			$(this).toggleClass("on").next(".shareWrap").toggleClass("on");
+			return false;
+		});
+		//영역밖 클릭으로 공유토글 닫기
+		$("body").on('click', function(e) { 
+			if(!$(".shareWrap.on").parent().has(e.target).length) {
+				$("button[data-name=openShare]").removeClass("on");
+				$(".shareWrap").removeClass("on");
+			};
+		});
+		
 		var params = new Object();
 		params.goodsCd = [[${params.goodsCd}]];
 		params.viewDt = [[${params.viewDt}]];

+ 23 - 1
src/main/webapp/WEB-INF/views/web/goods/GoodsDetailFormWeb.html

@@ -19,6 +19,7 @@
 <body>
 <th:block layout:fragment="content">
 <div id="container" class="container pd" th:with="imgGoodsUrl=${@environment.getProperty('upload.goods.view')}, uxImgUrl=${@environment.getProperty('domain.uximage')}, imgUrl=${@environment.getProperty('upload.image.view')}">
+<script src="https://developers.kakao.com/sdk/js/kakao.min.js"></script>
 	<th:block th:include="~{web/goods/GoodsIncludeFormWeb :: goodsNaviForm}"></th:block>
 	
 	<div class="wrap">
@@ -93,7 +94,10 @@
 							<div class="descript_box">
 								<div class="desc_top">
 									<a href="javascript:void(0);" class="btn_brand" th:onclick="cfnGoToBrandMain([[${goodsInfo.brandGroupNo}]])" th:text="${goodsInfo.brandGroupNm}">NBA 키즈</a>
-									<button type="button" class="itemShare">상품 공유하기</button>
+									<div class="shareSet">
+										<button class="btn_share" data-name="openShare">공유하기</button>
+										<th:block th:include="~{web/goods/GoodsIncludeFormWeb :: goodsSnsForm}"></th:block>
+									</div>
 									<button type="button" class="itemLike" th:classappend="${goodsInfo.wishYn == 'Y'}? 'likeit' : ''"  onclick="cfnPutWishList(this);" th:attr="goodsCd=${params.goodsCd}, ithrCd=${params.ithrCd}, contentsLoc=${params.contentsLoc}, planDtlSq=${params.planDtlSq}">관심상품 추가</button>
 								</div>
 								<div class="desc_info">
@@ -1255,6 +1259,19 @@
 		
 		$('.timer_box').css('display', 'none');
 		
+		//공유 버튼 토글 
+		$("button[data-name=openShare]").on("click", function(){
+			$(this).toggleClass("on").next(".shareWrap").toggleClass("on");
+			return false;
+		});
+		//영역밖 클릭으로 공유토글 닫기
+		$("body").on('click', function(e) { 
+			if(!$(".shareWrap.on").parent().has(e.target).length) {
+				$("button[data-name=openShare]").removeClass("on");
+				$(".shareWrap").removeClass("on");
+			};
+		});
+		
 		var params = new Object();
 		params.goodsCd = [[${params.goodsCd}]];
 		params.viewDt = [[${params.viewDt}]];
@@ -1533,6 +1550,11 @@
 		$("meta[property='eg:isNew']").attr('content',([[${goodsInfo.formalGb}]] == 'G009_10')? 'True' :'False');
 		$("meta[property='eg:etc1']").attr('content', [[${goodsInfo.selfGoodsYn}]]);
 		
+		
+		$('.btn_copy').bind('click', function() {
+			copyToClipboard();
+		});
+		
 	});
 	
 	// 상품평 레이어 호출후 콜백에서 호출하므로 여기에 있어야함

+ 7 - 1
src/main/webapp/WEB-INF/views/web/goods/GoodsDetailQnaFormWeb.html

@@ -85,7 +85,13 @@
 		if (result.dataList != null && result.dataList.length > 0) {
 			
 			$.each(result.dataList, function(idx, item) {
-				let tag = '<li class="'+ (item.selfGb == 1 ? "my_qna" : "") +'">\n';  // <!-- 내가 쓴 글에 클래스 my_qna 추가 -->
+				let tag = '<li class="';  // <!-- 내가 쓴 글에 클래스 my_qna 추가 -->
+				if (item.selfGb == 1){
+					tag += ' my_qna';	
+				}else if (item.secretYn == "Y"){
+					tag += ' secret_qna';
+				}
+				tag += ' ">\n';  // <!-- 내가 쓴 글에 클래스 my_qna 추가 -->
 				tag += '	<div class="fold_head">\n';
 				tag += '		<a href="javascript:void(0)">\n';
 				tag += '			<div>\n';

+ 1 - 1
src/main/webapp/WEB-INF/views/web/goods/GoodsDetailReviewFormWeb.html

@@ -39,7 +39,7 @@
 			</dl>
 		</div>
 		<div class="btn_box">
-			<button class="btn btn_dark"><span>지금 리뷰 작성하기</span></button>
+			<button type="button" class="btn btn_dark" onclick="cfnGoToMypageReview();"><span>지금 리뷰 작성하기</span></button>
 		</div>
 	</div>
 	<!-- //등록리뷰 없을 시 -->

+ 15 - 12
src/main/webapp/WEB-INF/views/web/goods/GoodsIncludeFormWeb.html

@@ -62,15 +62,18 @@
 
 <!-- 상품상세 SNS  -->
 <th:block  th:fragment="goodsSnsForm" >
-<div class="sns_list" th:with="pastelUrl=${@environment.getProperty('domain.pastel')}, goodsView=${@environment.getProperty('upload.goods.view')}">
-	<ul>
-		<li><a href="javascript:void(0);" th:attr="onclick=|sendSns('kakaostory', '${pastelUrl+'/goods/detail/form?goodsCd='+goodsInfo.goodsCd}', '${goodsInfo.goodsTnmFull}', '', '');|"></a></li>
-		<li><a href="javascript:void(0);" th:attr="onclick=|sendSns('facebook', '${pastelUrl+'/goods/detail/form?goodsCd='+goodsInfo.goodsCd}', '${goodsInfo.goodsTnmFull}', '', '');|"></a></li>
-		<li><a href="javascript:void(0);" th:attr="onclick=|sendSns('twitter', '${pastelUrl+'/goods/detail/form?goodsCd='+goodsInfo.goodsCd}', '${goodsInfo.goodsTnmFull+ '#파스텔몰'}', '', '');|"></a></li>
-		<li><a href="javascript:void(0);" th:attr="onclick=|sendSns('pinterest', '${pastelUrl+'/goods/detail/form?goodsCd='+goodsInfo.goodsCd}', '${goodsInfo.goodsTnmFull}', '${goodsInfo.imgType == 'A' ? goodsView + goodsInfo.imgPath1 : goodsInfo.imgPath1}', '${goodsInfo.goodsTnmFull}');|"></a></li>
-		<li><a href="javascript:void(0)" class="btn_copy"></a></li>
-	</ul>
+<!-- toggle contents -->
+<div class="shareWrap" th:with="stylelUrl=${@environment.getProperty('domain.front')}, imgGoodsUrl=${@environment.getProperty('upload.goods.view')}">
+	<div id="layerShare" class="setShare open">
+		<span>
+			<button type="button" class="kk" th:attr="onclick=|cfnSendToKakao('${stylelUrl+'/goods/detail/form?goodsCd='+goodsInfo.goodsCd}', '${goodsInfo.goodsFullNm}', '${imgGoodsUrl+ '/'+goodsInfo.sysImgNm}');|"><span>카카오톡</span></button>
+			<button type="button" class="fb" th:attr="onclick=|sendSns('facebook', '${stylelUrl+'/goods/detail/form?goodsCd='+goodsInfo.goodsCd}', '${goodsInfo.goodsFullNm}', '', '');|"><span>페이스북</span></button>
+			<button type="button" class="tw" th:attr="onclick=|sendSns('twitter', '${stylelUrl+'/goods/detail/form?goodsCd='+goodsInfo.goodsCd}', '${goodsInfo.goodsFullNm+ '#style24몰'}', '', '');|"><span>트위터</span></button>
+			<button type="button" class="url btn_copy"><span>URL</span></button>
+		</span>
+	</div>
 </div>
+
 </th:block>
 
 <!-- 딜 상품 상품소개영역 -->
@@ -532,11 +535,11 @@
 		let selfGoodsYn = '';
 		let currPrice = 0;
 		let soldoutYn = "N";
-		$selObj.find('.combo .list li').each(function() { debugger;
+		$selObj.find('.combo .list li').each(function() { 
 			if ($(this).find('input[name=selectGoods]').val() == compsGoodsCd){
 				selfGoodsYn = $(this).find('input[name=selectGoods]').attr('selfGoodsYn');
 				currPrice = $(this).find('input[name=selectGoods]').attr('currPrice');
-				if ($(this).find('.item_prod').hasClass('soldout')) soldout = "Y";
+				if ($(this).find('.item_prod').hasClass('soldout')) soldoutYn = "Y";
 				return false;
 			}
 			selIdx ++;
@@ -545,8 +548,8 @@
 		$selObj.find('.combo .list li').eq(selIdx).trigger("click");
 		
 		// 상세노출
-		fnGoodsDealDesc(compsGoodsCd, currPrice, selfGoodsYn, soldout);
-/* 		debugger;
+		fnGoodsDealDesc(compsGoodsCd, currPrice, selfGoodsYn, soldoutYn);
+/* 		
 		if (!soldout){
 			// 옵션1 처리
 			fnOption1("layer", compsGoodsCd, currPrice, selfGoodsYn);	

+ 1 - 1
src/main/webapp/WEB-INF/views/web/mypage/MypageCustModifyFormWeb.html

@@ -454,12 +454,12 @@
 	var fnSaveCustomerInfoCallback = function (result) {
 		if (result.isSuccess) {
 			mcxDialog.alert("회원정보가 수정되었습니다.");
+			fnGetCustInfo();
 			return;
 		} else {
 			mcxDialog.alert("실패하였습니다.<br/>고객센터에 문의하시 바랍니다.");
 			return;
 		}
-		fnGetCustInfo();
 	}
 
 

+ 298 - 0
src/main/webapp/WEB-INF/views/web/mypage/MypagePointForm2Web.html

@@ -0,0 +1,298 @@
+<!DOCTYPE html>
+<html lang="ko"
+	xmlns:th="http://www.thymeleaf.org"
+	xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
+	layout:decorator="web/common/layout/MypageLayoutWeb">
+<!--
+ *******************************************************************************
+ * @source  : MypagePointForm.html
+ * @desc    : 마이페이지 > STYLE24포인트 Page
+ *============================================================================
+ * STYLE24
+ * Copyright(C) 2021 TSIT, All rights reserved.
+ *============================================================================
+ * VER  DATE         AUTHOR      DESCRIPTION
+ * ===  ===========  ==========  =============================================
+ * 1.0  2021.02.26   csh9191     최초 작성
+ *******************************************************************************
+ -->
+<body>
+
+<th:block layout:fragment="content">
+<div class="content myPoint"> <!-- 페이지특정 클래스 = myPoint -->
+		<div class="cont_body">
+			<!-- CONT-BODY -->
+			<div class="lnb">
+				<div class="lnb_tit">
+				<h2>마이페이지</h2>
+				</div>
+				<div class="lnb_list">
+					<ul id="mypageLnbList"></ul>
+				</div>
+			</div>
+			<div class="cont">
+				<div class="sec_head">
+					<h3 class="subH1">STYLE 포인트</h3>
+				</div>
+				<div class="sec_body">
+					<div class="highlight_area">
+						<div class="have_amount">
+							<div class="total_amount">
+								나의 보유 포인트&nbsp;<span><em th:text="${#numbers.formatDecimal(rmPntAmt, 0, 'COMMA', 0, 'POINT')}"></em>P</span>
+							</div>
+							<dl>
+								<div>
+									<dt>적립 예정 포인트</dt>
+									<dd><em th:text="${#numbers.formatDecimal(expectedPntAmt, 0, 'COMMA', 0, 'POINT')}"></em>P</dd>
+								</div>
+								<div>
+									<dt><span class="tag primary_line">D-<em >30</em></span>한 달 이내 소멸 예정</dt>
+									<dd><em th:text="${#numbers.formatDecimal(expectedExpirePntAmt, 0, 'COMMA', 0, 'POINT')}"></em>P</dd>
+								</div>
+							</dl>
+						</div>
+					</div>
+					<div class="content_area">
+						<div class="taps">
+							<div>
+								<ul>
+									<li id="allPointList"><a href="javascript:void(0);">전체내역</a></li>
+									<li id="accumulatePointList"><a href="javascript:void(0);">적립내역</a></li>
+									<li id="usePointList"><a href="javascript:void(0);">사용내역</a></li>
+								</ul>
+							</div>
+						</div>
+						<div class="select_box">
+							<div class="form_field">
+								<div class="select_custom month">
+									<div class="combo">
+										<input type="hidden" name="pointDate" value="0"/>
+										<div class="select"></div>
+										<ul id="searchDt" class="list">
+											
+										</ul>
+									</div>
+								</div>
+							</div>
+						</div>
+						<!-- 데이터 있을 시 -->
+						<div class="list_box">
+							<div class="tbl type5">
+								<table>
+									<colgroup>
+										<col width="10%">
+										<col width="12%">
+										<col width="42%">
+										<col width="18%">
+										<col width="18%">
+									</colgroup>
+									<thead>
+										<tr>
+											<th scope="col"><span class="sr-only">증감여부</span></th>
+											<th scope="col">사유</th>
+											<th scope="col">내용</th>
+											<th scope="col">포인트</th>
+											<th scope="col">일자</th>
+										</tr>
+									</thead>
+									<tbody id="pointAjaxList">
+															
+									</tbody>
+								</table>
+							</div>
+						</div>
+						<!-- //데이터 있을 시 -->
+						<!-- 데이터 없을 시 -->
+						 <div class="nodata">
+							<div class="txt_box">
+								<p>
+									STYLE 포인트 적립/사용내역이 없습니다.<br>
+	
+								</p>
+							</div>
+						</div> 
+						<!-- //데이터 없을 시 -->	
+					</div>
+				</div>
+			</div>
+		</div>
+	</div>
+<script th:inline="javascript">
+	let accumulatePointList = [[${accumulatePointList}]];
+	let usePointList = [[${usePointList}]];
+	let allPointList = [[${allPointList}]];
+
+	// select 날짜 생성
+	var date = new Date();
+	var year = date.getFullYear();
+	var month = date.getMonth() +1;
+
+	// TODO - 퍼블확정시
+	var oneYearAgo = year -1;
+	var twoYearAgo = year -2;
+	
+	// 이번년도
+	for(var i = 1;i <= 12; i++){
+		if(i < 10 && i != month){
+			$("#searchDt").append("<li onclick='fnChangeDate(this);' class='selected' value='"+ year + "" + 0 + i +"'>"+ year + "년" + " " + i + "월" +"</li>");
+		}
+		else if(i < 10 && i == month){
+			//셀렉트박스 이번 달 표시설정
+			$('.select').append("<li style='pointer-events: none' onclick='fnChangeDate(this);' class='selected' value='"+ year + "" + 0 + i +"'>" + year + "년" + " " + i + "월" +"</li>");
+			$("#searchDt").append("<li onclick='fnChangeDate(this);' class='selected' value='"+ year + "" + 0 + i +"'>" + year + "년" + " " + i + "월" +"</li>");
+		}
+		else if(i > 9 && i != month){
+			$("#searchDt").append("<li onclick='fnChangeDate(this);' class='selected' value='"+ year + "" + i +"'>"+ year + "년" + " " + i + "월" +"</li>");
+		}
+		else if(i > 9 && i == month){
+			$('.select').append("<li onclick='fnChangeDate(this);' class='selected' value='"+ year + ""  + i +"'>" + year + "년" + " " + i + "월" +"</li>");
+			$("#searchDt").append("<li onclick='fnChangeDate(this);' class='selected' value='"+ year + "" + i +"'>"+ year + "년" + " " + i + "월" +"</li>");
+		}
+	}
+
+	// 날짜변경 이벤트
+	var fnChangeDate = function(param) {
+		let url = '/mypage/allpoint/list';
+		
+ 		$(param).parent().parent().find('input[name=pointDate]').val($(param).val());
+ 		var pointData = $(param).parent().parent().find('input[name=pointDate]').val();
+ 		
+ 		if(10 > month){
+ 			month = "0" + month;
+ 		}
+ 		
+ 		// 포인트화면 로딩시 이번달 설정 리스트 표시하기 위함
+ 		if(pointData == null){
+ 			pointData = year + "" + month;
+ 		}
+ 		
+		let data = {};
+		
+		data.searchDt = pointData;
+		
+ 		console.log(data);
+		
+		var jsonData = JSON.stringify(data);
+		
+		gagajf.ajaxJsonSubmit('/mypage/allpoint/list', jsonData, function(result){
+						accumulatePointList = result.accumulatePointList;
+						usePointList = result.usePointList;
+						allPointList = result.allPointList;
+						
+						// 클릭상태 확인
+						if($("#accumulatePointList").hasClass("on")){
+							$("#accumulatePointList").click();
+						}else if($("#usePointList").hasClass("on")){
+							$("#usePointList").click();
+						}else if($("#allPointList").hasClass("on")) {
+							$("#allPointList").click();
+						}
+						// 첫화면 전체내역 조회
+						fnGetPointTableInfo();
+		});
+	}
+	
+	// HTML 그리기
+	var fnGetPointTableInfo = function(param) {
+		$('.nodata').hide();
+		let tag = "";
+		if(param != null && param.length > 0){
+			$.each(param, function(idx,item){
+				tag += '<tr>';
+				tag += '	<td>';
+				if(item.pntAmt > 0){
+					tag += '		<span class="tag primary">적립</span>';
+				}else{
+					tag += '		<span class="tag deepgray">차감</span>';
+				}
+				
+				tag += '	</td>';
+				tag += '	<td>'+item.occurGb+'</td>';
+				tag += '	<td>';
+				tag += '		<div class="txt_content">'+ item.occurDtlDesc + '</div>';
+				tag += '	</td>';
+				tag += '	<td>';
+				if(item.pntAmt > 0){
+					tag += '		<span class="amount_plus">';
+					tag += '			<em>'+item.pntAmt+'</em>P';
+					tag += '		</span>';
+				}else{
+					tag += '		<span class="c_primary">';
+					tag += '			<em>'+item.pntAmt+'</em>P';
+					tag += '		</span>';
+				}
+				
+				tag += '	</td>';
+				tag += '	<td>'+item.pntUploadDt;
+				tag += '	</td>';
+				tag += '</tr>		';
+			});
+		}else{
+			$('.nodata').show();
+			
+		}
+		
+		$("#pointAjaxList").html(tag);
+	}
+	
+	// 전체내역 조회
+	$("#allPointList").click(function(){
+
+ 		$("#accumulatePointList").removeClass("active");
+ 		$("#usePointList").removeClass("active");
+ 		
+ 		$("#allPointList").addClass("active");
+ 		//$("#plusMinus").text("증감/차감");
+ 		
+ 		fnGetPointTableInfo(allPointList);
+	});
+	
+	// 적립내역 조회
+	$("#accumulatePointList").click(function(){
+
+ 		$("#allPointList").removeClass("active");
+ 		$("#usePointList").removeClass("active");
+ 		
+ 		$("#accumulatePointList").addClass("active");
+ 		//$("#plusMinus").text("증감");
+		
+ 		fnGetPointTableInfo(accumulatePointList);
+	});
+	
+	// 사용내역 조회
+	$("#usePointList").click(function(){
+		
+		$("#accumulatePointList").removeClass("active");
+		$("#allPointList").removeClass("active");
+		
+		$("#usePointList").addClass("active");
+		//$("#plusMinus").text("차감");
+		
+		fnGetPointTableInfo(usePointList);
+	});
+	
+	$(document).ready(function() {
+		// 마이페이지 LNB 설정
+		fnSetMypageLnbList(5);
+		
+		// 마이페이지 location 설정
+		fnSetMypageLocation('STYLE24 포인트', '_PAGE_MYPAGE_POINT');
+		
+		// 전체내역 표시
+ 		$("#allPointList").trigger('click');
+
+		// 셀렉트박스 활성화
+		$('.select_custom').each(function(index) {
+			var selecter01 = new sCombo($(this));
+		});
+
+		// 셀렉트박스 데이터 설정
+		fnChangeDate();
+
+	});
+
+</script>
+</th:block>
+
+</body>
+</html>

BIN
src/main/webapp/images/ico_inspect_err.png


BIN
src/main/webapp/images/ico_logo_err.png


BIN
src/main/webapp/images/ico_page_err.png


BIN
src/main/webapp/images/mo/arrow_npay.png


BIN
src/main/webapp/images/mo/btn_npay_txt.png


BIN
src/main/webapp/images/mo/goApp.png


BIN
src/main/webapp/images/mo/ico_admin.png


BIN
src/main/webapp/images/mo/ico_besttag.png


BIN
src/main/webapp/images/mo/ico_besttag2.png


BIN
src/main/webapp/images/mo/ico_big_check.png


BIN
src/main/webapp/images/mo/ico_branb_home.png


BIN
src/main/webapp/images/mo/ico_brandhome_arrow.png


BIN
src/main/webapp/images/mo/ico_btn_dealopen.png


BIN
src/main/webapp/images/mo/ico_complete_check.png


BIN
src/main/webapp/images/mo/ico_count.png


BIN
src/main/webapp/images/mo/ico_cp_down.png


BIN
src/main/webapp/images/mo/ico_itemdelete_btn.png


BIN
src/main/webapp/images/mo/ico_mb_arrow2.png


BIN
src/main/webapp/images/mo/ico_plus_white.png


BIN
src/main/webapp/images/mo/ico_point3.png


BIN
src/main/webapp/images/mo/ico_point3_black.png


BIN
src/main/webapp/images/mo/ico_point4.png


BIN
src/main/webapp/images/mo/ico_point4_black.png


BIN
src/main/webapp/images/mo/ico_secret.png


BIN
src/main/webapp/images/mo/ico_share.png


BIN
src/main/webapp/images/mo/ico_timer2.png


BIN
src/main/webapp/images/mo/img_mb_join_done.jpg


BIN
src/main/webapp/images/mo/img_npay_txt.png


BIN
src/main/webapp/images/mo/logo_STYLE24_white.png


BIN
src/main/webapp/images/mo/star_empty.png


BIN
src/main/webapp/images/mo/star_empty_big.png


BIN
src/main/webapp/images/mo/star_empty_big_only.png


BIN
src/main/webapp/images/mo/thumb/bnn_1stage.jpg


BIN
src/main/webapp/images/mo/thumb/bnn_1stage02.jpg


BIN
src/main/webapp/images/mo/thumb/bnn_2stage1.jpg


BIN
src/main/webapp/images/mo/thumb/bnn_2stage2.jpg


BIN
src/main/webapp/images/mo/thumb/br_main03.png


BIN
src/main/webapp/images/mo/thumb/dp_slide_Item01.png


BIN
src/main/webapp/images/mo/thumb/main_itItems01.jpg


BIN
src/main/webapp/images/mo/thumb/main_itItems02.jpg


BIN
src/main/webapp/images/mo/thumb/main_itItems03.jpg


BIN
src/main/webapp/images/mo/thumb/main_itItems04.jpg


BIN
src/main/webapp/images/mo/thumb/main_pickImg01.jpg


BIN
src/main/webapp/images/mo/thumb/main_pickImg02.jpg


BIN
src/main/webapp/images/mo/thumb/main_pickImg03.jpg


BIN
src/main/webapp/images/mo/thumb/main_pickImg04.jpg


BIN
src/main/webapp/images/mo/thumb/main_recommItems01.jpg


BIN
src/main/webapp/images/mo/thumb/main_recommItems02.jpg


BIN
src/main/webapp/images/mo/thumb/main_recommItems03.jpg


BIN
src/main/webapp/images/mo/thumb/main_recommItems04.jpg


BIN
src/main/webapp/images/mo/thumb/main_stylereport01.jpg


BIN
src/main/webapp/images/mo/thumb/main_stylereport02.jpg


BIN
src/main/webapp/images/mo/thumb/main_stylereport03.jpg


BIN
src/main/webapp/images/mo/thumb/main_stylereport04.jpg


BIN
src/main/webapp/images/mo/thumb/main_trendy01.jpg


BIN
src/main/webapp/images/mo/thumb/main_trendy02.jpg


BIN
src/main/webapp/images/mo/thumb/main_trendy03.jpg


BIN
src/main/webapp/images/mo/thumb/main_trendy04.jpg


BIN
src/main/webapp/images/mo/thumb/main_trendy05.jpg


BIN
src/main/webapp/images/mo/thumb/prod1.jpg


BIN
src/main/webapp/images/mo/thumb/prod3.jpg


BIN
src/main/webapp/images/mo/thumb/tmp_pdDetail4.jpg


BIN
src/main/webapp/images/pc/btn_main_pop_arrow.png


BIN
src/main/webapp/images/pc/btn_open_bnr.png


BIN
src/main/webapp/images/pc/btn_video_pause.png


BIN
src/main/webapp/images/pc/btn_video_play.png


BIN
src/main/webapp/images/pc/ico_arrow_thin.png


BIN
src/main/webapp/images/pc/ico_chk_gift_required.png


BIN
src/main/webapp/images/pc/ico_coupon_10.png


BIN
src/main/webapp/images/pc/ico_coupon_12.png


BIN
src/main/webapp/images/pc/ico_coupon_15.png


BIN
src/main/webapp/images/pc/ico_coupon_15000.png


BIN
src/main/webapp/images/pc/ico_coupon_20000.png


BIN
src/main/webapp/images/pc/ico_coupon_7.png


BIN
src/main/webapp/images/pc/ico_filter_reset.png


BIN
src/main/webapp/images/pc/ico_share.png


BIN
src/main/webapp/images/pc/ico_slide_arrow.png


BIN
src/main/webapp/images/pc/ico_slide_arrow_white.png


BIN
src/main/webapp/images/pc/img_mb_join_done.jpg


BIN
src/main/webapp/images/pc/pay_kakao.png


BIN
src/main/webapp/images/pc/pay_naver.png


BIN
src/main/webapp/images/pc/pay_payco.png


Some files were not shown because too many files changed in this diff