Explorar o código

8/19 퍼블수정본

jmh %!s(int64=4) %!d(string=hai) anos
pai
achega
6112754d59

+ 1 - 1
src/main/webapp/WEB-INF/views/mob/callcenter/OneToOneQnaFormMob.html

@@ -202,7 +202,7 @@
 				</div>
 				<div class="modal-footer">
 					<div class="btn_group_flex">
-						<div><button type="button" class="btn btn_dark" id="btn_resist"><span>등록</span></button></div>
+						<div><button type="button" class="btn btn_dark" id="btnSaveQna"><span>등록</span></button></div>
 					</div>
 				</div>
 			</div>

+ 88 - 88
src/main/webapp/WEB-INF/views/mob/mypage/MypageReviewCreateFormMob.html

@@ -29,10 +29,10 @@
 						<input type="hidden" name="reviewSq" th:if="${reviewStat == 'u'}" th:value="${reviewInfo.reviewSq}">
 					<div class="inner bg_gray">
 						<ul class="note">
-							<li>일반 리뷰 작성시 150P, 포토/영상 리뷰는 350P가  적립됩니다.</li>
-							<li>월 최대 10,000P까지 적립 가능합니다.(합산 후 월 1회 지급)</li>
-							<li>베스트 리뷰로 선정되면 10,000P가 추가 적립됩니다.</li>
-							<li>리뷰 작성시 욕설, 비방, 선정적인 내용 등이 있을 경우 통보 없이관리자에 의해 삭제 될 수 있습니다.</li>
+							<li>일반 리뷰 작성 시 150P, 포토/영상 리뷰는 350P가 추가 적립됩니다!</li>
+							<li>상품기준, 월 최대 10개의 상품까지 작성 및 적립 가능합니다.<br>(동일상품의 옵션만 상이한 경우는 적립되지 않음)</li>
+							<li>베스트 리뷰로 선정되면 10,000P가 추가 적립됩니다!</li>
+							<li>리뷰는 주문일 기준 90일간 작성이 가능합니다.</li>
 						</ul>
 					</div>
 					<div class="inner">
@@ -59,7 +59,7 @@
 											</div>
 										</div>
 									</a>
-								</div>											
+								</div>
 							</div>
 							<!-- //굿즈_리뷰 -->
 						</div>
@@ -82,7 +82,7 @@
 					<div class="inner">
 						<div class="my_edit_section">
 							<div class="tbl_wrap">
-								<div class="tbl_tit"> 
+								<div class="tbl_tit">
 									<h3>키/몸무게</h3>
 								</div>
 								<div class="tbl">
@@ -90,7 +90,7 @@
 										<table>
 											<colgroup>
 												<col width="*">
-											</colgroup>   
+											</colgroup>
 											<tr>
 												<th>키</th>
 												<td>
@@ -113,7 +113,7 @@
 							</div>
 							<th:block th:if="${reviewInfo.sizeGb == 'T' or reviewInfo.sizeGb == 'B' or reviewInfo.sizeGb == 'S'}">
 							<div class="tbl_wrap">
-								<div class="tbl_tit"> 
+								<div class="tbl_tit">
 									<h3>상품평가</h3>
 								</div>
 								<div class="tbl">
@@ -122,7 +122,7 @@
 											<colgroup>
 												<col width="*">
 											</colgroup>
-											<th:block th:if="${reviewInfo.sizeGb == 'T' or reviewInfo.sizeGb == 'B' or reviewInfo.sizeGb == 'S'}">    
+											<th:block th:if="${reviewInfo.sizeGb == 'T' or reviewInfo.sizeGb == 'B' or reviewInfo.sizeGb == 'S'}">
 											<tr>
 												<th>사이즈</th>
 												<td>
@@ -156,7 +156,7 @@
 												</td>
 											</tr>
 											</th:block>
-											<th:block th:if="${reviewInfo.sizeGb == 'T' or reviewInfo.sizeGb == 'B'}"> 
+											<th:block th:if="${reviewInfo.sizeGb == 'T' or reviewInfo.sizeGb == 'B'}">
 											<tr>
 												<th>핏</th>
 												<td>
@@ -190,7 +190,7 @@
 												</td>
 											</tr>
 											</th:block>
-											<th:block th:if="${reviewInfo.sizeGb == 'S'}"> 
+											<th:block th:if="${reviewInfo.sizeGb == 'S'}">
 											<tr>
 												<th>무게감</th>
 												<td>
@@ -235,7 +235,7 @@
 										<table>
 											<colgroup>
 												<col width="*">
-											</colgroup>   
+											</colgroup>
 											<tr>
 												<th>
 													<span class="tit">고객님의 리뷰가<br>다른 고객님께 도움이 될 수 있어요! </span>
@@ -274,14 +274,14 @@
 																</div>
 															</div>
 															<!-- //이미지첨부 -->
-														</div> 
+														</div>
 													</div>
 
 													<p class="review_desc">최대 10개까지 등록 가능</p>
-													<!-- <p class="review_desc">동영상 첨부 시 관리자 승인이 필요하여 바로 노출이 되지 않을 수 있습니다.</p> -->					
+													<!-- <p class="review_desc">동영상 첨부 시 관리자 승인이 필요하여 바로 노출이 되지 않을 수 있습니다.</p> -->
 												</td>
 											</tr>
-											 
+
 										</table>
 									</div>
 								</div>
@@ -290,9 +290,9 @@
 					</div>
 					<div class="inner">
 						<div class="goods_btn_wrap btn_group_flex">
-							<div><button type="button" id="btn_review_cancle" class="btn btn_default" onclick="reviewCancel()"><span>취소</span></button></div> 
-							<div th:if="${reviewStat == 'c'}"><button type="button" id="btn_review_confirm" class="btn btn_dark"  onclick="reviewCreate()"><span>등록</span></button></div> 
-							<div th:if="${reviewStat == 'u'}"><button type="button" id="btn_review_confirm" class="btn btn_dark"  onclick="reviewUpdate()"><span>수정</span></button></div> 
+							<div><button type="button" id="btn_review_cancle" class="btn btn_default" onclick="reviewCancel()"><span>취소</span></button></div>
+							<div th:if="${reviewStat == 'c'}"><button type="button" id="btn_review_confirm" class="btn btn_dark"  onclick="reviewCreate()"><span>등록</span></button></div>
+							<div th:if="${reviewStat == 'u'}"><button type="button" id="btn_review_confirm" class="btn btn_dark"  onclick="reviewUpdate()"><span>수정</span></button></div>
 						</div>
 					</div>
 				</form>
@@ -331,7 +331,7 @@ function rating(score) {
 
 // 리뷰  취소
 var reviewCancel = function() {
-	
+
 	mcxDialog.confirm('취소하시겠습니까?', {
         cancelBtnText: "취소",
         sureBtnText: "확인",
@@ -348,31 +348,31 @@ var reviewCreate = function () {
 		mcxDialog.alert('별점을 선택하세요.');
 		return;
 	}
-	
-	
+
+
 	// 2021.08.11 이슈리스트 수정사항 선택값으로등록
 	//if($("#reviewForm input[name=height]").val() == '' || $("#reviewForm input[name=height]").val() == null){
 	//	mcxDialog.alert('키를 입력하세요.');
 	//	return;
 	//}
-	
+
 	//if($("#reviewForm input[name=weight]").val() == '' || $("#reviewForm input[name=weight]").val() == null){
 	//	mcxDialog.alert('몸무게를 입력하세요.');
 	//	return;
-	//} 
+	//}
 
 	if(reviewList.sizeGb == 'T' || reviewList.sizeGb == 'B' || reviewList.sizeGb == 'S'){
 		if($('#reviewForm input:radio[name=scoreSize]:checked').length == 0){
 			mcxDialog.alert('상품 사이즈를 평가해주세요.');
 			return false;
 		}
-		
+
 		if($('#reviewForm input:radio[name=scoreColor]:checked').length == 0){
 			mcxDialog.alert('상품 컬러를 평가해주세요.');
 			return false;
 		}
 	}
-	
+
 	if(reviewList.sizeGb == 'T' || reviewList.sizeGb == 'B'){
 		if($('#reviewForm input:radio[name=scoreFit]:checked').length == 0){
 			mcxDialog.alert('상품 핏을 평가해주세요.');
@@ -381,27 +381,27 @@ var reviewCreate = function () {
 		if($('#reviewForm input:radio[name=scoreThick]:checked').length == 0){
 			mcxDialog.alert('상품 두께감을 평가해주세요.');
 			return false;
-		}	
+		}
 	}
-	
+
 	if(reviewList.sizeGb == 'S' ){
 		if($('#reviewForm input:radio[name=scoreWeight]:checked').length == 0){
 			mcxDialog.alert('상품 무게감을 평가해주세요.');
 			return false;
 		}
-		
+
 		if($('#reviewForm input:radio[name=scoreBall]:checked').length == 0){
 			mcxDialog.alert('상품 볼넓이를 평가해주세요.');
 			return false;
 		}
 	}
-	
+
 	if($('#reviewContent').val().length<10){
 		mcxDialog.alert("리뷰 내용을 10자 이상 입력해주세요.");
 		return false;
 	}
-	
-	
+
+
 	mcxDialog.confirm('리뷰를 등록하시겠습니까?', {
      cancelBtnText: "취소",
      sureBtnText: "확인",
@@ -409,19 +409,19 @@ var reviewCreate = function () {
      	gagajf.ajaxFormSubmit($('#reviewForm').prop('action'), '#reviewForm', fnSaveCallback, true);
      }
  });
-	
-	
+
+
 }
 
 
 //리뷰 수정
 var reviewUpdate = function() {
-	
+
 	if($("#reviewForm input[name=height]").val() == '' || $("#reviewForm input[name=height]").val() == null){
 		mcxDialog.alert('키를 입력하세요.');
 		return;
 	}
-	
+
 	if($("#reviewForm input[name=weight]").val() == '' || $("#reviewForm input[name=weight]").val() == null){
 		mcxDialog.alert('몸무게를 입력하세요.');
 		return;
@@ -431,7 +431,7 @@ var reviewUpdate = function() {
 		mcxDialog.alert("리뷰 내용을 10자 이상 입력해주세요.");
 		return;
 	}
-	
+
 	mcxDialog.confirm('리뷰를 수정하시겠습니까?', {
      cancelBtnText: "취소",
      sureBtnText: "확인",
@@ -448,14 +448,14 @@ var fnSaveCallback = function (result) {
 			if (document.getElementsByName("kufKeyArr").length>0 || document.getElementsByName("orgFileNmArr").length>0) {
 				mcxDialog.confirm("상품리뷰를 등록 하였습니다. 350P 적립 예정입니다.", {
 					sureBtnText: "확인",
-					sureBtnClick: function() { 
+					sureBtnClick: function() {
 						cfnGoToPage(_PAGE_MYPAGE_REVIEW);
 					}
 				});
 			}else{
 				mcxDialog.confirm("상품리뷰를 등록 하였습니다. 150P 적립 예정입니다.", {
 					sureBtnText: "확인",
-					sureBtnClick: function() { 
+					sureBtnClick: function() {
 						cfnGoToPage(_PAGE_MYPAGE_REVIEW);
 					}
 				});
@@ -464,7 +464,7 @@ var fnSaveCallback = function (result) {
 		else {
 			mcxDialog.confirm("상품리뷰를 등록 하였습니다.", {
 				sureBtnText: "확인",
-				sureBtnClick: function() { 
+				sureBtnClick: function() {
 					cfnGoToPage(_PAGE_MYPAGE_REVIEW);
 				}
 			});
@@ -476,35 +476,35 @@ var fnUpdateCallback = function (result) {
 	if(result.status == "200"){
 		mcxDialog.confirm("상품 리뷰를 수정하였습니다.", {
 			sureBtnText: "확인",
-			sureBtnClick: function() { 
+			sureBtnClick: function() {
 				cfnGoToPage(_PAGE_MYPAGE_REVIEW);
 			}
-		}); 
-		
+		});
+
 	}
 }
 
 //header scroll
 $(document).on('click', '.tabIndex li a', function() {
-	
-	
+
+
 	var $this = $(this),
 		$tabList = $this.parents('ul'),
 		_idx = $this.closest('li').index();
-	
+
 	$tabList.children().eq(_idx).addClass('active').siblings().removeClass('active');
 	$tabList.next().children().eq(_idx).addClass('active').siblings().removeClass('active');
 });
-		
+
 $(function(){
-	
+
 	$('#htopTitle').text('리뷰 쓰기');
 	var tag = '';
-	
+
 	if (reviewList.goodsType == 'G056_S') {
 		tag += '<em>';
 		$.each(reviewList.colorNmArr, function(index, option) {
-			
+
 			tag += reviewList.itemNmArr[index] + ' / ' + option + '<br>';
 		});
 		tag += '</em>';
@@ -516,7 +516,7 @@ $(function(){
 		$(".option").append(tag);
 	}
 
-	
+
 	 if(reviewStat=='u'){
 		 var reviewScore = reviewList.score;
 		 $("#score").val(reviewScore);
@@ -531,7 +531,7 @@ $(function(){
 		}else if(reviewList.scoreSize == "3"){
 			$('#reviewForm input:radio[name=scoreSize]:radio[value="3"]').prop('checked', true);
 		}
-		
+
 		if(reviewList.scoreColor == "1"){
 			$('#reviewForm input:radio[name=scoreColor]:radio[value="1"]').prop('checked', true);
 		}else if(reviewList.scoreColor == "2"){
@@ -539,7 +539,7 @@ $(function(){
 		}else if(reviewList.scoreColor == "3"){
 			$('#reviewForm input:radio[name=scoreColor]:radio[value="3"]').prop('checked', true);
 		}
-		
+
 		if(reviewList.scoreFit == "1"){
 			$('#reviewForm input:radio[name=scoreFit]:radio[value="1"]').prop('checked', true);
 		}else if(reviewList.scoreFit == "2"){
@@ -547,7 +547,7 @@ $(function(){
 		}else if(reviewList.scoreFit == "3"){
 			$('#reviewForm input:radio[name=scoreFit]:radio[value="3"]').prop('checked', true);
 		}
-		
+
 		if(reviewList.scoreThick == "1"){
 			$('#reviewForm input:radio[name=scoreThick]:radio[value="1"]').prop('checked', true);
 		}else if(reviewList.scoreThick == "2"){
@@ -555,7 +555,7 @@ $(function(){
 		}else if(reviewList.scoreThick == "3"){
 			$('#reviewForm input:radio[name=scoreThick]:radio[value="3"]').prop('checked', true);
 		}
-		
+
 		if(reviewList.scoreWeight == "1"){
 			$('#reviewForm input:radio[name=scoreWeight]:radio[value="1"]').prop('checked', true);
 		}else if(reviewList.scoreWeight == "2"){
@@ -563,7 +563,7 @@ $(function(){
 		}else if(reviewList.scoreWeight == "3"){
 			$('#reviewForm input:radio[name=scoreWeight]:radio[value="3"]').prop('checked', true);
 		}
-		
+
 		if(reviewList.scoreBall == "1"){
 			$('#reviewForm input:radio[name=scoreBall]:radio[value="1"]').prop('checked', true);
 		}else if(reviewList.scoreBall == "2"){
@@ -571,7 +571,7 @@ $(function(){
 		}else if(reviewList.scoreBall == "3"){
 			$('#reviewForm input:radio[name=scoreBall]:radio[value="3"]').prop('checked', true);
 		}
-		
+
 		if(reviewAttach.length>0){
 			for (var i = 0; i < reviewAttach.length; i++) {
 				if(reviewAttach[i].reviewSq == reviewList.reviewSq){
@@ -585,21 +585,21 @@ $(function(){
 					}else{
 						$("<span class=\"pics mov\">" +
 								"<img class=\"picsThumbs\" src=\"" + _kollusMediaUrl + '/poster/' + reviewAttach[i].kmcKey + "\"/>" +
-								"<input type='hidden' name='kmcKeyArr' value='" + reviewAttach[i].kmcKey + "'>" + 
-								"<input type='hidden' name='kufKeyArr' value='" + reviewAttach[i].kufKey + "'>" + 
+								"<input type='hidden' name='kmcKeyArr' value='" + reviewAttach[i].kmcKey + "'>" +
+								"<input type='hidden' name='kufKeyArr' value='" + reviewAttach[i].kufKey + "'>" +
 								"<br/><span class=\"removes\">Removes image</span>" +
 								"</span>").insertBefore(".fileAdd");
 					}
 				}
-				
+
 			}
 			$(".removes").click(function(){
 				$(this).parent(".pics").remove();
 			});
-			
+
 		}
-	} 
-	
+	}
+
 	$(window).scroll(function(){
 		var scroll = $(this).scrollTop();
 		var headerH = $(".header").height();
@@ -614,7 +614,7 @@ $(function(){
 	});
 
 	$('#star_grade button').click(function(){
-		$(this).parent().children("button").removeClass("on");  /* 별점의 on 클래스 전부 제거 */ 
+		$(this).parent().children("button").removeClass("on");  /* 별점의 on 클래스 전부 제거 */
 		$(this).addClass("on").prevAll("button").addClass("on"); /* 클릭한 별과, 그 앞 까지 별점에 on 클래스 추가 */
 		return false;
 	});
@@ -628,7 +628,7 @@ $(function(){
 			$('#review_cnt').html("500");
 		}
 	});
-	
+
 	$('.doc_review').bind('input paste', function() {
 		  $(this).trigger('keyup');
 	});
@@ -638,25 +638,25 @@ $('#fileAdd').on('change', function() { fnChooseFile(this); });
 
 var fnChooseFile = function(obj) {
 	var picLength = $(".pics").length;
-	
+
 	// multiple 속성이 있으면 files에는 다수의 객체가 할당됨
 	var file = obj.files[0];
 	var fileType = file.type;
-                                                        
+
 
 	if (!gagajf.isNull(file.name)) {
 		var extension = "\.(jpg|jpeg|png)$";
 		if ((new RegExp(extension, "i")).test(file.name)) {
-			if ( file.size > (10 * 1000000)) {        
-				mcxDialog.alertC('이미지는 최대 10MB 이하 파일만 가능합니다.', {                          
-					sureBtnText: "확인",                                                    
-					sureBtnClick: function() {      
+			if ( file.size > (10 * 1000000)) {
+				mcxDialog.alertC('이미지는 최대 10MB 이하 파일만 가능합니다.', {
+					sureBtnText: "확인",
+					sureBtnClick: function() {
 						$(".pics").find(".removes").last().trigger('click');
-					}                                                                     
-				});                                                                       
-				return false;                                                             
-			}       
-			
+					}
+				});
+				return false;
+			}
+
 			/* var limg = loadImage(file, function (img, data) {
 	            img.toBlob(function (blob) {
 	                var rotateFile = new File([blob], file.name, { type: fileType });
@@ -667,28 +667,28 @@ var fnChooseFile = function(obj) {
 					console.log(orientation);
 	            }, fileType)
 	        }, { orientation: 1}); */
-			
+
 			 gagajf.ajaxFileUpload('/common/file/upload?subDir=/review'
 						, file
 						, function(result) {
 							// 업로드한 파일명 설정
 							$(".pics").children().last().append("<input type='hidden' name='orgFileNmArr' id='orgFileNm"+(picLength+1)+"' value='"+result.oldFileName+"'>");
 							$(".pics").children().last().append("<input type='hidden' name='sysFileNmArr' id='sysFileNm"+(picLength+1)+"' value='"+result.newFileName+"'>");
-							
+
 						}
-				); 
+				);
 		}
 		else{
-			if ( file.size > (50 * 1000000)) {        
-				mcxDialog.alertC('동영상은 최대 50MB 이하 파일만 가능합니다.', {                          
-					sureBtnText: "확인",                                                    
-					sureBtnClick: function() {      
+			if ( file.size > (50 * 1000000)) {
+				mcxDialog.alertC('동영상은 최대 50MB 이하 파일만 가능합니다.', {
+					sureBtnText: "확인",
+					sureBtnClick: function() {
 						$(".pics").find(".removes").last().trigger('click');
-					}                                                                     
-				});                                                                       
-				return false;                                                             
-			}  
-			
+					}
+				});
+				return false;
+			}
+
 			setTimeout(function(){
 				$(".imgUpload").find('.pics').last().addClass("mov");
 				$(".pics").children().last().append("<input type='hidden' name='kufKeyArr' id='kufKey"+(picLength+1)+"'>");
@@ -718,7 +718,7 @@ function handleOnInput(el, maxlength) {
 		})
 	});
 </script>
-	
+
 </th:block>
 
 </body>

+ 36 - 36
src/main/webapp/WEB-INF/views/mob/mypage/MypageReviewFormMob.html

@@ -30,9 +30,9 @@
 							<div class="tip_contents">
 								<p class="tip_txt">
 									<ul>
-										<li>일반 리뷰 작성시 150P, 포토/영상 리뷰는 350P가 적립됩니다.</li>
-										<li>월 최대 10,000P까지 적립 가능합니다. <br> (합산 후 월 1회 지급)</li>
-										<li>베스트 리뷰로 선정되면 10,000P가 추가 적립됩니다.</li>
+										<li>일반 리뷰 작성 시 150P, 포토/영상 리뷰는 350P가 추가 적립됩니다!</li>
+										<li>상품기준, 월 최대 10개의 상품까지 작성 및 적립 가능합니다.<br>(동일상품의 옵션만 상이한 경우는 적립되지 않음)</li>
+										<li>베스트 리뷰로 선정되면 10,000P가 추가 적립됩니다!</li>
 										<li>리뷰는 주문일 기준 90일간 작성이 가능합니다.</li>
 									</ul>
 								</p>
@@ -49,7 +49,7 @@
 						</ul>
 						<div class="tabContents">
 							<div class="tab_cont active">
-							
+
 								<div class="once" th:if="${adminCount != null}" id="check_notice">
 									<div class="alert" role="alert">
 										<p>관리자가 댓글을 남긴 상품평이 있습니다.</p>
@@ -71,7 +71,7 @@
 										<div class="btn_group" id="btnMore2Div" style="display: none;">
 										<div><button class="btn btnIcon_more" id="btnMore2">더보기</button></div>
 									</div>
-								
+
 								</div>
 							    <!-- // tab_cont End -->
 							</div>
@@ -94,21 +94,21 @@
 <script th:inline="javascript">
 /*<![CDATA[*/
 	let attachList = [[${alreadyReviewAttach}]];
-	// 작성가능한 리뷰 클릭 시 
-	
+	// 작성가능한 리뷰 클릭 시
+
 	var fnCompleteList = function () {
 		gagajf.ajaxFormSubmit($('#searchForm1').prop('action'), '#searchForm1', fnGetCompleteCallback);
 	}
-	
+
 	var fnAlreadyList = function () {
 		gagajf.ajaxFormSubmit($('#searchForm2').prop('action'), '#searchForm2', fnGetAlreadyCallback);
 	}
-	
+
 	var fnGetAlreadyCallback = function (result) {
 			if (result.dataList2 != null && result.dataList2.length > 0) {
 				if (result.paging2.pageable.pageNo == 1){
 					$('#alreadyList').html('');
-				}	
+				}
 				var html = '';
 				$.each(result.dataList2, function(idx, item) {
 					html += '<div class="reviewitems">\n';
@@ -163,7 +163,7 @@
 					html += '						<dt>구매옵션</dt>\n';
 					html += '						<dd>'+item.colorNm+'</dd>\n';
 					html += '					</div>\n';
-					
+
 					// 2021.08.11 키, 몸무게 정보가 있으면 노출
 					if (item.height > 0 || item.weight > 0 ) {
 						html += '					<div>\n';
@@ -171,7 +171,7 @@
 						html += '						<dd>'+item.height+'cm/'+item.weight+'kg</dd>\n';
 						html += '					</div>\n';
 					}
-					
+
 					html += '				</dl>\n';
 					html += '			</div>\n';
 					html += '		</div>\n';
@@ -181,7 +181,7 @@
 						html += '			<div class="photo_list">\n';
 						html += '				<ul>\n';
 						for (var i = 0; i < attachList.length; i++) {
-							if (attachList[i].reviewSq == item.reviewSq) { 
+							if (attachList[i].reviewSq == item.reviewSq) {
 								html += '					<li>\n';
 								html += '						<a>\n';
 								html += '							<div class="pic">\n';
@@ -262,7 +262,7 @@
 					html += '	</div>\n';
 					html += '</div>\n';
 				});
-				
+
 				$('#alreadyList').append(html);
 				if (result.paging2.pageable.totalPage > result.paging2.pageable.pageNo) {
 					$('#btnMoreDiv').hide();
@@ -272,7 +272,7 @@
 					$('#btnMoreDiv').hide();
 					$('#btnMore2Div').hide();
 				}
-				
+
 			}else{
 				$('#alreadyList').html('');
 				var html = '';
@@ -288,12 +288,12 @@
 				$('#alreadyList').append(html);
 			}
 	}
-	
+
 	var fnGetCompleteCallback = function (result) {
 		if (result.dataList1 != null && result.dataList1.length > 0) {
 			if (result.paging1.pageable.pageNo == 1){
 				$('#completeList').html('');
-			}	
+			}
 			var html = '	<div class="part_goods">\n';
 			$.each(result.dataList1, function(idx, item) {
 				html += '		<div class="goods_section">\n';
@@ -349,12 +349,12 @@
 			html += '		</p>\n';
 			html += '	</div>\n';
 			html += '</div>\n';
-			
+
 			$('#completeList').append(html);
 			$('#btnMoreDiv').hide();
 		}
 	}
-	
+
 	$("#completeReview").click(function() {
 		$("#alreadyReview").removeClass("active");
 		$("#completeReview").addClass("active");
@@ -366,8 +366,8 @@
 		$("#searchForm1 input[name=pageNo]").val(1);
 		fnCompleteList();
 	})
-	
-	
+
+
 	$("#alreadyReview").click(function() {
 		$("#completeReview").removeClass("active");
 		$("#alreadyReview").addClass("active");
@@ -378,7 +378,7 @@
 		$("#completeList").hide();
 		$("#searchForm2 input[name=pageNo]").val(1);
 		fnAlreadyList();
-		
+
 	});
 	// 리뷰 수정
 	var fnReviewUpdate = function(obj1,obj2,obj3) {
@@ -386,20 +386,20 @@
 		let ordDtlNo = obj2;
 		let goodsCd = obj3;
 		let reviewStat = 'u';
-		
+
 		$('#createReview input[name=ordNo]').val(ordNo);
 		$('#createReview input[name=ordDtlNo]').val(ordDtlNo);
 		$('#createReview input[name=goodsCd]').val(goodsCd);
 		$('#createReview input[name=reviewStat]').val(reviewStat);
-		
+
 		document.createReview.submit();
 		// cfnGoToPage(_PAGE_MYPAGE_CREATE_REVIEW + ordNo +'/'+ordDtlNo+'/'+goodsCd+'/'+reviewStat);
 	}
-	
+
 	// 리뷰삭제
 	var fnDeleteReview = function(obj) {
 		var data = {reviewSq : obj};
-				
+
 		var jsonData = JSON.stringify(data);
 
 		mcxDialog.confirm("작성한 리뷰를 삭제하시겠습니까?", {
@@ -411,12 +411,12 @@
 					mcxDialog.alert("삭제되었습니다.");
 					$("#alrReview").text("("+e.alreadyReviewCount+")");
 					$("#comReview").text("("+e.completeReviewCount+")");
-					$("#alreadyReview").trigger('click');	
+					$("#alreadyReview").trigger('click');
 				});
 			}
 		});
 	}
-	
+
 	// 스크롤 이동
 	var fnMove = function(obj) {
         var data = {};
@@ -425,25 +425,25 @@
     	gagajf.ajaxJsonSubmit('/mypage/review/customer/confirm', jsonData,function() {
     		$(".check_notice").html('');
     		$(".check_notice").css("background-color","#ffffff");
-    		
+
 		});
-        
+
     	 var offset = $("#admin_" + obj).offset();
-         $('html, body').animate({scrollTop : offset.top}, 300); 
-         
+         $('html, body').animate({scrollTop : offset.top}, 300);
+
 	}
-	
+
 	// 더보기
 	$('#btnMore').on('click', function() {
 		fnCompleteList();
 	});
-	
+
 	$('#btnMore2').on('click', function() {
 		fnAlreadyList();
 	});
-	
+
 /*]]>*/
- 
+
  $(document).ready(function() {
 	$("#completeReview").trigger("click");
  	$('#htopTitle').text('리뷰');

+ 80 - 80
src/main/webapp/WEB-INF/views/web/mypage/MypageReviewCreateFormWeb.html

@@ -36,10 +36,10 @@
 							<div class="com_info_txt">
 								<p class="tit">리뷰 안내</p>
 								<ul>
-									<li>일반 리뷰 작성 시 150P, 포토/영상 리뷰는 350P가  적립됩니다!</li>
-									<li>월 최대 10,000 P까지 적립 가능합니다.(합산 후 월 1회 지급)</li>
+									<li>일반 리뷰 작성 시 150P, 포토/영상 리뷰는 350P가 추가 적립됩니다!</li>
+									<li>상품기준, 월 최대 10개의 상품까지 작성 및 적립 가능합니다.(동일상품의 옵션만 상이한 경우는 적립되지 않음)</li>
 									<li>베스트 리뷰로 선정되면 10,000P가 추가 적립됩니다!</li>
-									<li>리뷰 작성시 욕설, 비방, 선정적인 내용등이 있을 경우 통보 없이 관리자에 의해 삭제 될 수 있습니다.</li>
+									<li>리뷰는 주문일 기준 90일간 작성이 가능합니다.</li>
 								</ul>
 							</div>
 							<form class="form_wrap" id="reviewForm" th:action="@{'/mypage/review/save'}" th:with="imageUrl=${@environment.getProperty('upload.goods.view')}">
@@ -53,11 +53,11 @@
 								<div class="part_goods">
 									<div class="goods_cont">
 										<!-- 주문상품 -->
-										
+
 										<div class="goods_info">
 											<div class="order_desc">
 												<div class="goods_box">
-													<div class="gd_item">	
+													<div class="gd_item">
 														<a th:onclick="cfnGoToGoodsDetail([[${ reviewInfo.goodsCd}]])" >
 															<span class="thumb">
 																<img th:src="${imageUrl + '/' + reviewInfo.sysImgNm +'?RS=550'}" width="100%" alt="">
@@ -70,7 +70,7 @@
 																<!-- <span class="tag">STYLE24 일반배송</span> -->
 															</p>
 															<p>
-																<span class="name" th:text="${reviewInfo.goodsNm}"></span>																
+																<span class="name" th:text="${reviewInfo.goodsNm}"></span>
 															</p>
 														</a>
 													</div>
@@ -78,16 +78,16 @@
 														<div class="option_wrap">
 															<span class="title sr-only">주문 옵션</span>
 															<div id="optionDiv"><span class="option"></span></div>
-															
+
 														</div>
 													</div>
 												</div>
 											</div>
 										</div>
-										
+
 										<!-- //주문상품 -->
 									</div>
-								</div>			
+								</div>
 
 								<h4 class="subH3">별점 선택</h4>
 								<div class="tbl type1">
@@ -95,7 +95,7 @@
 										<colgroup>
 											<col width="170">
 											<col width="*">
-										</colgroup>   
+										</colgroup>
 										<tr>
 											<th>
 												별점
@@ -120,7 +120,7 @@
 										<colgroup>
 											<col width="170">
 											<col width="*">
-										</colgroup>   
+										</colgroup>
 										<tr>
 											<th>
@@ -153,7 +153,7 @@
 										</tr>
 									</table>
 								</div>
-								
+
 								<th:block th:if="${reviewInfo.sizeGb == 'T' or reviewInfo.sizeGb == 'B' or reviewInfo.sizeGb == 'S'}">
 								<h4 class="subH3">상품 평가</h4>
 								<div class="tbl type1">
@@ -161,8 +161,8 @@
 										<colgroup>
 											<col width="170">
 											<col width="*">
-										</colgroup>  
-										<th:block th:if="${reviewInfo.sizeGb == 'T' or reviewInfo.sizeGb == 'B' or reviewInfo.sizeGb == 'S'}"> 
+										</colgroup>
+										<th:block th:if="${reviewInfo.sizeGb == 'T' or reviewInfo.sizeGb == 'B' or reviewInfo.sizeGb == 'S'}">
 										<tr>
 											<th>
 												사이즈
@@ -210,7 +210,7 @@
 											</td>
 										</tr>
 										</th:block>
-										<th:block th:if="${reviewInfo.sizeGb == 'T' or reviewInfo.sizeGb == 'B'}"> 
+										<th:block th:if="${reviewInfo.sizeGb == 'T' or reviewInfo.sizeGb == 'B'}">
 										<tr>
 											<th>
@@ -258,7 +258,7 @@
 											</td>
 										</tr>
 										</th:block>
-										<th:block th:if="${reviewInfo.sizeGb == 'S'}"> 
+										<th:block th:if="${reviewInfo.sizeGb == 'S'}">
 										<tr>
 											<th>
 												무게감
@@ -315,7 +315,7 @@
 										<colgroup>
 											<col width="170">
 											<col width="*">
-										</colgroup>   
+										</colgroup>
 										<tr>
 											<th>
 												리뷰내용
@@ -325,8 +325,8 @@
 													<div class="form_field">
 														<div class="input_wrap">
 															<textarea class="doc_review" name="reviewContent" id="reviewContent" cols="30" rows="10" placeholder="·&nbsp;리뷰 내용은 최소 10자 이상 입력해 주세요.&#13;&#10;·&nbsp;상품과 무관하거나 스팸, 음란, 불법적인 내용의 리뷰는 통보 없이 삭제되며, 지급한 포인트는 회수 될 수 있습니다.&#13;&#10;·&nbsp;리뷰 등록 후 관리자 승인이 필요한 경우 바로 노출이 되지 않을 수 있습니다." style="resize: none;" maxlength="500"></textarea>
-															<p class="txt_cnt"><span id="review_cnt" class="c_primary">0</span>/500</p>			
-														</div> 
+															<p class="txt_cnt"><span id="review_cnt" class="c_primary">0</span>/500</p>
+														</div>
 													</div>
 												</div>
 											</td>
@@ -346,7 +346,7 @@
 															</div>
 														</div>
 														<!-- //이미지첨부 -->
-													</div> 
+													</div>
 												</div>
 												<div class="txt_info">
 													<ul>
@@ -363,17 +363,17 @@
 											</td>
 										</tr>
 									</table>
-								</div>							
+								</div>
 
 								<div class="btn_footer_area">
 									<button type="button" class="btn btn_default btn_md" onclick="reviewCancel()"><span>취소</span></button>
 									<button type="button" id="btn_review_registration" class="btn btn_dark btn_md" th:if="${reviewStat == 'c'}" onclick="reviewCreate()"><span>리뷰 등록</span></button>
 									<button type="button" id="btn_review_registration" class="btn btn_dark btn_md" th:if="${reviewStat == 'u'}" onclick="reviewUpdate()"><span>리뷰 수정</span></button>
-								</div>		
-							</form>	
+								</div>
+							</form>
 						</div>
 					</div>
-					<!-- // CONT-BODY -->					
+					<!-- // CONT-BODY -->
 				</div>
 			</div>
 <script type="text/javascript" src="/ux/plugins/gaga/gaga.kollus.js"></script>
@@ -409,7 +409,7 @@ function rating(score) {
 
 // 리뷰  취소
 var reviewCancel = function() {
-	
+
 	mcxDialog.confirm('취소하시겠습니까?', {
         cancelBtnText: "취소",
         sureBtnText: "확인",
@@ -419,7 +419,7 @@ var reviewCancel = function() {
     });
 }
 var reviewValidation = function() {
-	
+
 
 }
 
@@ -429,30 +429,30 @@ var reviewCreate = function () {
 		mcxDialog.alert('별점을 선택하세요.');
 		return;
 	}
-	
+
 	// 2021.08.11 이슈리스트 수정사항 선택값으로등록
 	//if($("#reviewForm input[name=height]").val() == '' || $("#reviewForm input[name=height]").val() == null){
 	//	mcxDialog.alert('키를 입력하세요.');
 	//	return;
 	//}
-	
+
 	//if($("#reviewForm input[name=weight]").val() == '' || $("#reviewForm input[name=weight]").val() == null){
 	//	mcxDialog.alert('몸무게를 입력하세요.');
 	//	return;
-	//} 
+	//}
 
 	if(reviewList.sizeGb == 'T' || reviewList.sizeGb == 'B' || reviewList.sizeGb == 'S'){
 		if($('#reviewForm input:radio[name=scoreSize]:checked').length == 0){
 			mcxDialog.alert('상품 사이즈를 평가해주세요.');
 			return false;
 		}
-		
+
 		if($('#reviewForm input:radio[name=scoreColor]:checked').length == 0){
 			mcxDialog.alert('상품 컬러를 평가해주세요.');
 			return false;
 		}
 	}
-	
+
 	if(reviewList.sizeGb == 'T' || reviewList.sizeGb == 'B'){
 		if($('#reviewForm input:radio[name=scoreFit]:checked').length == 0){
 			mcxDialog.alert('상품 핏을 평가해주세요.');
@@ -461,27 +461,27 @@ var reviewCreate = function () {
 		if($('#reviewForm input:radio[name=scoreThick]:checked').length == 0){
 			mcxDialog.alert('상품 두께감을 평가해주세요.');
 			return false;
-		}	
+		}
 	}
-	
+
 	if(reviewList.sizeGb == 'S' ){
 		if($('#reviewForm input:radio[name=scoreWeight]:checked').length == 0){
 			mcxDialog.alert('상품 무게감을 평가해주세요.');
 			return false;
 		}
-		
+
 		if($('#reviewForm input:radio[name=scoreBall]:checked').length == 0){
 			mcxDialog.alert('상품 볼넓이를 평가해주세요.');
 			return false;
 		}
 	}
-	
+
 	if($('#reviewContent').val().length<10){
 		mcxDialog.alert("리뷰 내용을 10자 이상 입력해주세요.");
 		return false;
 	}
-	
-	
+
+
 	mcxDialog.confirm('리뷰를 등록하시겠습니까?', {
         cancelBtnText: "취소",
         sureBtnText: "확인",
@@ -493,12 +493,12 @@ var reviewCreate = function () {
 
 // 리뷰 수정
 var reviewUpdate = function() {
-	
+
 	if($("#reviewForm input[name=height]").val() == '' || $("#reviewForm input[name=height]").val() == null){
 		mcxDialog.alert('키를 입력하세요.');
 		return;
 	}
-	
+
 	if($("#reviewForm input[name=weight]").val() == '' || $("#reviewForm input[name=weight]").val() == null){
 		mcxDialog.alert('몸무게를 입력하세요.');
 		return;
@@ -508,7 +508,7 @@ var reviewUpdate = function() {
 		mcxDialog.alert("리뷰 내용을 10자 이상 입력해주세요.");
 		return;
 	}
-	
+
 	mcxDialog.confirm('리뷰를 수정하시겠습니까?', {
         cancelBtnText: "취소",
         sureBtnText: "확인",
@@ -525,14 +525,14 @@ var fnSaveCallback = function (result) {
 			if (document.getElementsByName("kufKeyArr").length>0 || document.getElementsByName("orgFileNmArr").length>0) {
 				mcxDialog.confirm("상품리뷰를 등록 하였습니다. 350P 적립 예정입니다.", {
 					sureBtnText: "확인",
-					sureBtnClick: function() { 
+					sureBtnClick: function() {
 						cfnGoToPage(_PAGE_MYPAGE_REVIEW);
 					}
 				});
 			}else{
 				mcxDialog.confirm("상품리뷰를 등록 하였습니다. 150P 적립 예정입니다.", {
 					sureBtnText: "확인",
-					sureBtnClick: function() { 
+					sureBtnClick: function() {
 						cfnGoToPage(_PAGE_MYPAGE_REVIEW);
 					}
 				});
@@ -541,7 +541,7 @@ var fnSaveCallback = function (result) {
 		else {
 			mcxDialog.confirm("상품리뷰를 등록 하였습니다.", {
 				sureBtnText: "확인",
-				sureBtnClick: function() { 
+				sureBtnClick: function() {
 					cfnGoToPage(_PAGE_MYPAGE_REVIEW);
 				}
 			});
@@ -553,11 +553,11 @@ var fnUpdateCallback = function (result) {
 	if(result.status == "200"){
 		mcxDialog.confirm("상품 리뷰를 수정하였습니다.", {
 			sureBtnText: "확인",
-			sureBtnClick: function() { 
+			sureBtnClick: function() {
 				cfnGoToPage(_PAGE_MYPAGE_REVIEW);
 			}
-		}); 
-		
+		});
+
 	}
 }
 
@@ -566,7 +566,7 @@ var fnUpdateCallback = function (result) {
 $('#reviewContent').keyup(function (e){
     var content = $(this).val();
     $('.txt_cnt').html('<span id="review_cnt" class="c_primary">'+content.length+'</span>/500');    //글자수 실시간 카운팅
-    
+
 
     if (content.length > 500){
         $(this).val(content.substring(0, 500));
@@ -581,20 +581,20 @@ var fnChooseFile = function(obj) {
 	// multiple 속성이 있으면 files에는 다수의 객체가 할당됨
 	var file = obj.files[0];
 	var fileType = file.type;
-	
+
 	if (!gagajf.isNull(file.name)) {
 		var extension = "\.(jpg|jpeg|png)$";
 		if ((new RegExp(extension, "i")).test(file.name)) {
-			if ( file.size > (10 * 1000000)) {        
-				mcxDialog.alertC('이미지는 최대 10MB 이하 파일만 가능합니다.', {                          
-					sureBtnText: "확인",                                                    
-					sureBtnClick: function() {      
+			if ( file.size > (10 * 1000000)) {
+				mcxDialog.alertC('이미지는 최대 10MB 이하 파일만 가능합니다.', {
+					sureBtnText: "확인",
+					sureBtnClick: function() {
 						$(".pics").find(".removes").eq(0).trigger('click');
-					}                                                                     
-				});                                                                       
-				return false;                                                             
-			}         
-			
+					}
+				});
+				return false;
+			}
+
 			 gagajf.ajaxFileUpload('/common/file/upload?subDir=/review'
 						, file
 						, function(result) {
@@ -602,18 +602,18 @@ var fnChooseFile = function(obj) {
 							$(".pics").children().eq(0).append("<input type='hidden' name='orgFileNmArr' id='orgFileNm"+(picLength+1)+"' value='"+result.oldFileName+"'>");
 							$(".pics").children().eq(0).append("<input type='hidden' name='sysFileNmArr' id='sysFileNm"+(picLength+1)+"' value='"+result.newFileName+"'>");
 						}
-				); 
+				);
 		}else{
-			if ( file.size > (50 * 1000000)) {        
-				mcxDialog.alertC('동영상은 최대 50MB 이하 파일만 가능합니다.', {                          
-					sureBtnText: "확인",                                                    
-					sureBtnClick: function() {      
+			if ( file.size > (50 * 1000000)) {
+				mcxDialog.alertC('동영상은 최대 50MB 이하 파일만 가능합니다.', {
+					sureBtnText: "확인",
+					sureBtnClick: function() {
 						$(".pics").find(".removes").eq(0).trigger('click');
-					}                                                                     
-				});                                                                       
-				return false;                                                             
-			}  
-			
+					}
+				});
+				return false;
+			}
+
 			setTimeout(function(){
 				$(".imgUpload").find('.pics').eq(0).addClass("mov");
 				$(".pics").children().eq(0).append("<input type='hidden' name='kufKeyArr' id='kufKey"+(picLength+1)+"'>");
@@ -642,7 +642,7 @@ $(document).ready(function() {
 	}else{
 		$(".option").append(reviewList.optCd1+"&nbsp;/&nbsp;"+reviewList.optCd2);
 	}
-	
+
 	 if(reviewStat=='u'){
 		 var reviewScore = reviewList.score;
 		 $("#score").val(reviewScore);
@@ -657,7 +657,7 @@ $(document).ready(function() {
 		}else if(reviewList.scoreSize == "3"){
 			$('#reviewForm input:radio[name=scoreSize]:radio[value="3"]').prop('checked', true);
 		}
-		
+
 		if(reviewList.scoreColor == "1"){
 			$('#reviewForm input:radio[name=scoreColor]:radio[value="1"]').prop('checked', true);
 		}else if(reviewList.scoreColor == "2"){
@@ -665,7 +665,7 @@ $(document).ready(function() {
 		}else if(reviewList.scoreColor == "3"){
 			$('#reviewForm input:radio[name=scoreColor]:radio[value="3"]').prop('checked', true);
 		}
-		
+
 		if(reviewList.scoreFit == "1"){
 			$('#reviewForm input:radio[name=scoreFit]:radio[value="1"]').prop('checked', true);
 		}else if(reviewList.scoreFit == "2"){
@@ -673,7 +673,7 @@ $(document).ready(function() {
 		}else if(reviewList.scoreFit == "3"){
 			$('#reviewForm input:radio[name=scoreFit]:radio[value="3"]').prop('checked', true);
 		}
-		
+
 		if(reviewList.scoreThick == "1"){
 			$('#reviewForm input:radio[name=scoreThick]:radio[value="1"]').prop('checked', true);
 		}else if(reviewList.scoreThick == "2"){
@@ -681,7 +681,7 @@ $(document).ready(function() {
 		}else if(reviewList.scoreThick == "3"){
 			$('#reviewForm input:radio[name=scoreThick]:radio[value="3"]').prop('checked', true);
 		}
-		
+
 		if(reviewList.scoreWeight == "1"){
 			$('#reviewForm input:radio[name=scoreWeight]:radio[value="1"]').prop('checked', true);
 		}else if(reviewList.scoreWeight == "2"){
@@ -689,7 +689,7 @@ $(document).ready(function() {
 		}else if(reviewList.scoreWeight == "3"){
 			$('#reviewForm input:radio[name=scoreWeight]:radio[value="3"]').prop('checked', true);
 		}
-		
+
 		if(reviewList.scoreBall == "1"){
 			$('#reviewForm input:radio[name=scoreBall]:radio[value="1"]').prop('checked', true);
 		}else if(reviewList.scoreBall == "2"){
@@ -697,7 +697,7 @@ $(document).ready(function() {
 		}else if(reviewList.scoreBall == "3"){
 			$('#reviewForm input:radio[name=scoreBall]:radio[value="3"]').prop('checked', true);
 		}
-		
+
 		if(reviewAttach.length>0){
 			for (var i = 0; i < reviewAttach.length; i++) {
 				if(reviewAttach[i].reviewSq == reviewList.reviewSq){
@@ -711,26 +711,26 @@ $(document).ready(function() {
 					}else{
 						$("<span class=\"pics mov\">" +
 								"<img class=\"picsThumbs\" src=\"" + _kollusMediaUrl + '/poster/' + reviewAttach[i].kmcKey + "\"/>" +
-								"<input type='hidden' name='kmcKeyArr' value='" + reviewAttach[i].kmcKey + "'>" + 
-								"<input type='hidden' name='kufKeyArr' value='" + reviewAttach[i].kufKey + "'>" + 
+								"<input type='hidden' name='kmcKeyArr' value='" + reviewAttach[i].kmcKey + "'>" +
+								"<input type='hidden' name='kufKeyArr' value='" + reviewAttach[i].kufKey + "'>" +
 								"<br/><span class=\"removes\">Removes image</span>" +
 								"</span>").insertAfter("#fileAdd");
 					}
 				}
-				
+
 			}
 			$(".removes").click(function(){
 				$(this).parent(".pics").remove();
 			});
-			
+
 		}
-	} 
+	}
 	// 마이페이지 LNB 설정
 	fnSetMypageLnbList(7);
 
 	// 마이페이지 location 설정
 	fnSetMypageLocation('리뷰', '_PAGE_MYPAGE_REVIEW');
-	
+
 });
 </script>
 </th:block>

+ 43 - 43
src/main/webapp/WEB-INF/views/web/mypage/MypageReviewFormWeb.html

@@ -39,8 +39,8 @@
 							<div class="com_info_txt">
 								<p class="tit">리뷰 안내</p>
 								<ul>
-									<li>일반 리뷰 작성 시 150P, 포토/영상 리뷰는 350P가 적립됩니다!</li>
-									<li>월 최대 10,000 P까지 적립 가능합니다.(합산 후 월 1회 지급)</li>
+									<li>일반 리뷰 작성 시 150P, 포토/영상 리뷰는 350P가 추가 적립됩니다!</li>
+									<li>상품기준, 월 최대 10개의 상품까지 작성 및 적립 가능합니다.(동일상품의 옵션만 상이한 경우는 적립되지 않음)</li>
 									<li>베스트 리뷰로 선정되면 10,000P가 추가 적립됩니다!</li>
 									<li>리뷰는 주문일 기준 90일간 작성이 가능합니다.</li>
 								</ul>
@@ -65,16 +65,16 @@
 							<div class="sec_foot" id="comNav">
 								<div class="ui_row">
 									<ul class="pageNav" id="paging">
-									
+
 									</ul>
-								</div>																					
+								</div>
 							</div>
 							<div class="sec_foot" id="alrNav">
 								<div class="ui_row">
 									<ul class="pageNav" id="paging2">
-									
+
 									</ul>
-								</div>																					
+								</div>
 							</div>
 							<div class="nodata" id="nodata1" style="display:none;">
 								<div class="txt_box">
@@ -89,13 +89,13 @@
 										작성한 리뷰가 없습니다.<br>
 									</p>
 								</div>
-							</div>  
-						
+							</div>
+
 						</div>
-						
-						
+
+
 					</div>
-					<!-- // CONT-BODY -->					
+					<!-- // CONT-BODY -->
 				</div>
 			</div>
 			<form id="searchForm1" name="searchForm1" th:action="@{'/mypage/complete/review/list'}" th:method="post">
@@ -110,7 +110,7 @@
 	<script src="/ux/plugins/gaga/gaga.paging.js"></script>
 	<script th:inline="javascript">
 	let attachList = [[${alreadyReviewAttach}]];
-	// 작성가능한 리뷰 클릭 시 
+	// 작성가능한 리뷰 클릭 시
 	$("#completeReview").click(function() {
 		$("#alreadyReview").removeClass("active");
 		$("#completeReview").addClass("active");
@@ -120,7 +120,7 @@
 		gagaPaging.init('searchForm1', fnSearchCallback1, 'paging', 10);
 		gagaPaging.load(1);
 	})
-	
+
 	$("#alreadyReview").click(function() {
 		$("#completeReview").removeClass("active");
 		$("#alreadyReview").addClass("active");
@@ -135,10 +135,10 @@
 	var fnSearchCallback1 = function(result) {
 		$('#nodata1').hide();
 		$('#nodata2').hide();
-		
+
 		$('#reviewList').html('');
 
-		
+
 		if (result.dataList1 != null && result.dataList1.length > 0) {
 			$.each(result.dataList1, function(idx, item) {
 				let html = '';
@@ -194,13 +194,13 @@
 		// Create pagination
 		gagaPaging.createPagination(result.paging1.pageable);
 	}
-	
+
 	// 주문 목록 조회 콜백
 	var fnSearchCallback2 = function(result) {
-		
+
 		$('#nodata1').hide();
 		$('#nodata2').hide();
-		
+
 		$('#reviewList').html('');
 		if (result.dataList2 != null && result.dataList2.length > 0) {
 			$.each(result.dataList2, function(idx, item) {
@@ -269,7 +269,7 @@
 				html+='							</div>\n';
 				html+='							<div>\n';
 				html+='								<dl>\n';
-				
+
 				// 2021.08.11 키, 몸무게 정보가 있으면 노출
 				if (item.height > 0 || item.weight > 0 ) {
 					html+='									<div>\n';
@@ -334,12 +334,12 @@
 					html+='								</ul>\n';
 					html+='							</div>\n';
 					html+='						</div>\n';
-					
+
 				}
 				html+='						<div class="txt_review_box"  id="admin_'+item.reviewSq+'">\n';
 				html+='							<p style="white-space:pre;">'+item.reviewContent.escapeHtml()+'</p>\n';
 				html+='						</div>\n';
-				
+
 				if (item.admRpl != null && item.admRpl != '') {
 					html+='						<div class="reply_box" >\n';
 					html+='							<div class="reply">\n';
@@ -353,14 +353,14 @@
 					html+='							</div>\n';
 					html+='						</div>\n';
 				}
-				
+
 				html+='					</div>\n';
 				html+='				</div>\n';
 				html+='			</div>\n';
 				html+='		</div>\n';
 				html+='</div>\n	';
-	
-				
+
+
 				$('#reviewList').append(html);
 			})
 		}else{
@@ -368,11 +368,11 @@
 		}
 		// Create pagination
 		gagaPaging.createPagination(result.paging2.pageable);
-		
+
 	}
-	
-	
-	
+
+
+
 	// 스크롤 이동
 	var fnMove = function(obj) {
         var data = {};
@@ -381,18 +381,18 @@
     	gagajf.ajaxJsonSubmit('/mypage/review/customer/confirm', jsonData,function() {
     		$(".check_notice").html('');
     		$(".check_notice").css("background-color","#ffffff");
-    		
+
 		});
-        
+
     	 var offset = $("#admin_" + obj).offset();
-         $('html, body').animate({scrollTop : offset.top}, 300); 
-         
+         $('html, body').animate({scrollTop : offset.top}, 300);
+
 	}
-	
+
 	// 리뷰삭제
 	var fnDeleteReview = function(obj) {
 		var data = {reviewSq : obj};
-				
+
 		var jsonData = JSON.stringify(data);
 
 		mcxDialog.confirm("작성한 리뷰를 삭제하시겠습니까?", {
@@ -404,29 +404,29 @@
 					mcxDialog.alert("삭제되었습니다.");
 					$("#alrReview").text("("+e.alreadyReviewCount+")");
 					$("#comReview").text("("+e.completeReviewCount+")");
-					$("#alreadyReview").trigger('click');	
+					$("#alreadyReview").trigger('click');
 				});
 			}
 		});
 	}
-	
+
 	// 리뷰 수정
 	var fnReviewUpdate = function(obj1,obj2,obj3) {
 		let ordNo = obj1;
 		let ordDtlNo = obj2;
 		let goodsCd = obj3;
 		let reviewStat = 'u';
-		
+
 		$('#createReview input[name=ordNo]').val(ordNo);
 		$('#createReview input[name=ordDtlNo]').val(ordDtlNo);
 		$('#createReview input[name=goodsCd]').val(goodsCd);
 		$('#createReview input[name=reviewStat]').val(reviewStat);
-		
+
 		document.createReview.submit();
 		// cfnGoToPage(_PAGE_MYPAGE_CREATE_REVIEW + ordNo +'/'+ordDtlNo+'/'+goodsCd+'/'+reviewStat);
 	}
-	
-	
+
+
 	$(document).ready(function() {
 
 		// 마이페이지 LNB 설정
@@ -434,12 +434,12 @@
 
 		// 마이페이지 location 설정
 		fnSetMypageLocation('리뷰', '_PAGE_MYPAGE_REVIEW');
-				
+
 		// 작성가능한 리뷰표시
 		$("#completeReview").trigger('click');
-	
+
 	});
-	
+
 	</script>
 	</th:block>
 

+ 5 - 4
src/main/webapp/ux/mo/css/common_m.css

@@ -147,7 +147,7 @@ i,em {font-style: normal;}
 .ui_col_9{width:75%}
 .ui_col_10{width:83.33333333%}
 .ui_col_11{width:91.66666667%}
-.ui_col_12{width:100%}
+.ui_col_12{width:100% !important;}
 
 /* font color */
 i {font-family:'Noto Sans kr', 'LATO', sans-serif !important; letter-spacing:0;}
@@ -556,7 +556,7 @@ input[type="file"] {
 .btn_more::after{content: ''; position: absolute; right: -0.4rem; bottom: -0.1rem; display: block; width: 0; height: 0; border-top: 0.6rem solid none; border-bottom: 0.6rem solid #b7b7b7; border-right: 0.6rem solid transparent; border-left: 0.6rem solid transparent; -webkit-transform: rotate(135deg); transform: rotate(135deg);}
 .btn_go{position: relative; display: block; width: 100%; height: 5.0rem; color: #ffffff; border:0.1rem solid #222222; background-color: #222222;}
 .btn_waiting{position: relative; display: block; width: 100%; height: 5.0rem; color: #cd0c0d; border:0.1rem  solid #05937b;}
-.btn_waiting::after{content: ''; display: inline-block; width: 1.2rem; height: 1.2rem; margin-left: 1.0rem; background: url("//image.istyle24.com/Style24//image.istyle24.com/Style24/images/icon_download2.png") no-repeat center; background-size: 1.2rem auto;}
+.btn_waiting::after{content: ''; display: inline-block; width: 1.2rem; height: 1.2rem; margin-left: 1.0rem; background: url("//image.istyle24.com/Style24/images/icon_download2.png") no-repeat center; background-size: 1.2rem auto;}
 .btn_primary{color: #ffffff; background-color: #fd4802; border-color: #fd4802;}
 .btn_primary_line{color: #fd4802; background-color: #fff; border-color: #fd4802;}
 .btn_default{color: #333333;background-color: #ffffff;border-color: #dddddd;}
@@ -673,7 +673,7 @@ header.main .htop.bright {background-color: transparent;}
 header.main .btn_gnb span i {background: url(//image.istyle24.com/Style24/images/mo/ico_btn_more.png) no-repeat; background-size: 1.1rem 0.63rem;background-position: 50% 50%;}
 header.main .btn_gnb.on span i {transform: rotate(-180deg);-webkit-transform: rotate(-180deg);}
 
-header .hmenu {position: absolute;left: 0;bottom: 100%;background-color: rgba(0, 0, 0, 0.0);padding: 0 0 0 0;-webkit-box-sizing: border-box;box-sizing: border-box;width: 100%;height: 100vh;-webkit-transition: all 0 ease-out;transition: all 0 ease-out;}
+header .hmenu {position: absolute;left: 0;bottom: 100%;background-color: rgba(0, 0, 0, 0.0);padding: 0 0 0 0;-webkit-box-sizing: border-box;box-sizing: border-box;width: 100%;height: 100vh;-webkit-transition: all 0 ease-out;transition: all 0 ease-out;z-index: -1;}
 header .hmenu .inner {padding: 0;background-color: #fff;position: relative;top: 0;-webkit-transition: all 0.5s ease-out;transition: all 0.5s ease-out;}
 header .hmenu.on {bottom: 0;}
 header .hmenu.on .inner {top: 100%;}
@@ -739,7 +739,8 @@ header .hmenus .bng{position: relative; width:100%; height:100%;background:rgba(
 header .hmenus .bng .lap{position:absolute; top:0; left:0; padding:0; width:100%; background:#fff;}
 header .hmenus .bng .nav_list{min-height:15rem; max-height:40rem; overflow-y:auto;}header .hmenus .bng .nav_list {padding:0;}
 header .hmenus .bng .nav ul > li .daps1{display:block; font-size:1.4rem; color:#666; font-weight:300; line-height:5rem; border-bottom:0.1rem solid #ddd;}
-header .hmenus .bng .nav ul > li .daps2 li > a{display:block; font-size:1.4rem; font-weight:300; color:#222; line-height:4rem;}
+header .hmenus .bng .nav ul > li .daps2 li > a{display:block; font-size:1.4rem; font-weight:300; color:#222; line-height:4rem;position: relative;}
+header .hmenus .bng .nav ul > li .daps2 li > a::after {content: '';display: inline-block;width: 2.0rem;height: 2.0rem;background: url(//image.istyle24.com/Style24/images/mo/ico_full.png) no-repeat;background-size: 0.566rem 0.933rem;-webkit-transform: rotate(0deg);-moz-transform: rotate(0deg);-ms-transform: rotate(0deg);-o-transform: rotate(0deg);transform: rotate(0deg);position: absolute;right: 0.5rem;top:1.0rem;background-position: right center;}
 header .hmenus .bng .nav ul > li .daps2 li.on > a{color:#fd4802; font-weight:500; line-height:5rem;}
 
 header .hmenus .bnb{background-color: #f5f5f5; margin: 3.0rem -2.5rem 0 -2.5rem; padding: 3.0rem 2.5rem; position: relative;}

+ 5 - 2
src/main/webapp/ux/mo/css/layout_m.css

@@ -4,6 +4,7 @@
 /* cs 공통 */
 .cs .pnb ul{padding-left:1rem;}
 .cs .search_wrap{position: relative;}
+.cs .search_wrap::after{content: '';display:block;width: 100%;height:0.2rem;background-color: #000000; position: relative; top:-2.58rem; left:0;}
 .cs .cs_search_input{font-size:1.5rem; height:4.5rem; width:calc(100% - 3.5rem); border:none !important; border-bottom:0.2rem solid #000 !important; position:relative; padding:0 2.5rem 0 0;}
 .cs .cs_search_input:focus+.btn_x{display: block;}
 .cs .search_wrap button.btn_sch {position:absolute; top:0; right:-0.5rem; background:url(//image.istyle24.com/Style24/images/mo/cs_search_btn.png) center center no-repeat; text-indent:-9999px; width:2.2rem; height:4.5rem; padding: 0 2rem;}
@@ -52,7 +53,7 @@
 .cs .foldGroup .fold_head .data{font-family: 'LATO', 'Noto Sans kr', sans-serif;}
 .cs .foldGroup .fold_head .fold_tit {max-width: 82rem;}
 .cs .foldGroup .fold_head .fold_tit .lap1 span{font-weight:200; font-size:1.1rem;}
-.cs .foldGroup .fold_head .fold_tit .lap2 span{font-weight:500;width:100%;text-decoration: none;text-overflow: ellipsis;white-space: nowrap;overflow: hidden;text-align: justify;} /* 0809 */
+.cs .foldGroup .fold_head .fold_tit .lap2 span{font-weight:500;width:100%;text-decoration: none;display: -webkit-box;word-break: break-all;text-overflow: ellipsis;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;white-space: normal;} /* 0809 *//* 0819 */
 .cs .foldGroup .fold_head .fold_state{padding:0.2rem 0.3rem;}
 .cs .foldGroup .fold_cont > div:first-of-type {border-top:0.1rem solid #ddd;}
 .cs .foldGroup .fold_answer .answer_head {margin-bottom:1rem;}
@@ -1895,7 +1896,8 @@
 .dp .nav_box .nav_close{position:absolute; bottom:-3.8rem; left:50%; width:1.6rem; height:1.6rem; background-image: url(//image.istyle24.com/Style24/images/mo/ico_pop_cls_w.png); background-repeat:no-repeat; background-position:center center; font-size:0; text-indent:-999999px; background-size: contain; -webkit-transform:translateX(-50%); transform:translateX(-50%);}
 .dp .nav_box .nav_list {padding:0;}
 .dp .nav_box .nav ul > li .daps1{display:block; font-size:1.4rem; color:#666; font-weight:300; line-height:5rem; border-bottom:0.1rem solid #ddd;}
-.dp .nav_box .nav ul > li .daps2 li > a{display:block; font-size:1.4rem; font-weight:300; color:#222; line-height:4rem;}
+.dp .nav_box .nav ul > li .daps2 li > a{display:block; font-size:1.4rem; font-weight:300; color:#222; line-height:4rem;position: relative;}
+.dp .nav_box .nav  ul > li .daps2 li > a::after {content: '';display: inline-block;width: 2.0rem;height: 2.0rem;background: url(//image.istyle24.com/Style24/images/mo/ico_full.png) no-repeat;background-size: 0.566rem 0.933rem;-webkit-transform: rotate(0deg);-moz-transform: rotate(0deg);-ms-transform: rotate(0deg);-o-transform: rotate(0deg);transform: rotate(0deg);position: absolute;right: 0.5rem;top:1.0rem;background-position: right center;}
 .dp .nav_box .nav ul > li .daps2 li.on > a{color:#fd4802; font-weight:500; line-height:5rem;}
 
 /* 전시 카테고리 공통 */
@@ -2035,6 +2037,7 @@
 /* popup */
 .bulletship-possible {display:block; z-index:100; top:0; left:0; width:100%; background-color:#fff;}
 .bulletship-possible.no {display:block; z-index:100;}
+.input-address {width:100%; padding:2rem 0; border:none; text-align:center; background-color:#f5f5f5; color:#666666; font-size:1.3rem;}
 .bulletShip_pop .input-address {display:flex; flex-wrap:wrap; justify-content:center; align-items:center; width:100%; padding:2rem 0; border:none; text-align:center; background-color:#f5f5f5; color:#666666; font-size:1.3rem;}
 .dim-area {display:block; z-index:200; position:fixed; top:0; left:0; width:100%; height:100%; background-color:rgba(0,0,0, .5); filter:blur(.5);}
 .dim-area .my-inner {position:fixed; top:25%; /* top:50%; */ left:50%; transform:translate(-50%, -50%); width:32rem; height:36.5rem; padding:0 2rem; box-sizing:border-box; background-color:#fff;}

+ 1 - 1
src/main/webapp/ux/mo/css/style24_m.css

@@ -1656,7 +1656,7 @@ main.my .my_wishlist .inner:last-child {padding-bottom: 0;}
 .adrsModify_pop .tbl_wrap:first-child  {padding-top: 2rem;}
 .adrsModify_pop .tbl_wrap .tbl.tbl_dlvr {border-top: 0; padding-top: 0;}
 .adrsModify_pop .tbl_wrap .tbl.tbl_dlvr .input_wrap {display: block; width: 100%; position: relative;}
-.adrsModify_pop .tbl_wrap .tbl.tbl_dlvr .input_wrap button.btn_sch {position: absolute; top: 0; right: 0; border:0; width: 5rem; height: 4.5rem; background:#ffffff url('//image.istyle24.com/Style24/images/mo/ico_search_btn.png') no-repeat center; background-size:2rem; margin-left: 0;}
+.adrsModify_pop .tbl_wrap .tbl.tbl_dlvr .input_wrap button.btn_sch {position: absolute; top: 0; right: 0; border:0; width: 5rem; height: 4.5rem; background:transparent url('//image.istyle24.com/Style24/images/mo/ico_search_btn.png') no-repeat center; background-size:2rem; margin-left: 0;}
 .adrsModify_pop .tbl_wrap .tbl.tbl_dlvr .input_wrap input.form_control + input.form_control {margin-top: -0.1rem;}
 .adrsModify_pop .tbl_wrap .tbl.tbl_dlvr input[type='text'],.adrsModify_pop .tbl_wrap .tbl.tbl_dlvr input[type='number'] {width: 100%; font-size: 1.3rem; color: #888; font-weight: 300;}
 .adrsModify_pop .tbl_wrap .tbl.tbl_dlvr input[type='text']:first-of-type, .adrsModify_pop .tbl_wrap .tbl.tbl_dlvr input[type='number']:first-of-type {padding-right: 5rem;}