|
|
@@ -0,0 +1,914 @@
|
|
|
+<!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/DefaultLayoutWeb">
|
|
|
+<!--
|
|
|
+ *******************************************************************************
|
|
|
+ * @source : GoodsDetailFormWeb.html
|
|
|
+ * @desc : 딜 상품상세 Page
|
|
|
+ *============================================================================
|
|
|
+ * STYLE24
|
|
|
+ * Copyright(C) 2020 TSIT, All rights reserved.
|
|
|
+ *============================================================================
|
|
|
+ * VER DATE AUTHOR DESCRIPTION
|
|
|
+ * === =========== ========== =============================================
|
|
|
+ * 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>
|
|
|
+<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">
|
|
|
+ <!-- 상품 대표설명 -->
|
|
|
+ <div class="content pd_detail">
|
|
|
+ <div class="cont_head">
|
|
|
+ <h3 class="sr-only">상품 대표설명</h3>
|
|
|
+ </div>
|
|
|
+ <div class="cont_body">
|
|
|
+ <!-- CONT-BODY -->
|
|
|
+ <div class="item_detail">
|
|
|
+ <div class="area_pic">
|
|
|
+ <div class="thumb_nav_wrap" th:if="${goodsImgList != null and !goodsImgList.empty}" >
|
|
|
+ <div class="thumbnav">
|
|
|
+ <div class="swiper-container">
|
|
|
+ <div class="swiper-wrapper">
|
|
|
+ <th:block th:each="goodsImg, status : ${goodsImgList}">
|
|
|
+ <div class="swiper-slide" th:classappend="${status.first}? 'on' : ''"
|
|
|
+ th:if="${ not (#strings.contains(goodsImg.sysImgNm,'_S1.')
|
|
|
+ or #strings.contains(goodsImg.sysImgNm,'_L1.')
|
|
|
+ or #strings.contains(goodsImg.sysImgNm,'_L2.'))}">
|
|
|
+ <a th:href="${'#navLocate'+ status.count}"><span class="thumb"><img th:src="${imgGoodsUrl+'/'+goodsImg.sysImgNm}" alt="" th:onerror="'this.src=\''+@{${uxImgUrl}+ '/images/pc/thumb/bg_item_none.png'}+'\';'"></span></a></div>
|
|
|
+ </th:block>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="swiper-button-next"></div>
|
|
|
+ <div class="swiper-button-prev"></div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="thumb_list_wrap" th:if="${goodsImgList != null and !goodsImgList.empty}" >
|
|
|
+ <ul>
|
|
|
+ <th:block th:each="goodsImg, status : ${goodsImgList}">
|
|
|
+ <li th:id="${'navLocate'+ status.count}" th:classappend="${status.first}? 'on' : ''"
|
|
|
+ th:if="${ not (#strings.contains(goodsImg.sysImgNm,'_S1.')
|
|
|
+ or #strings.contains(goodsImg.sysImgNm,'_L1.')
|
|
|
+ or #strings.contains(goodsImg.sysImgNm,'_L2.'))}">
|
|
|
+ <a href="javascript:void(0);"><span class="thumb"><img th:src="${imgGoodsUrl+'/'+goodsImg.sysImgNm}" alt="" th:onerror="'this.src=\''+@{${uxImgUrl}+ '/images/pc/thumb/bg_item_none.png'}+'\';'"></span></a></li>
|
|
|
+ </th:block>
|
|
|
+ </ul>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <form name="cartForm" id="cartForm" method="post">
|
|
|
+ <input type="hidden" name="mode">
|
|
|
+ <input type="hidden" name="goodsCd" th:value="${params.goodsCd}" />
|
|
|
+ <input type="hidden" name="contentsLoc" th:value="${params.contentsLoc}" />
|
|
|
+ <input type="hidden" name="ithrCd" th:value="${params.ithrCd}" />
|
|
|
+ <input type="hidden" name="planDtlSq" th:value="${params.planDtlSq}" />
|
|
|
+ <input type="hidden" name="adminYn" th:value="${params.adminYn}" />
|
|
|
+ <input type="hidden" name="optCd" />
|
|
|
+ <input type="hidden" name="optCd1" />
|
|
|
+ <input type="hidden" name="optCd2" />
|
|
|
+ <input type="hidden" name="addPrice" />
|
|
|
+ <input type="hidden" name="ordQty" />
|
|
|
+ <input type="hidden" name="stock" />
|
|
|
+ <input type="hidden" name="minOrdQty"/>
|
|
|
+ <input type="hidden" name="maxOrdQty"/>
|
|
|
+ <input type="hidden" name="goodsType" th:value="${goodsInfo.goodsType}"/>
|
|
|
+ <input type="hidden" name="selfGoodsYn" th:value="${goodsInfo.selfGoodsYn}"/>
|
|
|
+ <div class="area_desc">
|
|
|
+ <div class="desc_wrap">
|
|
|
+ <div class="timer_box" style="display:none;">
|
|
|
+ <p>
|
|
|
+ <span class="tit">남은시간</span>
|
|
|
+ <span class="timer">
|
|
|
+ <em id="d-days">0</em>
|
|
|
+ <em id="d-hours">0</em>
|
|
|
+ <em id="d-minutes">0</em>
|
|
|
+ <em id="d-seconds">0</em>
|
|
|
+ </span>
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ <div class="descript_box">
|
|
|
+ <div class="desc_top">
|
|
|
+ <button type="button" class="itemShare">상품 공유하기</button>
|
|
|
+ <button type="button" class="itemLike">관심상품 추가</button>
|
|
|
+ </div>
|
|
|
+ <div class="desc_info">
|
|
|
+ <div class="title_blk">
|
|
|
+ <span class="comment" th:text="${goodsInfo.goodsTnm}">
|
|
|
+ #본사 직영 인기캐주얼 특가전
|
|
|
+ </span>
|
|
|
+ <span class="name" th:text="${goodsInfo.goodsFullNm}">
|
|
|
+ [NBA외] 본사 직영~ 봄 신상 야구모자/백팩 외 99종 무료배송!
|
|
|
+ </span>
|
|
|
+ </div>
|
|
|
+ <div class="price_blk">
|
|
|
+ <span class="sale_price">
|
|
|
+ <em th:text="${#numbers.formatInteger(goodsInfo.currPrice, 0,'COMMA')}">134,100</em>원 ~
|
|
|
+ </span>
|
|
|
+ <button type="button" id="btn_saleCoupon_pop" class="btn btn_primary btn_sm btn_coupon" th:if="${goodsCouponList != null and !goodsCouponList.empty}" th:onclick="cfGoodsCouponInfo([[${goodsInfo.goodsCd}]])"><span>쿠폰받기</span></button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="benefit_box" th:if="${(cardInfoList != null and !cardInfoList.empty) or
|
|
|
+ (goodsCouponList != null and !goodsCouponList.empty)
|
|
|
+ }" >
|
|
|
+ <dl>
|
|
|
+ <div class="bnf_shopping" th:if="${goodsCouponList != null and !goodsCouponList.empty}">
|
|
|
+ <dt>쇼핑혜택</dt>
|
|
|
+ <!------------ 색상 강조 텍스트 영역 <em class="c_primary"></em> 사용요청 ------------>
|
|
|
+ <dd>
|
|
|
+ <span th:if="${goodsCouponList != null and !goodsCouponList.empty}">
|
|
|
+ <th:block th:each="goodsCoupon, status : ${goodsCouponList}" th:if="${status.first}">
|
|
|
+ 최대 <em class="c_primary" >
|
|
|
+ <th:block th:if="${goodsCoupon.dcWay == 'G240_10'}" th:text="|${#numbers.formatInteger(goodsCoupon.dcVal, 0,'COMMA')}원|"></th:block>
|
|
|
+ <th:block th:unless="${goodsCoupon.dcWay == 'G240_10'}" th:text="|${goodsCoupon.dcVal}%|"></th:block>
|
|
|
+ </em> 쿠폰 할인
|
|
|
+ </th:block>
|
|
|
+ </span>
|
|
|
+ <span><em class="c_primary">99개</em> 이상 구매 시 <em class="c_primary">9,999,999원</em> 할인</span>
|
|
|
+ <span>미니언즈 우산 증정</span>
|
|
|
+ <button type="button" id="btn_bnfShopping_pop" class="btn_popup" th:onclick="cfGoodsShopBenefitInfo([[${goodsInfo.goodsCd}]])"><span>자세히</span></button>
|
|
|
+ </dd>
|
|
|
+ </div>
|
|
|
+ <div class="bnf_card" th:if="${cardInfoList != null and !cardInfoList.empty}">
|
|
|
+ <dt>카드혜택</dt>
|
|
|
+ <dd>
|
|
|
+ <th:block th:each="cardInfo, status : ${cardInfoList}">
|
|
|
+ <span th:if="${cardInfo.prmtGb == 'A' and cardInfo.dcGb != '3'}"><th:block th:text="${cardInfo.prmtTargetNm}"></th:block> <em class="c_primary"><th:block th:text="${#numbers.formatInteger(cardInfo.dcVal, 0,'COMMA')+ cardInfo.dcWayNm}"></th:block></em> <th:block th:text="${cardInfo.prmtGbNm}"></span>
|
|
|
+ <span th:if="${cardInfo.prmtGb == 'A' and cardInfo.dcGb == '3'}" th:text="${cardInfo.prmtNm}">프로모션명</span>
|
|
|
+ <span th:if="${cardInfo.prmtGb == 'B'}">신용카드 무이자 혜택</span>
|
|
|
+ </th:block>
|
|
|
+ <button type="button" id="btn_bnfCard_pop" class="btn_popup" onclick="cfCardInfo();return false;"><span>자세히</span></button>
|
|
|
+ </dd>
|
|
|
+ </div>
|
|
|
+ </dl>
|
|
|
+ </div>
|
|
|
+ <div class="option_box">
|
|
|
+ <div class="opt_select">
|
|
|
+ <form class="form_wrap">
|
|
|
+ <div class="form_field">
|
|
|
+ <div class="select_custom deal_opt_item">
|
|
|
+ <div class="combo">
|
|
|
+ <div class="select">
|
|
|
+ <div class="item_prod">
|
|
|
+ <div class="item_state">
|
|
|
+ <a href="javascript:void(0);" class="itemLink">
|
|
|
+ <div class="itemPic">
|
|
|
+ <img alt="" class="vLHTC pd_img" th:src="${imgGoodsUrl+'/'+goodsInfo.sysImgNm}" th:onerror="'this.src=\''+@{${uxImgUrl}+ '/images/pc/thumb/bg_item_none.png'}+'\';'">
|
|
|
+ </div>
|
|
|
+ <div class="itemName">선택</div>
|
|
|
+ </a>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <ul class="list" th:if="${goodsDealComposeList != null and !goodsDealComposeList.empty}">
|
|
|
+ <th:block th:each="goodsInfo, status : ${goodsDealComposeList}" th:attr="aria-disabled=${(goodsInfo.goodsStat != 'G008_90' or goodsInfo.stockQty <= 0)? 'true':''}, data-soldout=${(goodsInfo.stockQty <= 0)? 'true':''}">
|
|
|
+ <li th:onclick="fnOption1('Up', [[${goodsInfo.compsGoodsCd}]]);">
|
|
|
+ <div class="item_prod">
|
|
|
+ <div class="item_state" >
|
|
|
+ <a href="javascript:void(0);" class="itemLink" >
|
|
|
+ <div class="itemPic">
|
|
|
+ <img alt="" class="vLHTC pd_img" th:src="${imgGoodsUrl+'/'+goodsInfo.sysImgNm}" th:onerror="'this.src=\''+@{${uxImgUrl}+ '/images/pc/thumb/bg_item_none.png'}+'\';'">
|
|
|
+ </div>
|
|
|
+ <p class="itemBrand" th:text="${goodsInfo.brandGroupNm}">NBA 키즈</p>
|
|
|
+ <div class="itemName" ><span class="tit_option" th:text="${'[상품'+status.count+']'}">[상품1]</span><th:block th:text="${goodsInfo.goodsFullNm}"></th:block></div>
|
|
|
+ <p class="itemPrice"><th:block th:text="${#numbers.formatInteger(goodsInfo.currPrice, 0,'COMMA')}"> 134,100</th:block>
|
|
|
+ <span class="itemPrice_original" th:if="${goodsInfo.listPrice > goodsInfo.currPrice}" th:text="${#numbers.formatInteger(goodsInfo.listPrice, 0,'COMMA')}">149,000</span>
|
|
|
+ <span class="itemPercent" th:if="${goodsInfo.dcRate > 0}" th:text="|${#numbers.formatDecimal(goodsInfo.dcRate,0,0)}%|">30%</span>
|
|
|
+ </p>
|
|
|
+ </a>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </li>
|
|
|
+ </th:block>
|
|
|
+ </ul>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="form_field">
|
|
|
+ <div class="select_custom deal_opt1" disabled>
|
|
|
+ <div class="combo">
|
|
|
+ <div class="select">선택</div>
|
|
|
+ <ul class="list" id="goodsDealOptUp1">
|
|
|
+ <!-- 옵션 1 -->
|
|
|
+ </ul>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="form_field">
|
|
|
+ <div class="select_custom deal_opt2" disabled>
|
|
|
+ <div class="combo">
|
|
|
+ <div class="select">선택</div>
|
|
|
+ <ul class="list" id="goodsDealOptUp2">
|
|
|
+ <!-- 옵션 2 -->
|
|
|
+ </ul>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </form>
|
|
|
+ </div>
|
|
|
+ <div class="opt_result">
|
|
|
+ <div class="result_item">
|
|
|
+ <div class="opt_header">
|
|
|
+ <span class="item_name">[상품1] 남성 테이퍼드핏 기모면 올밴딩 팬트</span>
|
|
|
+ <span class="item_option">다크그레이/XXL</span>
|
|
|
+ </div>
|
|
|
+ <div class="number_count">
|
|
|
+ <span class="minus"><em class="sr-only">감소</em></span>
|
|
|
+ <input type="text" name="" maxlength="3" style='ime-mode:disabled' value="1" />
|
|
|
+ <span class="plus"><em class="sr-only">추가</em></span>
|
|
|
+ </div>
|
|
|
+ <div class="item_price">
|
|
|
+ <p><em>99,999,999</em>원</p>
|
|
|
+ </div>
|
|
|
+ <button type="button" class="btn_delete_item"><span>삭제</span></button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="price_box">
|
|
|
+ <p class="number">
|
|
|
+ 총 <span id="goodsTotalQty">0</span>개
|
|
|
+ </p>
|
|
|
+ <p class="price">
|
|
|
+ <span>
|
|
|
+ <b id="goodsTotalPrice">0</b><em>원</em>
|
|
|
+ </span>
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ <div class="btn_box">
|
|
|
+ <div class="btn_group_block ui_row">
|
|
|
+ <div class="ui_col_6">
|
|
|
+ <button type="button" class="btn btn_dark btn_block" id="btnGoodsWish" onclick="fnAddCart('C');"><span>쇼핑백</span></button>
|
|
|
+ </div>
|
|
|
+ <div class="ui_col_6">
|
|
|
+ <button type="button" class="btn btn_primary btn_block" id="btnGoodsCart" onclick="fnAddCart('O');"><span>바로구매</span></button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="btn_group_block ui_row">
|
|
|
+ <div class="ui_col_12">
|
|
|
+ <button type="button" class="btn btn_dark btn_block" disabled><span>SOLD OUT</span></button>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </form>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- 상품 대표설명 -->
|
|
|
+
|
|
|
+ <th:block th:include="~{web/goods/GoodsIncludeFormWeb :: goodsDealComposeForm}"></th:block>
|
|
|
+ <!-- //***** 상품소개영역 ***** -->
|
|
|
+ <!-- 이 상품과 함께 본 상품 -->
|
|
|
+ <div class="content wide pd_clickother" id="goodsTogetherbArea">
|
|
|
+ </div>
|
|
|
+ <!-- // 이 상품과 함께 본 상품 -->
|
|
|
+ </div>
|
|
|
+ <!-- 상품썸네일 크게보기 팝업 -->
|
|
|
+ <div class="pd_pop full_pop pd_itemthumb_pop" id="pdItemThumbPop">
|
|
|
+ <div class="full_popup_wrap">
|
|
|
+ <h5 class="sr-only">상품썸네일 크게보기</h5>
|
|
|
+ <div class="btn_close">
|
|
|
+ <a href="" id="btn_close_itemThumbPop">닫기버튼</a>
|
|
|
+ </div>
|
|
|
+ <div class="full_pop_container">
|
|
|
+ <!-- 배송교환반품안내 리스트 내용 -->
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- //상품썸네일 크게보기 팝업 -->
|
|
|
+</div>
|
|
|
+
|
|
|
+<script th:inline="javascript">
|
|
|
+/*<![CDATA[*/
|
|
|
+
|
|
|
+ var cateNm = "";
|
|
|
+
|
|
|
+ // 함께본 상품
|
|
|
+ var fnGoodsTogetherSearch = function(params) {
|
|
|
+ gagajf.ajaxSubmit("/goods/detail/together/frame", "html", "goodsTogetherbArea", params);
|
|
|
+ }
|
|
|
+
|
|
|
+ // 옵션1 조회
|
|
|
+ var fnOption1 = function(flag, goodsCd){
|
|
|
+ let selfGoodsYn = $("#cartForm input[name=selfGoodsYn]").val();
|
|
|
+ let data = {goodsCd : goodsCd
|
|
|
+ };
|
|
|
+ let jsonData = JSON.stringify(data);
|
|
|
+
|
|
|
+ gagajf.ajaxJsonSubmit('/goods/detail/option1/list', jsonData, function(result) {
|
|
|
+
|
|
|
+ if (result.dataList != null && result.dataList.length > 0) {
|
|
|
+ let tag = "";
|
|
|
+ let $objUp = null;
|
|
|
+ let $objDown = null;
|
|
|
+ let qty = 1;
|
|
|
+ $.each(result.dataList, function(idx, item) {
|
|
|
+ if (idx == 0){
|
|
|
+ $objUp = $('#goodsDealOptUp1');
|
|
|
+ $objUp.append('');
|
|
|
+ $objDown = $('#goodsDealOptDown1');
|
|
|
+ $objDown.append('');
|
|
|
+
|
|
|
+ $('.form_field .select_custom.deal_opt1').attr('disabled', false)
|
|
|
+ tag += '<li class="selected" id="goodsOpt1">선택</li>\n';
|
|
|
+ }
|
|
|
+ let soldoutYn = "";
|
|
|
+ if (item.stockQty <= 0) soldoutYn = "true";
|
|
|
+ tag += '<li aria-disabled="'+soldoutYn+'" data-soldout="'+soldoutYn +'" onclick="fnOption2(\''+flag+'\', \''+ item.goodsCd+'\' , \''+ item.optCd1+'\' , \''+ qty+'\', \''+ item.minOrdQty+'\', \''+ item.maxOrdQty+'\')">\n';
|
|
|
+ tag += '<div>'+ item.optCd1+'</div>\n';
|
|
|
+ if (item.addPrice > 0){
|
|
|
+ tag += '<div>'+ item.addPrice.addComma() +'원</div>\n';
|
|
|
+ }
|
|
|
+ tag += '<input type="hidden" name="opt1" value="'+ item.goodsCd+'|'+item.optCd1 +'|'+qty +'" addPrice="'+item.addPrice+'" optCd1="'+item.optCd1+'" />\n';
|
|
|
+ tag += '</li>\n';
|
|
|
+ });
|
|
|
+
|
|
|
+ $objUp.append(tag);
|
|
|
+ $objDown.append(tag);
|
|
|
+ var detail_deal_option02 = new sCombo('.pd_detail .opt_select .select_custom.deal_opt1');
|
|
|
+ var desc_option02 = new sCombo('.pd_desc_wrap .opt_select .select_custom.deal_opt1');
|
|
|
+ //var pop_desc_option02 = new sCombo('.pd_detail .opt_select .select_custom.deal_opt1');
|
|
|
+ }
|
|
|
+
|
|
|
+ let $obj = null;
|
|
|
+ let $taget = null;
|
|
|
+ // 하단 우측 상품선택영역 Up/ Down
|
|
|
+ if (flag == "Up"){
|
|
|
+ $obj = $('.pd_detail .opt_select .select_custom.deal_opt_item').find('.combo .select');
|
|
|
+ $taget = $('.pd_desc_wrap .opt_select .select_custom.deal_opt_item').find('.combo .select');
|
|
|
+ }else if (flag == "Down"){
|
|
|
+ $taget = $('.pd_detail .opt_select .select_custom.deal_opt_item').find('.combo .select');
|
|
|
+ $obj = $('.pd_desc_wrap .opt_select .select_custom.deal_opt_item').find('.combo .select');
|
|
|
+ }
|
|
|
+ let goodsDealInfo = $obj.html();
|
|
|
+ $taget.html(goodsDealInfo);
|
|
|
+
|
|
|
+ });
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ // 옵션2 조회
|
|
|
+ var fnOption2 = function(flag, goodsCd, optCd1, qty, minOrdQty, maxOrdQty ){
|
|
|
+ let selfGoodsYn = $("#cartForm input[name=selfGoodsYn]").val();
|
|
|
+ let data = {goodsCd : goodsCd
|
|
|
+ ,optCd1 : optCd1
|
|
|
+ };
|
|
|
+ let jsonData = JSON.stringify(data);
|
|
|
+
|
|
|
+ gagajf.ajaxJsonSubmit('/goods/detail/option2/list', jsonData, function(result) {
|
|
|
+
|
|
|
+ if (result.dataList != null && result.dataList.length > 0) {
|
|
|
+ let tag = "";
|
|
|
+ let $objUp = null;
|
|
|
+ let $objDown = null;
|
|
|
+ $.each(result.dataList, function(idx, item) {
|
|
|
+ if (idx == 0){
|
|
|
+ $objUp = $('#goodsDealOptUp2');
|
|
|
+ $objUp.append('');
|
|
|
+ $objDown = $('#goodsDealOptDown2');
|
|
|
+ $objDown.append('');
|
|
|
+ $('.form_field .select_custom.deal_opt2').attr('disabled', false)
|
|
|
+ tag += '<li class="selected" id="goodsOpt2">선택</li>\n';
|
|
|
+ }
|
|
|
+ let soldoutYn = "";
|
|
|
+ if ("Y" == item.soldoutYn || item.stockQty <= 0)soldoutYn = "true";
|
|
|
+ tag += '<li aria-disabled="'+soldoutYn+'" data-soldout="'+soldoutYn +'" onclick="fnViewStock(this, \''+ flag +'\' , \''+ item.goodsCd+'\' , \''+ item.optCd+'\' , \''+ item.optCd1+'\' , \''+ item.optCd2+'\', \''+ minOrdQty+'\', \''+ maxOrdQty+'\')">\n';
|
|
|
+ tag += '<div>'+ item.optCd2+'</div>\n';
|
|
|
+ if (item.addPrice > 0){
|
|
|
+ tag += '<div>'+ item.addPrice.addComma() +'원</div>\n';
|
|
|
+ }
|
|
|
+ tag += '<input type="hidden" name="opt2" value="'+ item.goodsCd+'|'+item.optCd +'|'+qty +'" id="'+item.optCd+'" addPrice="'+item.addPrice+'" optCd="'+item.optCd+'" optCd1="'+item.optCd1+'" optCd2="'+item.optCd2+'" />\n';
|
|
|
+ tag += '</li>\n';
|
|
|
+ });
|
|
|
+
|
|
|
+ $objUp.append(tag);
|
|
|
+ $objDown.append(tag);
|
|
|
+ var detail_deal_option03 = new sCombo('.pd_detail .opt_select .select_custom.deal_opt2');
|
|
|
+ var desc_option03 = new sCombo('.pd_desc_wrap .opt_select .select_custom.deal_opt2');
|
|
|
+ //var pop_desc_option03 = new sCombo('.pd_detail .opt_select .select_custom.deal_opt2');
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ let $obj = null;
|
|
|
+ let $taget = null;
|
|
|
+ // 하단 우측 상품선택영역 Up/ Down
|
|
|
+ if (flag == "Up"){
|
|
|
+ $obj = $('.pd_detail .opt_select .select_custom.deal_opt1').find('.combo .select');
|
|
|
+ $taget = $('.pd_desc_wrap .opt_select .select_custom.deal_opt1').find('.combo .select');
|
|
|
+ }else if (flag == "Down"){
|
|
|
+ $taget = $('.pd_detail .opt_select .select_custom.deal_opt1').find('.combo .select');
|
|
|
+ $obj = $('.pd_desc_wrap .opt_select .select_custom.deal_opt1').find('.combo .select');
|
|
|
+ }
|
|
|
+
|
|
|
+ let goodsDealInfo = $obj.html();
|
|
|
+ $taget.html(goodsDealInfo);
|
|
|
+
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ //사이즈 클릭시 - 단품
|
|
|
+ var fnViewStock = function(obj, flag, goodsCd, optCd, optCd1, optCd2, minOrdQty, maxOrdQty) {
|
|
|
+ let $obj = $(obj);
|
|
|
+ let selfGoodsYn = $("#cartForm input[name=selfGoodsYn]").val();
|
|
|
+ let $target = null;
|
|
|
+ if (selfGoodsYn == "Y"){
|
|
|
+ $target = $obj.parent().parent().children('input[name="opt"]');
|
|
|
+ $target.prop("checked",true);
|
|
|
+ $("#selectOptCd1").html(optCd2);
|
|
|
+ }else{
|
|
|
+ $target = $obj.find('input[name="opt2"]');
|
|
|
+ }
|
|
|
+ let addPrice = $target.attr("addPrice");
|
|
|
+ $("#selectOptCd1addPrice").html('');
|
|
|
+ if (Number(addPrice) > 0) $("#selectOptCd1addPrice").html("(+" + addPrice.addComma() + ")");
|
|
|
+
|
|
|
+ $("#cartForm input[name=optCd]").val(optCd);
|
|
|
+ $("#cartForm input[name=optCd1]").val(optCd1);
|
|
|
+ $("#cartForm input[name=optCd2]").val(optCd2);
|
|
|
+ $("#cartForm input[name=addPrice]").val(addPrice);
|
|
|
+ $("#cartForm input[name=ordQty]").val("");
|
|
|
+
|
|
|
+ let maxCnt = maxOrdQty;
|
|
|
+ let params = new Object();
|
|
|
+ params.goodsCd = goodsCd;
|
|
|
+ params.optCd = optCd;
|
|
|
+ params.optCd1 = optCd1;
|
|
|
+ params.optCd2 = optCd2;
|
|
|
+ params.selfGoodsYn = selfGoodsYn;
|
|
|
+
|
|
|
+ $.get("/goods/detail/ajaxGoodsStockQty", $.param(params), function(result) {
|
|
|
+ let itemCnt = eval(result); //해당 아이템에 선택되어진 사이즈의 수량
|
|
|
+
|
|
|
+ if (maxCnt > itemCnt) {
|
|
|
+ maxCnt = itemCnt;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (minOrdQty > itemCnt) {
|
|
|
+ $target.prop("disabled", true);
|
|
|
+ }else{
|
|
|
+ $("#cartForm input[name=ordQty]").val(minOrdQty);
|
|
|
+ $("#cartForm input[name=maxOrdQty]").val(maxCnt);
|
|
|
+ $("#cartForm input[name=minOrdQty]").val(minOrdQty);
|
|
|
+ $("#cartForm input[name=cea]").val(minOrdQty);
|
|
|
+ $("#cartForm input[name=cea]").attr("readonly",false);
|
|
|
+ $("#cartForm input[name=stock]").val(itemCnt);
|
|
|
+
|
|
|
+ fnSetTotalPrice();
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ // opt_result
|
|
|
+ /* <div class="result_item">
|
|
|
+ <div class="opt_header">
|
|
|
+ <span class="item_name">[상품1] 남성 테이퍼드핏 기모면 올밴딩 팬트</span>
|
|
|
+ <span class="item_option">다크그레이/XXL</span>
|
|
|
+ </div>
|
|
|
+ <div class="number_count">
|
|
|
+ <span class="minus min_val"><em class="sr-only">감소</em></span>
|
|
|
+ <input type="text" name="" maxlength="3" style="ime-mode:disabled" value="1">
|
|
|
+ <span class="plus"><em class="sr-only">추가</em></span>
|
|
|
+ </div>
|
|
|
+ <div class="item_price">
|
|
|
+ <p><em>99,999,999</em>원</p>
|
|
|
+ </div>
|
|
|
+ <button type="button" class="btn_delete_item"><span>삭제</span></button>
|
|
|
+ </div> */
|
|
|
+ let $obj = null;
|
|
|
+ let $taget = null;
|
|
|
+ // 하단 우측 상품선택영역 Up/ Down
|
|
|
+ if (flag == "Up"){
|
|
|
+ $obj = $('.pd_detail .opt_select .select_custom.deal_opt2').find('.combo .select');
|
|
|
+ $taget = $('.pd_desc_wrap .opt_select .select_custom.deal_opt2').find('.combo .select');
|
|
|
+ }else if (flag == "Down"){
|
|
|
+ $taget = $('.pd_detail .opt_select .select_custom.deal_opt2').find('.combo .select');
|
|
|
+ $obj = $('.pd_desc_wrap .opt_select .select_custom.deal_opt2').find('.combo .select');
|
|
|
+ }
|
|
|
+
|
|
|
+ let goodsDealInfo = $obj.html();
|
|
|
+ $taget.html(goodsDealInfo);
|
|
|
+
|
|
|
+
|
|
|
+ }, "text");
|
|
|
+ }
|
|
|
+
|
|
|
+ // 수량 변경 클릭
|
|
|
+ var fnAdjustOrderEa = function(obj) {
|
|
|
+
|
|
|
+ if("G056_N" == $("#cartForm input[name=goodsType]").val()){
|
|
|
+ if(gagajf.isNull($("#cartForm input[name=optCd2]").val())){
|
|
|
+ mcxDialog.alert("사이즈를 선택하세요.");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ let target=$('.select_custom.item_opt2');
|
|
|
+ let targetSize = target.length; //구성품 갯수
|
|
|
+ let itemSize = 0;
|
|
|
+ target.each(function(){
|
|
|
+ if (typeof ($(this).find('.select').find('input[name=opt2]').val()) != 'undefined' && !gagajf.isNull($(this).find('.select').find('input[name=opt2]').val())){
|
|
|
+ itemSize ++;
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ if (targetSize != itemSize){
|
|
|
+ mcxDialog.alert("구성상품들의 옵션을 선택하세요.");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ let $obj = $(obj);
|
|
|
+ let $target = $obj.parent().children('input[name="cea"]');
|
|
|
+ let minOrdQty = parseInt($("#cartForm input[name=minOrdQty]").val());
|
|
|
+ let ea =parseInt($target.val());
|
|
|
+
|
|
|
+ if ($obj.attr('adjust') == '-') --ea;
|
|
|
+ else ++ea;
|
|
|
+
|
|
|
+ //var maxOrdQty = $("#cartForm input[name=maxOrdQty]").val();
|
|
|
+
|
|
|
+ //if (maxOrdQty && ea > maxOrdQty) ea = maxOrdQty;
|
|
|
+ if (ea.toString().length > parseInt($target.attr('maxlength'))) --ea;
|
|
|
+ if (ea < 1) ea = minOrdQty;
|
|
|
+
|
|
|
+ $target.val(ea);
|
|
|
+
|
|
|
+ fnChangeOrderEa();
|
|
|
+ }
|
|
|
+
|
|
|
+ //옵션 갯수 변경
|
|
|
+ var fnChangeOrderEa = function() {
|
|
|
+
|
|
|
+ if("G056_N" == $("#cartForm input[name=goodsType]").val()){
|
|
|
+ if(gagajf.isNull($("#cartForm input[name=optCd2]").val())){
|
|
|
+ mcxDialog.alert("사이즈를 선택하세요.");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+
|
|
|
+ let target=$('.select_custom.item_opt2');
|
|
|
+ let targetSize = target.length; //구성품 갯수
|
|
|
+ let itemSize = 0;
|
|
|
+ target.each(function(){
|
|
|
+ if (typeof ($(this).find('.select').find('input[name=opt2]').val()) != 'undefined' && !gagajf.isNull($(this).find('.select').find('input[name=opt2]').val())){
|
|
|
+ itemSize ++;
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ if (targetSize != itemSize){
|
|
|
+ mcxDialog.alert("구성상품들의 옵션을 선택하세요.");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //let f = document.cartForm;
|
|
|
+ let ea = parseInt($("#cartForm input[name=cea]").val());
|
|
|
+ let buymin = parseInt($("#cartForm input[name=minOrdQty]").val());
|
|
|
+ let buymax = parseInt($("#cartForm input[name=maxOrdQty]").val());
|
|
|
+ let alertMsg = '';
|
|
|
+ if (ea < buymin) {
|
|
|
+ alertMsg ="최소 주문 가능 수량은 "+buymin+"개 입니다.";
|
|
|
+ ea = buymin;
|
|
|
+ }
|
|
|
+
|
|
|
+ if (ea > buymax) {
|
|
|
+ alertMsg = "최대 주문 가능 수량은 "+buymax+"개 입니다.";
|
|
|
+ ea = buymax;
|
|
|
+ }
|
|
|
+
|
|
|
+ $("#cartForm input[name=cea]").val(ea);
|
|
|
+ $("#cartForm input[name=ordQty]").val(ea);
|
|
|
+
|
|
|
+ if (alertMsg != ''){
|
|
|
+ mcxDialog.alert(alertMsg);
|
|
|
+ //return;
|
|
|
+ }
|
|
|
+
|
|
|
+ fnSetTotalPrice();
|
|
|
+ }
|
|
|
+
|
|
|
+ //합계 계산
|
|
|
+ var fnSetTotalPrice = function() {
|
|
|
+ //let f = document.cartForm;
|
|
|
+
|
|
|
+ let totalEa = 0;
|
|
|
+ let totalPrice = 0;
|
|
|
+
|
|
|
+ $('input[name="cea"]').each(function() {
|
|
|
+ let ea = parseInt($(this).val());
|
|
|
+ let addPrice = 0;
|
|
|
+ let target=$('.select_custom.item_opt2');
|
|
|
+ target.each(function() {
|
|
|
+ if (typeof ($(this).find('input[name=opt2]').val()) != 'undefined' && !gagajf.isNull($(this).find('input[name=opt2]').val())){
|
|
|
+ addPrice += Number($(this).find('input[name=opt2]').attr('addPrice'));
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ let goodsPrice = parseInt($(this).parent().find('input[name="coption"]').attr('price'));
|
|
|
+
|
|
|
+ totalEa += ea;
|
|
|
+ if (goodsPrice > 0) {
|
|
|
+ totalPrice += ((goodsPrice+addPrice) * ea);
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ $('#goodsTotalQty').html(totalEa.addComma());
|
|
|
+ $('#goodsTotalPrice').html(totalPrice.addComma());
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ //장바구니담기
|
|
|
+ var fnAddCart = function(btnType){
|
|
|
+
|
|
|
+ // 바로구매는 로그인여부 확인
|
|
|
+ if (btnType == "O" && !cfCheckLogin()) {
|
|
|
+
|
|
|
+ let btn = ["비회원 구매", "로그인후 구매"]; //버튼명[좌,우]
|
|
|
+ mcxDialog.confirmC("로그인 후 구매 시 다양한 혜택을 받으실 수 있습니다.", { //내용
|
|
|
+ btn: btn,
|
|
|
+ btnClick: function(index){
|
|
|
+ if (index == 1){ //button1 일때 처리문
|
|
|
+ // 비회원 URL
|
|
|
+ ALERT('비회원');
|
|
|
+ } else { //button2 일때 처리문
|
|
|
+ cfnGoToPage(_PAGE_LOGIN);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ let params = [];
|
|
|
+ let goodsType = $("#cartForm input[name=goodsType]").val();
|
|
|
+
|
|
|
+ if (goodsType == 'G056_N'){
|
|
|
+ if (gagajf.isNull($("#cartForm input[name=optCd2]").val())) {
|
|
|
+ mcxDialog.alert("사이즈를 선택하세요.");
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ let obj = new Object();
|
|
|
+ obj.goodsCd = $("#cartForm input[name=goodsCd]").val();
|
|
|
+ obj.optCd = $("#cartForm input[name=optCd]").val();
|
|
|
+ obj.goodsQty = $("#cartForm input[name=ordQty]").val();
|
|
|
+ obj.goodsType = $("#cartForm input[name=goodsType]").val();
|
|
|
+ obj.cartGb = btnType;
|
|
|
+ obj.afLinkCd =$("#cartForm input[name=afLinkCd]").val();
|
|
|
+ obj.ithrCd =$("#cartForm input[name=ithrCd]").val();
|
|
|
+ obj.contentsLoc =$("#cartForm input[name=contentsLoc]").val();
|
|
|
+ obj.planDtlSq = $("#cartForm input[name=planDtlSq]").val();
|
|
|
+ params.push(obj);
|
|
|
+
|
|
|
+ }else if (goodsType == 'G056_S'){ //수정요
|
|
|
+
|
|
|
+ let target=$('.select_custom.item_opt2');
|
|
|
+ let targetSize = target.length; //구성품 갯수
|
|
|
+ let itemSize = 0;
|
|
|
+ target.each(function(){
|
|
|
+ if (typeof ($(this).find('.select').find('input[name=opt2]').val()) != 'undefined' && !gagajf.isNull($(this).find('.select').find('input[name=opt2]').val())){
|
|
|
+ itemSize ++;
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ if (targetSize != itemSize){
|
|
|
+ mcxDialog.alert("구성상품들의 옵션을 선택하세요.");
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ target.each(function() {
|
|
|
+ var arrInfo = $(this).find('input[name=opt2]').val().split('|'); // 상품코드|사이즈|구성수량
|
|
|
+
|
|
|
+ var obj = new Object();
|
|
|
+ obj.cartGb = btnType;
|
|
|
+ obj.goodsType = $("#cartForm input[name=goodsType]").val();
|
|
|
+ obj.goodsCd = $("#cartForm input[name=goodsCd]").val();
|
|
|
+ obj.itemCd = arrInfo[0];
|
|
|
+ obj.optCd = arrInfo[1];
|
|
|
+ obj.goodsQty = $("#cartForm input[name=ordQty]").val();
|
|
|
+ obj.afLinkCd =$("#cartForm input[name=afLinkCd]").val();
|
|
|
+ obj.ithrCd =$("#cartForm input[name=ithrCd]").val();
|
|
|
+ obj.contentsLoc =$("#cartForm input[name=contentsLoc]").val();
|
|
|
+ obj.planDtlSq = $("#cartForm input[name=planDtlSq]").val();
|
|
|
+ params.push(obj);
|
|
|
+
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ // 장바구니담기
|
|
|
+ cfnAddCart(params);
|
|
|
+ }
|
|
|
+
|
|
|
+ $(document).ready( function() {
|
|
|
+
|
|
|
+ $('.timer_box').css('display', 'none');
|
|
|
+
|
|
|
+ var params = new Object();
|
|
|
+ params.goodsCd = [[${params.goodsCd}]];
|
|
|
+ params.viewDt = [[${params.viewDt}]];
|
|
|
+ params.preview = [[${params.preview}]];
|
|
|
+ params.adminYn = [[${params.adminYn}]];
|
|
|
+ params.goodsType = [[${params.goodsType}]];
|
|
|
+ params.supplyCompCd = [[${params.supplyCompCd}]];
|
|
|
+ params.brandGroupNm = [[${goodsInfo.brandGroupNm}]];
|
|
|
+
|
|
|
+ // 함께본 상품(ajax html)
|
|
|
+ params.goodsOtherGb = "together";
|
|
|
+ params.ithrCd = "tmtb";
|
|
|
+ params.contentsLoc = "tmtb";
|
|
|
+ fnGoodsTogetherSearch(params);
|
|
|
+
|
|
|
+ if (!gagajf.isNull([[${goodsInfo.socialSq}]])){
|
|
|
+ $('.timer_box').css('display', 'block');
|
|
|
+ /* 행사 남은시간 */
|
|
|
+ function promotionTimer() {
|
|
|
+ var endTime = new Date([[${goodsInfo.socialEddt}]]); // 남은시간 지정 30 March 2021 9:56:00 GMT+0900
|
|
|
+ endTime = (Date.parse(endTime) / 1000);
|
|
|
+
|
|
|
+ var now = new Date();
|
|
|
+ now = (Date.parse(now) / 1000);
|
|
|
+
|
|
|
+ var timeLeft = endTime - now;
|
|
|
+
|
|
|
+ var days = Math.floor(timeLeft / 86400);
|
|
|
+ var hours = Math.floor((timeLeft - (days * 86400)) / 3600);
|
|
|
+ var minutes = Math.floor((timeLeft - (days * 86400) - (hours * 3600 )) / 60);
|
|
|
+ var seconds = Math.floor((timeLeft - (days * 86400) - (hours * 3600) - (minutes * 60)));
|
|
|
+
|
|
|
+ if (hours < '10') { hours = '0' + hours; }
|
|
|
+ if (minutes < '10') { minutes = '0' + minutes; }
|
|
|
+ if (seconds < '10') { seconds = '0' + seconds; }
|
|
|
+
|
|
|
+ if (Number(days) > 0 ){
|
|
|
+ $('#d-days').html(days);
|
|
|
+ }else{
|
|
|
+ $('#d-days').css('display','none');
|
|
|
+ }
|
|
|
+ $('#d-hours').html(hours);
|
|
|
+ $('#d-minutes').html(minutes);
|
|
|
+ $('#d-seconds').html(seconds);
|
|
|
+ }
|
|
|
+ setInterval(function() { promotionTimer(); }, 1000);
|
|
|
+ }
|
|
|
+
|
|
|
+ //상품 대표설명 > 우측 상품정보
|
|
|
+ /* 딜 옵션선택 후 다음 옵션 활성화 */
|
|
|
+ var detail_deal_option01 = new sCombo('.pd_detail .opt_select .select_custom.deal_opt_item');
|
|
|
+ //var detail_deal_option02 = new sCombo('.pd_detail .opt_select .select_custom.deal_opt1');
|
|
|
+ //var detail_deal_option03 = new sCombo('.pd_detail .opt_select .select_custom.deal_opt2');
|
|
|
+ /* $('.pd_detail .opt_select .select_custom .combo .list > li').click(function(e) {
|
|
|
+ $(this).parents('.form_field').next('.form_field').find('.select_custom').attr('disabled', false);
|
|
|
+ return false;
|
|
|
+ }); */
|
|
|
+
|
|
|
+ // 하단 우측 상품선택영역
|
|
|
+ /* 딜 옵션선택 후 다음 옵션 활성화 */
|
|
|
+ var desc_option01 = new sCombo('.pd_desc_wrap .opt_select .select_custom.deal_opt_item');
|
|
|
+ //var desc_option02 = new sCombo('.pd_desc_wrap .opt_select .select_custom.deal_opt1');
|
|
|
+ //var desc_option03 = new sCombo('.pd_desc_wrap .opt_select .select_custom.deal_opt2');
|
|
|
+ /* $('.pd_desc_wrap .opt_select .select_custom .combo .list > li').click(function(e) {
|
|
|
+ $(this).parents('.form_field').next('.form_field').find('.select_custom').attr('disabled', false);
|
|
|
+ return false;
|
|
|
+ }); */
|
|
|
+
|
|
|
+ // 상품선택 옵션 : 하단 상품정보 영역
|
|
|
+ var tab_review_item = new sCombo('.tab_detail_cont .select_custom.deal_opt_item.forReview');
|
|
|
+ var tab_qna_item = new sCombo('.tab_detail_cont .select_custom.deal_opt_item.forQna');
|
|
|
+ var tab_exinfo_item = new sCombo('.tab_detail_cont .select_custom.deal_opt_item.forExinfo');
|
|
|
+
|
|
|
+ // 상품선택 옵션 : 상세정보 > 상품 > 팝업
|
|
|
+ var pop_desc_option01 = new sCombo('.pd_descrp_pop .select_custom.deal_opt_item');
|
|
|
+ //var pop_desc_option02 = new sCombo('.pd_detail .opt_select .select_custom.deal_opt1');
|
|
|
+ //var pop_desc_option03 = new sCombo('.pd_detail .opt_select .select_custom.deal_opt2');
|
|
|
+
|
|
|
+ /* 상품옵션변경 팝업 > 수량조절 */
|
|
|
+ //수량1개 이하 감소버튼 비활성화
|
|
|
+ var valItemCount = $('.option_box .result_item .number_count input').val();
|
|
|
+ if ( valItemCount == 1 ) {
|
|
|
+ $(' .option_box .result_item .number_count .minus').addClass('min_val');
|
|
|
+ }
|
|
|
+
|
|
|
+ //상품상세정보 더보기
|
|
|
+ $(document).on('click','.pd_descrp_pop .btn_more_box button',function(e){
|
|
|
+ $('.pd_descrp_pop .cont_body').toggleClass('on');
|
|
|
+ $(this).toggleClass('active');
|
|
|
+ $(this).parent('.btn_more_box').toggleClass('covered');
|
|
|
+ var descrpToggle = $(this).find('span');
|
|
|
+ $(descrpToggle).text($(descrpToggle).text() == '상세정보 더보기' ? '상세정보 접기' : '상세정보 더보기');
|
|
|
+ return false;
|
|
|
+ });
|
|
|
+
|
|
|
+ //상품상세정보 탭
|
|
|
+ $(document).on('click','.pd.deal .tab_detail_nav ul li',function(e){
|
|
|
+ $(this).addClass('active').siblings().removeClass('active');
|
|
|
+ $('.pd.deal .tab_detail_cont').hide();
|
|
|
+ $('.pd.deal .tab_detail_cont').eq($(this).index()).show();
|
|
|
+
|
|
|
+ //상품상세정보 호출
|
|
|
+ //$('.pd_review .cont_body').load('pd_review_pop.html');
|
|
|
+ //$('.pd_qnalist .cont_body').load('pd_qnalist_pop.html');
|
|
|
+ //$('.pd_delivery .cont_body').load('pd_delivery_pop.html');
|
|
|
+
|
|
|
+ return false;
|
|
|
+ });
|
|
|
+
|
|
|
+ //슬라이드 - 이 상품과 함께 본 상품
|
|
|
+ var otherItemSwiper = new Swiper('.pd .pd_clickother .area_slider .swiper-container', {
|
|
|
+ slidesPerView: 5,
|
|
|
+ spaceBetween: 20,
|
|
|
+ navigation: {
|
|
|
+ nextEl: '.pd_clickother .swiper-button-next',
|
|
|
+ prevEl: '.pd_clickother .swiper-button-prev',
|
|
|
+ },
|
|
|
+ pagination: {
|
|
|
+ el: '.pd_clickother .swiper-pagination',
|
|
|
+ clickable: true,
|
|
|
+ },
|
|
|
+ });
|
|
|
+
|
|
|
+ // 광고 스크립트용
|
|
|
+ var goodsNavigation = [[${goodsNavigation}]];
|
|
|
+ var cate1Nm = "";
|
|
|
+ var cate2Nm = "";
|
|
|
+ var cate3Nm = "";
|
|
|
+ var cate4Nm = "";
|
|
|
+ var cate5Nm = "";
|
|
|
+ if (!gagajf.isNull(goodsNavigation)) {
|
|
|
+ cate1Nm = goodsNavigation.cate1Nm;
|
|
|
+ cate2Nm = goodsNavigation.cate2Nm;
|
|
|
+ cate3Nm = goodsNavigation.cate3Nm;
|
|
|
+ cate4Nm = goodsNavigation.cate4Nm;
|
|
|
+ cate5Nm = goodsNavigation.cate3Nm;
|
|
|
+
|
|
|
+ if (!gagajf.isNull(cate1Nm)) {
|
|
|
+ cateNm += cate1Nm;
|
|
|
+ }
|
|
|
+ if (!gagajf.isNull(cate2Nm)) {
|
|
|
+ cateNm += ' > ' + cate2Nm;
|
|
|
+ }
|
|
|
+ if (!gagajf.isNull(cate3Nm)) {
|
|
|
+ cateNm += ' > ' + cate3Nm;
|
|
|
+ }
|
|
|
+ if (!gagajf.isNull(cate4Nm)) {
|
|
|
+ cateNm += ' > ' + cate4Nm;
|
|
|
+ }
|
|
|
+ if (!gagajf.isNull(cate5Nm)) {
|
|
|
+ cateNm += ' > ' + cate5Nm;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 광고 스크립트용
|
|
|
+
|
|
|
+ var snsGoodsImg = _uploadGoodsUrl + [[${goodsInfo.sysImgNm}]];
|
|
|
+ var snsUrl = location.protocol + _PAGE_GOODS_DETAIL + params.goodsCd +'&colorCd =' + params.colorCd ;
|
|
|
+ var snsGoodsFullNm = [[${goodsInfo.goodsFullNm}]];
|
|
|
+
|
|
|
+ <!-- 페이스북 카카오스토리 연동 관련 메타태그 -->
|
|
|
+ $("meta[property='og:url']").attr('content', snsUrl);
|
|
|
+ $("meta[property='og:title']").attr('content', snsGoodsFullNm);
|
|
|
+ $("meta[property='og:description']").attr('content', snsGoodsFullNm);
|
|
|
+ $("meta[property='og:image']").attr('content', snsGoodsImg);
|
|
|
+
|
|
|
+ <!-- 트위터 관련 메타태그 -->
|
|
|
+ $("meta[name='twitter:url']").attr('content', snsUrl);
|
|
|
+ $("meta[name='twitter:title']").attr('content', snsGoodsFullNm);
|
|
|
+ $("meta[name='twitter:description']").attr('content', snsGoodsFullNm);
|
|
|
+ $("meta[name='twitter:image']").attr('content', snsGoodsImg);
|
|
|
+
|
|
|
+ // 추천솔류션 meta 설정
|
|
|
+ $("meta[property='eg:type']").attr('content',"product");
|
|
|
+ $("meta[property='eg:cuid']").attr('content',eglqueueCuid);
|
|
|
+ $("meta[property='eg:itemId']").attr('content', [[${goodsInfo.goodsCd}]] );
|
|
|
+ $("meta[property='eg:itemName']").attr('content',[[${goodsInfo.goodsFullNm}]] );
|
|
|
+ $("meta[property='eg:itemImage']").attr('content', snsGoodsImg);
|
|
|
+ $("meta[property='eg:itemUrl']").attr('content',snsUrl);
|
|
|
+ $("meta[property='eg:originalPrice']").attr('content',[[${goodsInfo.listPrice}]]);
|
|
|
+ $("meta[property='eg:salePrice']").attr('content',[[${goodsInfo.currPrice}]]);
|
|
|
+ $("meta[property='eg:category1']").attr('content',cate1Nm);
|
|
|
+ $("meta[property='eg:category2']").attr('content',cate2Nm);
|
|
|
+ $("meta[property='eg:category3']").attr('content',cate3Nm);
|
|
|
+ $("meta[property='eg:category4']").attr('content',cate4Nm);
|
|
|
+ $("meta[property='eg:category5']").attr('content',cate5Nm);
|
|
|
+ $("meta[property='eg:brandId']").attr('content',[[${goodsInfo.brandGroupNo}]]);
|
|
|
+ $("meta[property='eg:brandName']").attr('content',[[${goodsInfo.brandGroupNm}]]);
|
|
|
+ $("meta[property='eg:regDate']").attr('content',[[${goodsInfo.regDt}]].toDate("YYYYMMDDHHmmss").format("YYYY-MM-DDTHH:mm:ssZ"));
|
|
|
+ $("meta[property='eg:updateDate']").attr('content',[[${goodsInfo.updDt}]].toDate("YYYYMMDDHHmmss").format("YYYY-MM-DDTHH:mm:ssZ"));
|
|
|
+ $("meta[property='eg:stock']").attr('content',"");
|
|
|
+ $("meta[property='eg:state']").attr('content',[[${goodsInfo.goodsStatNm}]]);
|
|
|
+ $("meta[property='eg:description']").attr('content',null);
|
|
|
+ $("meta[property='eg:extraImage']").attr('content',null);
|
|
|
+ $("meta[property='eg:locale']").attr('content',"KR");
|
|
|
+ $("meta[property='eg:isNew']").attr('content',([[${goodsInfo.formalGb}]] == 'G009_10')? 'True' :'False');
|
|
|
+ $("meta[property='eg:etc1']").attr('content', [[${goodsInfo.selfGoodsYn}]]);
|
|
|
+ });
|
|
|
+
|
|
|
+/*]]>*/
|
|
|
+</script>
|
|
|
+<!-- 광고 스크립트 -->
|
|
|
+<!-- <th:block th:replace="~{web/common/advertisements/GoodsDetailScriptsWeb :: scripts}"></th:block> -->
|
|
|
+<!-- //광고 스크립트 -->
|
|
|
+
|
|
|
+</th:block>
|
|
|
+
|
|
|
+</body>
|
|
|
+</html>
|