|
|
@@ -329,8 +329,7 @@
|
|
|
</th:block>
|
|
|
</div>
|
|
|
<div class="pic" th:unless="${bestReview.reviewAttachList != null and !bestReview.reviewAttachList.empty}">
|
|
|
- <span class="thumb">
|
|
|
- <img th:src="${imgGoodsUrl+'/'+goodsInfo.sysImgNm}" alt="">
|
|
|
+ <span class="thumb" th:style="${'background-image:url('+imgGoodsUrl+ '/'+goodsInfo.sysImgNm+');'}">
|
|
|
</span>
|
|
|
</div>
|
|
|
<div class="star_score" th:with="starScore=${#numbers.formatDecimal((bestReview.score*100/5), 0,0)}">
|
|
|
@@ -357,7 +356,7 @@
|
|
|
<th:block th:if="${photoReview.reviewAttachList != null and !photoReview.reviewAttachList.empty}">
|
|
|
<th:block th:each="reviewAttach, attachStatus : ${photoReview.reviewAttachList}" th:if="${attachStatus.first}">
|
|
|
|
|
|
- <a href="javascript:void(0);" th:onclick="cfGoodsReviewPhotoDetail([[${goodsInfo.goodsCd}]])">
|
|
|
+ <a href="javascript:void(0);" th:onclick="cfGoodsReviewDetail([[${goodsInfo.goodsCd}]], '', [[${photoReview.reviewSq}]])">
|
|
|
<div class="pic">
|
|
|
<span class="thumb" th:classAppend="${(reviewAttach.fileGb == 'M') ? 'mov' :''}" th:style="${'background-image:url('+imgUrl+ reviewAttach.sysFileNm+');'}"></span><!-- 동영상의 썸네일일 경우 mov 클래스 추가 -->
|
|
|
</div>
|
|
|
@@ -377,84 +376,76 @@
|
|
|
<div class="area_rv_all">
|
|
|
<form id="goodsReviewForm" name="goodsReviewForm" action="#" th:action="@{'/goods/review/list'}">
|
|
|
<input type="hidden" name="pageNo" value ="1"/>
|
|
|
- <input type="hidden" name="pageSize" value ="20"/>
|
|
|
+ <input type="hidden" name="pageSize" value ="1"/>
|
|
|
<input type="hidden" name="goodsCd" th:value ="${goodsInfo.goodsCd}"/>
|
|
|
<input type="hidden" name="goodsType" th:value ="${goodsInfo.goodsType}"/>
|
|
|
- <h6>전체리뷰<span>(9,999+)</span></h6>
|
|
|
+ <h6>전체리뷰<span>(<span id="reviewCount" th:text="${(reviewCount <= 9999) ? #numbers.formatInteger(reviewCount, 0,'COMMA') : '9,999+'}">9,999+</span>)</span></h6>
|
|
|
<div class="selection">
|
|
|
- <form class="form_wrap">
|
|
|
- <div class="form_field">
|
|
|
- <div class="select_custom sort_opt1">
|
|
|
- <div class="combo">
|
|
|
- <div class="select">평점 전체</div>
|
|
|
- <ul class="list">
|
|
|
- <!-- 선택처리 class="selected" -->
|
|
|
- <li class="selected">평점 전체</li>
|
|
|
- <li>5점 ★★★★★</li>
|
|
|
- <li>4점 ★★★★</li>
|
|
|
- <li>3점 ★★★</li>
|
|
|
- <li>2점 ★★</li>
|
|
|
- <li>1점 ★</li>
|
|
|
- </ul>
|
|
|
- </div>
|
|
|
+ <div class="form_field">
|
|
|
+ <div class="select_custom sort_opt1">
|
|
|
+ <div class="combo">
|
|
|
+ <div class="select">평점 전체</div>
|
|
|
+ <ul class="list" onclick="jfReviewSearch();" >
|
|
|
+ <!-- 선택처리 class="selected" -->
|
|
|
+ <li class="selected" >평점 전체<input type="hidden" name="reviewScore" value=""/></li>
|
|
|
+ <li>5점 ★★★★★<input type="hidden" name="reviewScore" value="5"/></li>
|
|
|
+ <li>4점 ★★★★<input type="hidden" name="reviewScore" value="4" scoreId="4"/></li>
|
|
|
+ <li>3점 ★★★<input type="hidden" name="reviewScore" value="3"/></li>
|
|
|
+ <li>2점 ★★<input type="hidden" name="reviewScore" value="2"/></li>
|
|
|
+ <li>1점 ★<input type="hidden" name="reviewScore" value="1"/></li>
|
|
|
+ </ul>
|
|
|
</div>
|
|
|
- <div class="select_custom sort_opt2">
|
|
|
- <div class="combo">
|
|
|
- <div class="select" th:text="${(goodsInfo.selfGoodsYn == 'Y')? '사이즈 전체' :'옵션 전체'}">사이즈 전체</div>
|
|
|
- <ul class="list">
|
|
|
- <!-- 선택처리 class="selected" -->
|
|
|
- <li class="selected" th:text="${(goodsInfo.selfGoodsYn == 'Y')? '사이즈 전체' :'옵션 전체'}">사이즈 전체</li>
|
|
|
- <li>90</li>
|
|
|
- <li>95</li>
|
|
|
- <li>100</li>
|
|
|
- <li>105</li>
|
|
|
- <li>110</li>
|
|
|
- </ul>
|
|
|
- </div>
|
|
|
+ </div>
|
|
|
+ <div class="select_custom sort_opt2" th:if="${reviewOptionList != null and !reviewOptionList.empty}">
|
|
|
+ <div class="combo">
|
|
|
+ <th:block th:if="${(goodsInfo.selfGoodsYn == 'Y')}">
|
|
|
+ <div class="select">사이즈 전체<input type="hidden" name="reviewOption" value=""/></div>
|
|
|
+ </th:block>
|
|
|
+ <th:block th:unless="${(goodsInfo.selfGoodsYn == 'Y')}">
|
|
|
+ <div class="select">옵션 전체<input type="hidden" name="reviewOption" value=""/></div>
|
|
|
+ </th:block>
|
|
|
+ <ul class="list">
|
|
|
+ <!-- 선택처리 class="selected" -->
|
|
|
+ <li class="selected" th:text="${(goodsInfo.selfGoodsYn == 'Y')? '사이즈 전체' :'옵션 전체'}">사이즈 전체</li>
|
|
|
+ <li th:each="reviewOption, status : ${reviewOptionList}" >
|
|
|
+ <th:block th:text="${reviewOption.optCd2}"></th:block>
|
|
|
+ <input type="hidden" name="reviewOption" th:value="${reviewOption.optCd2}"/>
|
|
|
+ </li>
|
|
|
+ </ul>
|
|
|
</div>
|
|
|
- <div class="select_custom sort_opt3">
|
|
|
- <div class="combo">
|
|
|
- <div class="select">키 전체</div>
|
|
|
- <ul class="list">
|
|
|
- <!-- 선택처리 class="selected" -->
|
|
|
- <li class="selected">키 전체</li>
|
|
|
- <li>150cm 이하</li>
|
|
|
- <li>150~155cm</li>
|
|
|
- <li>155~160cm</li>
|
|
|
- <li>160~165cm</li>
|
|
|
- <li>165~170cm</li>
|
|
|
- <li>175~180cm</li>
|
|
|
- <li>185~190cm</li>
|
|
|
- <li>190~200cm</li>
|
|
|
- </ul>
|
|
|
- </div>
|
|
|
+ </div>
|
|
|
+ <div class="select_custom sort_opt3" th:if="${reviewHeightList != null and !reviewHeightList.empty}">
|
|
|
+ <div class="combo">
|
|
|
+ <div class="select">키 전체<input type="hidden" name="reviewHeight" value=""/></div>
|
|
|
+ <ul class="list">
|
|
|
+ <!-- 선택처리 class="selected" -->
|
|
|
+ <li class="selected">키 전체<input type="hidden" name="reviewHeight" value=""/></li>
|
|
|
+ <li th:each="reviewHeight, status : ${reviewHeightList}" >
|
|
|
+ <th:block th:text="${reviewHeight.cdNm}"></th:block>
|
|
|
+ <input type="hidden" name="reviewHeight" th:value="${reviewHeight.cd}"/>
|
|
|
+ </li>
|
|
|
+ </ul>
|
|
|
</div>
|
|
|
- <div class="select_custom sort_opt4">
|
|
|
- <div class="combo">
|
|
|
- <div class="select">몸무게 전체</div>
|
|
|
- <ul class="list">
|
|
|
- <!-- 선택처리 class="selected" -->
|
|
|
- <li class="selected">몸무게 전체</li>
|
|
|
- <li>40kg 이하</li>
|
|
|
- <li>40~45kg</li>
|
|
|
- <li>45~50kg</li>
|
|
|
- <li>50~55kg</li>
|
|
|
- <li>55~60kg</li>
|
|
|
- <li>60~65kg</li>
|
|
|
- <li>65~70kg</li>
|
|
|
- <li>75~80kg</li>
|
|
|
- <li>85~85kg</li>
|
|
|
- <li>90~95kg</li>
|
|
|
- </ul>
|
|
|
- </div>
|
|
|
+ </div>
|
|
|
+ <div class="select_custom sort_opt4" th:if="${reviewWeightList != null and !reviewWeightList.empty}">
|
|
|
+ <div class="combo">
|
|
|
+ <div class="select">몸무게 전체<input type="hidden" name="reviewWeight" value=""/></div>
|
|
|
+ <ul class="list">
|
|
|
+ <!-- 선택처리 class="selected" -->
|
|
|
+ <li class="selected">몸무게 전체<input type="hidden" name="reviewWeight" value=""/></li>
|
|
|
+ <li th:each="reviewWeight, status : ${reviewWeightList}" >
|
|
|
+ <th:block th:text="${reviewWeight.cdNm}"></th:block>
|
|
|
+ <input type="hidden" name="reviewWeight" th:value="${reviewWeight.cd}"/>
|
|
|
+ </li>
|
|
|
+
|
|
|
+ </ul>
|
|
|
</div>
|
|
|
- </div>
|
|
|
- </form>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
<!-- 나열조건결과 있을 때 노출 내용 -->
|
|
|
<div class="review_list">
|
|
|
<ul id="ulGoodsReviewQna">
|
|
|
-
|
|
|
</ul>
|
|
|
</div>
|
|
|
<div class="ui_row">
|
|
|
@@ -492,7 +483,7 @@
|
|
|
$('#goodsReviewForm input[name="secretYn"]').val('N');
|
|
|
} */
|
|
|
// Initialize a pagination
|
|
|
- gagaPaging.init('goodsReviewForm', fnGetListCallback, 'pageNav', 20);
|
|
|
+ gagaPaging.init('goodsReviewForm', fnGetListCallback, 'pageNav', 1);
|
|
|
|
|
|
// Load data
|
|
|
gagaPaging.load(1);
|
|
|
@@ -510,7 +501,7 @@
|
|
|
tag += ' <div class="info_box">\n';
|
|
|
tag += ' <div class="star_score">\n';
|
|
|
tag += ' <span class="star">\n';
|
|
|
- tag += ' <em class="progbar" style="width:70%;"></em>\n'; //<!-- 평점 style로 표기 -->
|
|
|
+ tag += ' <em class="progbar" style="width:'+(item.score*20)+'%;"></em>\n'; //<!-- 평점 style로 표기 -->
|
|
|
tag += ' </span>\n';
|
|
|
tag += ' </div>\n';
|
|
|
tag += ' <div class="writer">\n';
|
|
|
@@ -523,7 +514,11 @@
|
|
|
tag += ' <dl>\n';
|
|
|
tag += ' <div>\n';
|
|
|
tag += ' <dt>구매옵션</dt>\n';
|
|
|
- tag += ' <dd>'+ item.optCd1 +' / '+ item.optCd2 +'</dd>\n';
|
|
|
+ if (item.goodsOptionList != null && item.goodsOptionList.length > 0){
|
|
|
+ $.each(item.goodsOptionList, function(gIdx, goodsOption){
|
|
|
+ tag += ' <dd>'+ goodsOption.optCd1 +' / '+ goodsOption.optCd2 +'</dd>\n';
|
|
|
+ });
|
|
|
+ }
|
|
|
tag += ' </div>\n';
|
|
|
tag += ' </dl>\n';
|
|
|
tag += ' </div>\n';
|
|
|
@@ -533,7 +528,7 @@
|
|
|
tag += ' <dt>키/몸무게</dt>\n';
|
|
|
tag += ' <dd>'+ item.height +'cm/'+ item.weight +'kg</dd>\n';
|
|
|
tag += ' </div>\n';
|
|
|
- if (!gagajf.isNuil(item.sizeGb) ){ // 사이즈구분값이 있을경우 노출
|
|
|
+ if (!gagajf.isNull(item.sizeGb) ){ // 사이즈구분값이 있을경우 노출
|
|
|
tag += ' <div>\n';
|
|
|
tag += ' <dt>사이즈</dt>\n';
|
|
|
tag += ' <dd>'+ item.scoreSizeNm +'</dd>\n';
|
|
|
@@ -570,19 +565,24 @@
|
|
|
tag += ' <div class="photo_list">\n';
|
|
|
tag += ' <ul>\n';
|
|
|
if (item.reviewAttachList != null && item.reviewAttachList.length > 0){
|
|
|
- tag += ' <li>\n';
|
|
|
- tag += ' <a href="">\n';
|
|
|
- tag += ' <div class="pic">\n';
|
|
|
- tag += ' <span class="thumb mov" style="background-image:url(\'/images/pc/thumb/tmp_pdLookbook3.jpg\');"></span>\n'; //<!-- 동영상의 썸네일일 경우 mov 클래스 추가 -->
|
|
|
- tag += ' </div>\n';
|
|
|
- tag += ' </a>\n';
|
|
|
- tag += ' </li>\n';
|
|
|
+ var fileGbClass = '';
|
|
|
+ $.each(item.reviewAttachList, function(aIdx, reviewAttach){
|
|
|
+ fileGbClass = '';
|
|
|
+ if (reviewAttach == "M") fileGbClass = "mov";
|
|
|
+ tag += ' <li>\n';
|
|
|
+ tag += ' <a href="javascript:void();" onclick="cfGoodsBestReview(\''+item.goodsCd+'\');">\n';
|
|
|
+ tag += ' <div class="pic">\n';
|
|
|
+ tag += ' <span class="thumb '+ fileGbClass +'" style="background-image:url('+ _imgUrl + reviewAttach.sysFileNm +');"></span>\n'; //<!-- 동영상의 썸네일일 경우 mov 클래스 추가 -->
|
|
|
+ tag += ' </div>\n';
|
|
|
+ tag += ' </a>\n';
|
|
|
+ tag += ' </li>\n';
|
|
|
+ });
|
|
|
}
|
|
|
tag += ' </ul>\n';
|
|
|
tag += ' </div>\n';
|
|
|
tag += ' </div>\n';
|
|
|
tag += ' <div class="txt_review_box">\n';
|
|
|
- tag += ' <p>' + item.reviewContent '+</p>\n';
|
|
|
+ tag += ' <p>' + item.reviewContent +'</p>\n';
|
|
|
tag += ' </div>\n';
|
|
|
if (!gagajf.isNull(item.admRpl)){
|
|
|
tag += ' <div class="reply_box">\n';
|
|
|
@@ -611,6 +611,12 @@
|
|
|
gagaPaging.createPagination(result.paging.pageable);
|
|
|
}
|
|
|
|
|
|
+ var jfReviewSearch = function(obj){
|
|
|
+ debugger;
|
|
|
+ $obj = $(obj);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
$(document).ready( function() {
|
|
|
|
|
|
var sort_selecter01 = new sCombo('.area_rv_all .selection .select_custom.sort_opt1');
|