|
|
@@ -117,7 +117,7 @@
|
|
|
<del class="org_price" th:if="${goodsInfo.listPrice > goodsInfo.currPrice}" >
|
|
|
<em th:text="${#numbers.formatInteger(goodsInfo.listPrice, 0,'COMMA')}">149,000</em>원
|
|
|
</del>
|
|
|
- <span class="save_point">
|
|
|
+ <span class="save_point" th:if="${goodsInfo.pntAmt > 0}">
|
|
|
스타일포인트 <th:block th:text="${#numbers.formatInteger(goodsInfo.pntAmt, 0,'COMMA')}"></th:block>P 적립예정
|
|
|
</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>
|
|
|
@@ -161,7 +161,8 @@
|
|
|
</dl>
|
|
|
</div>
|
|
|
<div class="option_box">
|
|
|
- <th:block th:if="${goodsInfo.selfGoodsYn =='Y' }">
|
|
|
+ <th:block th:if="${goodsInfo.selfGoodsYn =='Y' }"> <!-- 자사상품 -->
|
|
|
+ <th:block th:if="${goodsInfo.goodsType =='G056_N' }"> <!-- 일반상품 -->
|
|
|
<div class="opt_color" th:if="${goodsOption1List != null and !goodsOption1List.empty}" >
|
|
|
<div class="opt_header">
|
|
|
<span class="title">컬러</span>
|
|
|
@@ -188,12 +189,50 @@
|
|
|
<div th:each="goodsOption2, status : ${goodsOption2List}">
|
|
|
<input type="radio" name="opt" th:id="${goodsOption2.optCd}" th:disabled="${goodsOption2.soldoutYn == 'Y' or goodsOption2.stockQty <= 0}"
|
|
|
th:attr="addPrice=${goodsOption2.addPrice}, optCd1=${goodsOption2.optCd1}, optCd2=${goodsOption2.optCd2}, optCd=${goodsOption2.optCd}">
|
|
|
- <label th:for="${goodsOption2.optCd}"><span th:text="${goodsOption2.optCd2}" th:onclick="jfViewStock(this, [[${goodsInfo.goodsCd}]],[[${goodsOption2.optCd1}]],[[${goodsOption2.optCd2}]],[[${goodsInfo.minOrdQty}]], [[${goodsInfo.maxOrdQty}]] )">100</span></label>
|
|
|
+ <label th:for="${goodsOption2.optCd}"><span th:text="${goodsOption2.optCd2}" th:onclick="fnViewStock(this, [[${goodsInfo.goodsCd}]],[[${goodsOption2.optCd1}]],[[${goodsOption2.optCd2}]],[[${goodsInfo.minOrdQty}]], [[${goodsInfo.maxOrdQty}]] )">100</span></label>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
</th:block>
|
|
|
- <th:block th:if="${goodsInfo.selfGoodsYn =='N' }">
|
|
|
+ <th:block th:if="${goodsInfo.goodsType =='G056_S' }"> <!-- 세트상품 -->
|
|
|
+ <div class="opt_select" th:if="${goodsComposeList != null and !goodsComposeList.empty}" >
|
|
|
+ <th:block th:each="goodsCompose, status : ${goodsComposeList}">
|
|
|
+ <div class="opt_header">
|
|
|
+ <span class="title" th:text="${goodsCompose.compsGoodsFullNm}">옵션</span>
|
|
|
+ <button type="button" id="btn_infoSize_pop" class="btn_popup" th:onclick="cfGoodsSizeInfo([[${goodsCompose.compsGoodsCd}]],[[${goodsCompose.colorCd}]] )"><span>사이즈정보</span></button>
|
|
|
+ </div>
|
|
|
+ <div class="form_field">
|
|
|
+ <div class="select_custom item_opt1" th:classappend="${goodsCompose.compsGoodsCd}" th:if="${goodsCompose.goodsOption1List != null and !goodsCompose.goodsOption1List.empty}" >
|
|
|
+ <div class="combo">
|
|
|
+ <div class="select">선택</div>
|
|
|
+ <ul class="list">
|
|
|
+ <th:block th:each="goodsOption, status : ${goodsCompose.goodsOption1List}" >
|
|
|
+ <li class="selected" th:id="|selfGoodsOpt1${goodsOption.goodsCd}|" th:if=${status.first}>선택</li>
|
|
|
+ <li th:onclick="fnOption2(this, [[${goodsOption.goodsCd}]],[[${goodsOption.optCd1}]])">
|
|
|
+ <div th:text="${goodsOption.optCd1}">상품옵션</div>
|
|
|
+ <div th:if="${goodsOption.addPrice > 0}" th:text="|${#numbers.formatInteger(goodsOption.addPrice, 0,'COMMA')}원|">0원</div>
|
|
|
+ <input type="hidden" name="opt" th:id="${goodsOption.optCd}" th:attr="addPrice=${goodsOption.addPrice}, optCd1=${goodsOption.optCd1},optCd2=${goodsOption.optCd2}, optCd=${goodsOption.optCd}"/>
|
|
|
+ </li>
|
|
|
+ </th:block>
|
|
|
+ </ul>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="form_field">
|
|
|
+ <div class="select_custom item_opt2" disabled>
|
|
|
+ <div class="combo">
|
|
|
+ <div class="select">선택</div>
|
|
|
+ <ul class="list">
|
|
|
+ <li class="selected">선택</li>
|
|
|
+ </ul>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </th:block>
|
|
|
+ </div>
|
|
|
+ </th:block>
|
|
|
+ </th:block>
|
|
|
+ <th:block th:if="${goodsInfo.selfGoodsYn =='N' }"> <!-- 입점상품 -->
|
|
|
<div class="opt_select" th:if="${goodsOptionList != null and !goodsOptionList.empty}">
|
|
|
<div class="opt_header">
|
|
|
<span class="title">옵션</span>
|
|
|
@@ -206,7 +245,7 @@
|
|
|
<ul class="list">
|
|
|
<li class="selected" id="selfNoGoodsOpt">선택</li>
|
|
|
<th:block th:each="goodsOption, status : ${goodsOptionList}" >
|
|
|
- <li th:attr="aria-disabled=${(goodsOption.soldoutYn == 'Y' or goodsOption.stockQty <= 0)? 'true':''}, data-soldout=${(goodsOption.soldoutYn == 'Y' or goodsOption.stockQty <= 0)? 'true':''}" th:onclick="jfViewStock(this, [[${goodsInfo.goodsCd}]],[[${goodsOption.optCd1}]],[[${goodsOption.optCd}]],[[${goodsInfo.minOrdQty}]], [[${goodsInfo.maxOrdQty}]] )">
|
|
|
+ <li th:attr="aria-disabled=${(goodsOption.soldoutYn == 'Y' or goodsOption.stockQty <= 0)? 'true':''}, data-soldout=${(goodsOption.soldoutYn == 'Y' or goodsOption.stockQty <= 0)? 'true':''}" th:onclick="fnViewStock(this, [[${goodsInfo.goodsCd}]],[[${goodsOption.optCd1}]],[[${goodsOption.optCd}]],[[${goodsInfo.minOrdQty}]], [[${goodsInfo.maxOrdQty}]] )">
|
|
|
<div th:text="${goodsOption.optNm}">상품옵션</div>
|
|
|
<div th:if="${goodsOption.addPrice > 0}" th:text="|${#numbers.formatInteger(goodsOption.addPrice, 0,'COMMA')}원|">0원</div>
|
|
|
<input type="hidden" name="opt" th:id="${goodsOption.optCd}" th:attr="addPrice=${goodsOption.addPrice}, optCd1=${goodsOption.optCd1},optCd2=${goodsOption.optCd2}, optCd=${goodsOption.optCd}"/>
|
|
|
@@ -228,10 +267,10 @@
|
|
|
<span class="title">수량</span>
|
|
|
</div>
|
|
|
<div class="number_count">
|
|
|
- <span class="minus" onclick="jfAdjustOrderEa(this);" adjust="-"><em class="sr-only">감소</em></a></span>
|
|
|
- <input type="text" name="cea" maxlength="3" style="ime-mode:disabled" th:value="${goodsInfo.minOrdQty}" onblur="jfChangeOrderEa(this)" data-valid-type="numeric">
|
|
|
+ <span class="minus" onclick="fnAdjustOrderEa(this);" adjust="-"><em class="sr-only">감소</em></a></span>
|
|
|
+ <input type="text" name="cea" maxlength="3" style="ime-mode:disabled" th:value="${goodsInfo.minOrdQty}" onblur="fnChangeOrderEa(this)" data-valid-type="numeric">
|
|
|
<input type="hidden" name="coption" value="" th:attr="price=${goodsInfo.currPrice}">
|
|
|
- <span class="plus" onclick="jfAdjustOrderEa(this);" adjust="+"><em class="sr-only">추가</em></span>
|
|
|
+ <span class="plus" onclick="fnAdjustOrderEa(this);" adjust="+"><em class="sr-only">추가</em></span>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
@@ -459,8 +498,8 @@
|
|
|
</div>
|
|
|
<!-- //브랜드 노출 -->
|
|
|
<!-- 상품필수정보 노출 -->
|
|
|
- <div class="required_box" th:if="${goodsNotiList != null and !goodsNotiList.empty}">
|
|
|
- <div class="area_infotbl">
|
|
|
+ <div class="required_box" >
|
|
|
+ <div class="area_infotbl" th:if="${goodsInfo.goodsType == 'G056_N' and goodsNotiList != null and !goodsNotiList.empty}">
|
|
|
<span class="title">상품고시정보</span>
|
|
|
<div class="tbl type1 mt30">
|
|
|
<table>
|
|
|
@@ -473,6 +512,21 @@
|
|
|
</table>
|
|
|
</div>
|
|
|
</div>
|
|
|
+ <div class="area_infotbl" th:if="${goodsInfo.goodsType == 'G056_S' and goodsComposeList != null and !goodsComposeList.empty}">
|
|
|
+ <span class="title">상품고시정보</span>
|
|
|
+ <th:block th:each="goodsCompose, status : ${goodsComposeList}">
|
|
|
+ <div class="tbl type1 mt30">
|
|
|
+ <table>
|
|
|
+ <tbody>
|
|
|
+ <tr th:each="goodsNoti, status : ${goodsCompose.goodsNotiList}" >
|
|
|
+ <th th:text="${goodsNoti.niItemNm}">스타일</th>
|
|
|
+ <td th:text="${goodsNoti.niContent}">F94U-MD01XA60F0</td>
|
|
|
+ </tr>
|
|
|
+ </tbody>
|
|
|
+ </table>
|
|
|
+ </div>
|
|
|
+ </th:block>
|
|
|
+ </div>
|
|
|
<div class="area_kcl" th:if="${goodsSafeNo != null}">
|
|
|
<i class="ico ico_kcl"></i>
|
|
|
<p class="tit normal" th:text="${goodsSafeNo.certDiv}">
|
|
|
@@ -602,7 +656,7 @@
|
|
|
</li>
|
|
|
</ul>
|
|
|
</div>
|
|
|
- <button type="button" class="btn btn_block btn_md" onclick="jfAddCartLookBookGoods(this);"><span>모두 쇼핑백 담기</span></button>
|
|
|
+ <button type="button" class="btn btn_block btn_md" onclick="fnAddCartLookBookGoods(this);"><span>모두 쇼핑백 담기</span></button>
|
|
|
</div>
|
|
|
</div>
|
|
|
</div>
|
|
|
@@ -628,6 +682,19 @@
|
|
|
</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>
|
|
|
|
|
|
<!-- EP 제휴쿠폰 팝업 -->
|
|
|
@@ -681,27 +748,27 @@
|
|
|
|
|
|
var cateNm = "";
|
|
|
// 다다익선 상품
|
|
|
- var jfGoodsTmtbSearch = function(params) {
|
|
|
+ var fnGoodsTmtbSearch = function(params) {
|
|
|
gagajf.ajaxSubmit("/goods/detail/tmtb/frame", "html", "goodsTmtbArea", params);
|
|
|
}
|
|
|
|
|
|
// 함께본 상품
|
|
|
- var jfGoodsTogetherSearch = function(params) {
|
|
|
+ var fnGoodsTogetherSearch = function(params) {
|
|
|
gagajf.ajaxSubmit("/goods/detail/together/frame", "html", "goodsTogetherbArea", params);
|
|
|
}
|
|
|
|
|
|
// 추천 상품
|
|
|
- var jfGoodsRecommendSearch = function(params) {
|
|
|
+ var fnGoodsRecommendSearch = function(params) {
|
|
|
gagajf.ajaxSubmit("/goods/detail/recommend/frame", "html", "goodsRecommendbArea", params);
|
|
|
}
|
|
|
|
|
|
// 비슷한 상품
|
|
|
- var jfGoodsLikeSearch = function(params) {
|
|
|
+ var fnGoodsLikeSearch = function(params) {
|
|
|
gagajf.ajaxSubmit("/goods/detail/like/frame", "html", "goodsLikebArea", params);
|
|
|
}
|
|
|
|
|
|
//사이즈 클릭시
|
|
|
- var jfViewStock = function(obj, goodsCd, optCd1, optCd2, minOrdQty, maxOrdQty) {
|
|
|
+ var fnViewStock = function(obj, goodsCd, optCd1, optCd2, minOrdQty, maxOrdQty) {
|
|
|
let $obj = $(obj);
|
|
|
let selfGoodsYn = $("#cartForm input[name=selfGoodsYn]").val();
|
|
|
let $target = null;
|
|
|
@@ -749,14 +816,14 @@
|
|
|
$("#cartForm input[name=cea]").attr("readonly",false);
|
|
|
$("#cartForm input[name=stock]").val(itemCnt);
|
|
|
|
|
|
- jfSetTotalPrice();
|
|
|
+ fnSetTotalPrice();
|
|
|
}
|
|
|
|
|
|
}, "text");
|
|
|
}
|
|
|
|
|
|
// 수량 변경 클릭
|
|
|
- var jfAdjustOrderEa = function(obj) {
|
|
|
+ var fnAdjustOrderEa = function(obj) {
|
|
|
|
|
|
if("G056_N" == $("#cartForm input[name=goodsType]").val()){
|
|
|
if(gagajf.isNull($("#cartForm input[name=optCd2]").val())){
|
|
|
@@ -789,11 +856,11 @@
|
|
|
|
|
|
$target.val(ea);
|
|
|
|
|
|
- jfChangeOrderEa();
|
|
|
+ fnChangeOrderEa();
|
|
|
}
|
|
|
|
|
|
//옵션 갯수 변경
|
|
|
- var jfChangeOrderEa = function() {
|
|
|
+ var fnChangeOrderEa = function() {
|
|
|
|
|
|
if("G056_N" == $("#cartForm input[name=goodsType]").val()){
|
|
|
if(gagajf.isNull($("#cartForm input[name=optCd2]").val())){
|
|
|
@@ -833,11 +900,11 @@
|
|
|
//return;
|
|
|
}
|
|
|
|
|
|
- jfSetTotalPrice();
|
|
|
+ fnSetTotalPrice();
|
|
|
}
|
|
|
|
|
|
//합계 계산
|
|
|
- var jfSetTotalPrice = function() {
|
|
|
+ var fnSetTotalPrice = function() {
|
|
|
//let f = document.cartForm;
|
|
|
|
|
|
let totalEa = 0;
|
|
|
@@ -935,7 +1002,7 @@
|
|
|
}
|
|
|
|
|
|
// 룩북속 상품 쇼핑백 담기
|
|
|
- var jfAddCartLookBookGoods = function(obj){
|
|
|
+ var fnAddCartLookBookGoods = function(obj){
|
|
|
|
|
|
let $obj = $(obj);
|
|
|
let $target = $obj.parent().find('.li_item').find('.item_prod');
|
|
|
@@ -981,7 +1048,7 @@
|
|
|
}
|
|
|
|
|
|
let goodsType = [[${goodsInfo.goodsType}]];
|
|
|
- if (soldout && goodsType == 'G056_N') {
|
|
|
+ if (soldout && goodsType == 'G056_N'&& $("#cartForm input[name=goodsGoodsYn]").val() == 'Y') {
|
|
|
$(".info_restock").show();
|
|
|
}
|
|
|
}
|
|
|
@@ -1005,25 +1072,25 @@
|
|
|
params.goodsOtherGb = "tmtb";
|
|
|
params.ithrCd = "tmtb";
|
|
|
params.contentsLoc = "tmtb";
|
|
|
-// jfGoodsTmtbSearch(params);
|
|
|
+// fnGoodsTmtbSearch(params);
|
|
|
|
|
|
// 함께본 상품(ajax html)
|
|
|
params.goodsOtherGb = "together";
|
|
|
params.ithrCd = "tmtb";
|
|
|
params.contentsLoc = "tmtb";
|
|
|
- // jfGoodsTogetherSearch(params);
|
|
|
+ // fnGoodsTogetherSearch(params);
|
|
|
|
|
|
// 추천 상품(ajax html)
|
|
|
params.goodsOtherGb = "recommend";
|
|
|
params.ithrCd = "tmtb";
|
|
|
params.contentsLoc = "tmtb";
|
|
|
- // jfGoodsRecommendSearch(params);
|
|
|
+ // fnGoodsRecommendSearch(params);
|
|
|
|
|
|
// 비슷한 상품(ajax html)
|
|
|
params.goodsOtherGb = "like";
|
|
|
params.ithrCd = "tmtb";
|
|
|
params.contentsLoc = "tmtb";
|
|
|
- // jfGoodsLikeSearch(params);
|
|
|
+ // fnGoodsLikeSearch(params);
|
|
|
|
|
|
|
|
|
// 상품 대표설명 > 좌측 상품썸네일 navi, 우측 상품정보 고정
|
|
|
@@ -1107,10 +1174,10 @@
|
|
|
/* 1차 옵션선택 후 2차 옵션 활성화 */
|
|
|
var opt_selecter01 = new sCombo('.opt_select .select_custom.item_opt1');
|
|
|
var opt_selecter02 = new sCombo('.opt_select .select_custom.item_opt2');
|
|
|
- $('.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;
|
|
|
- });
|
|
|
+ //$('.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;
|
|
|
+ //});
|
|
|
|
|
|
if (!gagajf.isNull([[${goodsInfo.socialSq}]])){
|
|
|
$('.timer_box').css('display', 'block');
|