|
@@ -31,32 +31,68 @@
|
|
|
<div class="cont_body">
|
|
<div class="cont_body">
|
|
|
<!-- CONT-BODY -->
|
|
<!-- CONT-BODY -->
|
|
|
<div class="item_detail">
|
|
<div class="item_detail">
|
|
|
- <div class="area_pic">
|
|
|
|
|
- <div class="thumb_nav_wrap" th:if="${goodsImgList != null and !goodsImgList.empty}" >
|
|
|
|
|
|
|
+ <div class="area_pic" th:if="${(goodsImgList != null and !goodsImgList.empty) or (goodsVideoList != null and !goodsVideoList.empty)}"
|
|
|
|
|
+ th:with="videoYn=${(goodsVideoList != null and !goodsVideoList.empty)? 'Y' :'N'}">
|
|
|
|
|
+ <div class="thumb_nav_wrap" >
|
|
|
<div class="thumbnav">
|
|
<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+'?RS=48'}" alt="" th:onerror="'this.src=\''+@{${uxImgUrl}+ '/images/pc/thumb/bg_item_none.png'}+'\';'"></span></a></div>
|
|
|
|
|
- </th:block>
|
|
|
|
|
|
|
+ <div class="swiper-container" >
|
|
|
|
|
+ <div class="swiper-wrapper">
|
|
|
|
|
+ <th:block th:each="goodsVideo, status : ${goodsVideoList}">
|
|
|
|
|
+ <div class="swiper-slide" th:classappend="${status.first}? 'on' : ''" >
|
|
|
|
|
+ <a th:href="${'#navLocate'+ status.count}">
|
|
|
|
|
+ <span class="thumb mov">
|
|
|
|
|
+ <th:block th:if="${goodsVideo.videoGb == 'Y'}">
|
|
|
|
|
+ <img th:src="${'https://img.youtube.com/vi/'+goodsVideo.kmcKey+'/default.jpg'}" alt="" th:onerror="'this.src=\''+@{${uxImgUrl}+ '/images/pc/thumb/bg_item_none.png'}+'\';'">
|
|
|
|
|
+ </th:block>
|
|
|
|
|
+ <th:block th:unless="${goodsVideo.videoGb == 'Y'}">
|
|
|
|
|
+ </th:block>
|
|
|
|
|
+ </span>
|
|
|
|
|
+ </a>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
+ </th:block>
|
|
|
|
|
+ <th:block th:each="goodsImg, status : ${goodsImgList}">
|
|
|
|
|
+ <div class="swiper-slide" th:classappend="${status.first and videoYn == 'N'}? 'on' : ''" th:with="count=${(videoYn == 'Y')? (status.count +1): status.count }"
|
|
|
|
|
+ th:if="${ not (#strings.contains(goodsImg.sysImgNm,'_S1.')
|
|
|
|
|
+ or #strings.contains(goodsImg.sysImgNm,'_L1.')
|
|
|
|
|
+ or #strings.contains(goodsImg.sysImgNm,'_L2.'))}">
|
|
|
|
|
+ <a th:href="${'#navLocate'+ count}">
|
|
|
|
|
+ <span class="thumb">
|
|
|
|
|
+ <img th:src="${imgGoodsUrl+'/'+goodsImg.sysImgNm+'?RS=48'}" 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="swiper-button-next"></div>
|
|
|
|
|
+ <div class="swiper-button-prev"></div>
|
|
|
|
|
+ </div>
|
|
|
</div>
|
|
</div>
|
|
|
- <div class="thumb_list_wrap" th:if="${goodsImgList != null and !goodsImgList.empty}" >
|
|
|
|
|
|
|
+ <div class="thumb_list_wrap">
|
|
|
<ul>
|
|
<ul>
|
|
|
- <th:block th:each="goodsImg, status : ${goodsImgList}">
|
|
|
|
|
- <li th:id="${'navLocate'+ status.count}" th:classappend="${status.first}? 'on' : ''"
|
|
|
|
|
|
|
+ <th:block th:each="goodsVideo, status : ${goodsVideoList}">
|
|
|
|
|
+ <li th:id="${'navLocate'+ status.count}" th:classappend="${status.first}? 'on' : ''">
|
|
|
|
|
+ <div class="movbox">
|
|
|
|
|
+ <th:block th:if="${goodsVideo.videoGb == 'Y'}">
|
|
|
|
|
+ <iframe width="100%" height="100%" th:src="${'https://www.youtube.com/embed/'+goodsVideo.kmcKey+'?rel=0&autoplay=1&mute=1'}" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
|
|
|
|
+ </th:block>
|
|
|
|
|
+ <th:block th:unless="${goodsVideo.videoGb == 'Y'}">
|
|
|
|
|
+ </th:block>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </li>
|
|
|
|
|
+ </th:block>
|
|
|
|
|
+ <th:block th:each="goodsImg, status : ${goodsImgList}" >
|
|
|
|
|
+ <th:block th:with="count=${(videoYn == 'Y')? (status.count +1): status.count }">
|
|
|
|
|
+ <li th:id="${'navLocate'+ count}" th:classappend="${status.first and videoYn == 'N'}? 'on' : ''"
|
|
|
th:if="${ not (#strings.contains(goodsImg.sysImgNm,'_S1.')
|
|
th:if="${ not (#strings.contains(goodsImg.sysImgNm,'_S1.')
|
|
|
or #strings.contains(goodsImg.sysImgNm,'_L1.')
|
|
or #strings.contains(goodsImg.sysImgNm,'_L1.')
|
|
|
or #strings.contains(goodsImg.sysImgNm,'_L2.'))}">
|
|
or #strings.contains(goodsImg.sysImgNm,'_L2.'))}">
|
|
|
- <a href="javascript:void(0);"><span class="thumb"><img th:src="${imgGoodsUrl+'/'+goodsImg.sysImgNm+'?RS=1080'}" alt="" th:onerror="'this.src=\''+@{${uxImgUrl}+ '/images/pc/thumb/bg_item_none.png'}+'\';'"></span></a></li>
|
|
|
|
|
|
|
+ <a href="javascript:void(0);">
|
|
|
|
|
+ <span class="thumb">
|
|
|
|
|
+ <img th:src="${imgGoodsUrl+'/'+goodsImg.sysImgNm+'?RS=1080'}" alt="" th:onerror="'this.src=\''+@{${uxImgUrl}+ '/images/pc/thumb/bg_item_none.png'}+'\';'">
|
|
|
|
|
+ </span>
|
|
|
|
|
+ </a>
|
|
|
|
|
+ </li>
|
|
|
|
|
+ </th:block>
|
|
|
</th:block>
|
|
</th:block>
|
|
|
</ul>
|
|
</ul>
|
|
|
</div>
|
|
</div>
|
|
@@ -430,13 +466,24 @@
|
|
|
</div>
|
|
</div>
|
|
|
<!-- //상품설명 노출 -->
|
|
<!-- //상품설명 노출 -->
|
|
|
<!-- 관리자 에디터입력 내용 공지 html -->
|
|
<!-- 관리자 에디터입력 내용 공지 html -->
|
|
|
|
|
+ <div class="mdhtml_box">
|
|
|
<th:block th:if="${goodsNoticeList != null and !goodsNoticeList.empty}" >
|
|
<th:block th:if="${goodsNoticeList != null and !goodsNoticeList.empty}" >
|
|
|
- <div class="mdhtml_box" th:each="goodsNotice, status : ${goodsNoticeList}" th:utext="${#strings.unescapeJava(#strings.escapeJava(goodsNotice.noticeContent))}"></div>
|
|
|
|
|
|
|
+ <th:block th:each="goodsNotice, status : ${goodsNoticeList}" th:utext="${#strings.unescapeJava(#strings.escapeJava(goodsNotice.noticeContent))}"></th:block >
|
|
|
</th:block>
|
|
</th:block>
|
|
|
<!-- 관리자 에디터입력 내용 공지 html -->
|
|
<!-- 관리자 에디터입력 내용 공지 html -->
|
|
|
|
|
+ <th:block th:each="goodsVideo, status : ${goodsVideoList}">
|
|
|
|
|
+ <div class="movblock">
|
|
|
|
|
+ <th:block th:if="${goodsVideo.videoGb == 'Y'}">
|
|
|
|
|
+ <iframe th:src="${'https://www.youtube.com/embed/'+goodsVideo.kmcKey+'?rel=0'}" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
|
|
|
|
|
+ </th:block>
|
|
|
|
|
+ <th:block th:unless="${goodsVideo.videoGb == 'Y'}">
|
|
|
|
|
+ </th:block>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </th:block>
|
|
|
|
|
+
|
|
|
<!-- 관리자 에디터입력 내용 노출 상단 html -->
|
|
<!-- 관리자 에디터입력 내용 노출 상단 html -->
|
|
|
- <div class="mdhtml_box" th:if="${goodsInfo.goodsTopDesc != null and !goodsInfo.goodsTopDesc.empty}" th:utext="${#strings.unescapeJava(#strings.escapeJava(goodsInfo.goodsTopDesc))}"></div>
|
|
|
|
|
-
|
|
|
|
|
|
|
+ <th:block th:if="${goodsInfo.goodsTopDesc != null and !goodsInfo.goodsTopDesc.empty}" th:utext="${#strings.unescapeJava(#strings.escapeJava(goodsInfo.goodsTopDesc))}"></th:block >
|
|
|
|
|
+ </div>
|
|
|
<!-- 착용컷 노출 -->
|
|
<!-- 착용컷 노출 -->
|
|
|
<div class="view_outfit_box" th:if="${#strings.contains(goodsImgList,'_M1.')
|
|
<div class="view_outfit_box" th:if="${#strings.contains(goodsImgList,'_M1.')
|
|
|
or #strings.contains(goodsImgList,'_M2.')
|
|
or #strings.contains(goodsImgList,'_M2.')
|