Просмотр исходного кода

Merge branch 'develop' into bin2107

bin2107 5 лет назад
Родитель
Сommit
0afc440f06
23 измененных файлов с 359 добавлено и 190 удалено
  1. 24 7
      src/main/java/com/style24/front/biz/web/TsfPgController.java
  2. 4 4
      src/main/resources/config/application-locd.yml
  3. 84 8
      src/main/webapp/WEB-INF/views/mob/goods/GoodsDetailFormMob.html
  4. 2 2
      src/main/webapp/WEB-INF/views/mob/goods/GoodsDetailReviewFormMob.html
  5. 2 2
      src/main/webapp/WEB-INF/views/mob/mypage/MypageExchangeFormMob.html
  6. 12 9
      src/main/webapp/WEB-INF/views/mob/mypage/MypageReturnFormMob.html
  7. 2 2
      src/main/webapp/WEB-INF/views/mob/mypage/NoMemberExchangeFormMob.html
  8. 12 9
      src/main/webapp/WEB-INF/views/mob/mypage/NoMemberReturnFormMob.html
  9. 37 3
      src/main/webapp/WEB-INF/views/mob/order/OrderFormMob.html
  10. 2 1
      src/main/webapp/WEB-INF/views/mob/pg/kcpOrderMob.html
  11. 65 0
      src/main/webapp/WEB-INF/views/web/goods/GoodsDetailFormWeb.html
  12. 6 6
      src/main/webapp/WEB-INF/views/web/mypage/MypageExchangeFormWeb.html
  13. 13 16
      src/main/webapp/WEB-INF/views/web/mypage/MypageReturnFormWeb.html
  14. 6 5
      src/main/webapp/WEB-INF/views/web/mypage/NoMemberExchangeFormWeb.html
  15. 12 7
      src/main/webapp/WEB-INF/views/web/mypage/NoMemberReturnFormWeb.html
  16. 0 64
      src/main/webapp/biz/goods.js
  17. 19 0
      src/main/webapp/biz/payment.js
  18. 7 1
      src/main/webapp/ux/mo/css/layout_m.css
  19. 5 4
      src/main/webapp/ux/mo/css/style24_m.css
  20. 2 2
      src/main/webapp/ux/mo/js/common_m.js
  21. 15 10
      src/main/webapp/ux/pc/css/layout.css
  22. 3 3
      src/main/webapp/ux/pc/js/common-ui.js
  23. 25 25
      src/main/webapp/ux/plugins/approval_key.js

+ 24 - 7
src/main/java/com/style24/front/biz/web/TsfPgController.java

@@ -7,10 +7,9 @@ import com.style24.front.support.controller.TsfBaseController;
 import com.style24.front.support.security.session.TsfSession;
 import com.style24.persistence.domain.Order;
 import com.style24.persistence.domain.Payment;
-import kr.co.kcp.net.connection.ConnectionKCP;
-import kr.co.kcp.net.connection.dto.ParamData;
-import kr.co.kcp.net.connection.util.HttpJsonXml;
-import kr.co.kcp.net.connection.util.OpenHash;
+import kr.co.kcp.net.connection.*;
+import kr.co.kcp.net.connection.dto.*;
+import kr.co.kcp.net.connection.util.*;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.env.Environment;
@@ -24,9 +23,7 @@ import org.springframework.web.servlet.ModelAndView;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
 import java.io.PrintWriter;
-import java.util.Collection;
 
 @Controller
 @RequestMapping("/pg")
@@ -97,6 +94,7 @@ public class TsfPgController extends TsfBaseController {
 	public ModelAndView kcpApproval(Payment param, HttpServletRequest request, HttpServletResponse response, Model model) throws Exception{
 		try {	request.setCharacterEncoding("euc-kr");	} catch(Exception e) {	}
 		response.setContentType("text/html;charset=euc-kr");
+		log.info("CHECK INFO ::::: {}", param.toString());
 		response.setHeader("Cache-Control","no-store");
 		response.setHeader("Pragma","no-cache");
 		response.setDateHeader("Expires",0);
@@ -108,6 +106,14 @@ public class TsfPgController extends TsfBaseController {
 		HttpJsonXml   hjx = new HttpJsonXml();			// 응답값 get value 형식으로 가져올수 있는 Object           ( Java 또는 JSP 내에서 데이터를 파싱할때 필요 - XML 또는 JSON )
 		ParamData pd  = new ParamData();				// 파라메타 값을 세팅할수 있는 bean Object                  ( String, HashMap 등으로 대체 가능 )
 
+		/*pd.setGood_mny(String.valueOf(param.getGoodMny()));
+		pd.setGood_name(param.getGoodName());
+		pd.setOrdr_idxx(param.getOrdrIdxx());
+		pd.setPay_method(param.getPayMethod());
+		pd.setRet_URL(coreOrderService.simpleEncode(param.getRetUrl()));
+		pd.setSite_cd(param.getSiteCd());
+		pd.setEscw_used(param.getEscwUsed() == null ? "" : param.getEscwUsed());*/
+
 		pd.setGood_mny(request.getParameter("good_mny"));
 		pd.setGood_name(request.getParameter("good_name"));
 		pd.setOrdr_idxx(request.getParameter("ordr_idxx"));
@@ -116,12 +122,23 @@ public class TsfPgController extends TsfBaseController {
 		pd.setSite_cd(request.getParameter("site_cd"));
 		pd.setEscw_used(request.getParameter("escw_used") == null ? "" : request.getParameter("escw_used"));
 
+		log.info("CHECK INFO :::::: {}", pd.getGood_mny());
+		log.info("CHECK INFO :::::: {}", pd.getGood_name());
+		log.info("CHECK INFO :::::: {}", pd.getOrdr_idxx());
+		log.info("CHECK INFO :::::: {}", pd.getPay_method());
+		log.info("CHECK INFO :::::: {}", pd.getRet_URL());
+		log.info("CHECK INFO :::::: {}", pd.getSite_cd());
+		log.info("CHECK INFO :::::: {}", pd.getEscw_used());
+
+
 		String responseType = request.getParameter("response_type");
 		if("JSON".equals(responseType) || "XML".equals(responseType)) {
 			pd.setResponse_type(responseType);
 		}
 
-		out.println( suc.kcpPaymentSmartPhone(request, Boolean.parseBoolean(env.getProperty("pg.kcp.server")), pd, env.getProperty("pg.kcp.log.dir"))); // 이클립스 상에서 메서드를 클릭 후 F2를 누르면 상세 내용이 나옵니다.
+		String result = suc.kcpPaymentSmartPhone(request, Boolean.parseBoolean(env.getProperty("pg.kcp.server")), pd, env.getProperty("pg.kcp.log.dir"));
+		log.info("CHECK KCP MOBILE RESULT ::::: {}", result);
+		out.println(result); // 이클립스 상에서 메서드를 클릭 후 F2를 누르면 상세 내용이 나옵니다.
 
 		return null;
 	}

+ 4 - 4
src/main/resources/config/application-locd.yml

@@ -69,10 +69,10 @@ pg:
         js.url: https://testpay.kcp.co.kr/plugin/payplus_web.jsp
         server: false
         site:
-            #cd: U3476
-            #key:
-            cd: T0000
-            key: 3grptw1.zW0GSo4PQdaGvsF__
+            cd: U3476
+            key:
+            #cd: T0000
+            #key: 3grptw1.zW0GSo4PQdaGvsF__
             name: ISTYLE TEST
         log.level: 3
         module.type: 01

+ 84 - 8
src/main/webapp/WEB-INF/views/mob/goods/GoodsDetailFormMob.html

@@ -97,8 +97,8 @@
 							<span class="sale_percent" th:if="${goodsInfo.dcRate > 0}" th:text="|${#numbers.formatDecimal(goodsInfo.dcRate,0,0)}%|">30%</span>
 						</p>
 						<p class="save_point" th:if="${goodsInfo.pntAmt > 0}">스타일포인트 <th:block th:text="${#numbers.formatInteger(goodsInfo.pntAmt, 0,'COMMA')}"></th:block>P 적립예정</p>
-						<div class="btn_group_flex">
-							<div><button type="button" class="btn btn_default" id="btn_saleCoupon_pop" th:if="${goodsCouponList != null and !goodsCouponList.empty}" th:onclick="cfGoodsCouponInfo([[${goodsInfo.goodsCd}]],[[${goodsInfo.goodsType}]])">쿠폰받기</button></div>
+						<div class="btn_group_flex" th:if="${goodsCouponList != null and !goodsCouponList.empty}">
+							<div><button type="button" class="btn btn_default" id="btn_saleCoupon_pop"  th:onclick="cfGoodsCouponInfo([[${goodsInfo.goodsCd}]],[[${goodsInfo.goodsType}]])">쿠폰받기</button></div>
 						</div>
 					</div>
 				</div>
@@ -1099,6 +1099,72 @@
 		}
 	}
 	
+	//사이즈 클릭시 - 단품
+	var fnViewStock = function(obj, goodsCd, optCd, optCd1, optCd2,  minOrdQty, maxOrdQty) {
+		let $obj = $(obj);
+		let selfGoodsYn = $("#cartForm  input[name=selfGoodsYn]").val();
+		let $target = null;
+		if (selfGoodsYn == "Y"){
+			//$target = $obj;
+			$target = $obj.parent().find('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);
+
+				$('.price_box').show();
+				fnSetTotalPrice();
+				
+				// 모바일에서 작업해야함
+				if ('P' != _frontGb) {
+					$("#cartForm  input[name=opt]").parent().find('label').removeClass('on');
+					$("#cartForm  input[name=opt]").each(function(){
+						if ($(this).attr('optCd') == optCd){
+							$(this).parent().find('label').addClass('on');
+						}
+					});
+				}
+			}
+
+		}, "text");
+	}
+	
 	//사이즈 클릭시 - 입점단품
 	var fnViewStockSelfNo = function(obj) {
 		
@@ -1680,13 +1746,23 @@
 		$('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'));	
-				}
-			});	
 			
+			if("G056_N" == $("#cartForm  input[name=goodsType]").val() && "Y" == $("#cartForm  input[name=selfGoodsYn]").val()){
+				let target=$('.opt_size').find('input[name=opt]');
+				target.each(function() {
+					if ($(this).is(":checked")){
+						addPrice += Number($(this).attr('addPrice'));	
+					}
+				});	
+			}else{
+			
+				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;

+ 2 - 2
src/main/webapp/WEB-INF/views/mob/goods/GoodsDetailReviewFormMob.html

@@ -301,7 +301,7 @@
 							<span class="ratio">
 								<em class="progbar" th:style="${'width:'+scoreWeight2+'%;' }" th:styleappend="${scoreWeight2} <= 0 ? '; margin-left:-8px': ''"></em>
 							</span>
-							<span class="percent"><th:block th:text="${scoreWeight2"></th:block>%</span>
+							<span class="percent"><th:block th:text="${scoreWeight2}"></th:block>%</span>
 						</dd>
 					</dl>
 					<dl th:class="${(scoreWeight3 >= scoreWeight1 and scoreWeight3 >= scoreWeight2) ? 'on' : ''}">
@@ -352,7 +352,7 @@
 							<span class="ratio">
 								<em class="progbar" th:style="${'width:'+scoreBall2+'%;' }" th:styleappend="${scoreBall2} <= 0 ? '; margin-left:-8px': ''"></em>
 							</span>
-							<span class="percent"><th:block th:text="${scoreBall2"></th:block>%</span>
+							<span class="percent"><th:block th:text="${scoreBall2}"></th:block>%</span>
 						</dd>
 					</dl>
 					<dl th:class="${(scoreBall3 >= scoreBall1 and scoreBall3 >= scoreBall2) ? 'on' : ''}">

+ 2 - 2
src/main/webapp/WEB-INF/views/mob/mypage/MypageExchangeFormMob.html

@@ -147,7 +147,7 @@
 								<td>
 									<div class="select_custom select_exchange">
 										<div class="combo">
-											<div class="select">교환 사유를 선택하세요.</div>
+											<div class="select">사이즈 변경</div>
 										</div>
 									</div>
 								</td>
@@ -708,7 +708,7 @@ var delvAddrSet = function(delvObj) {
 
 		$('#chgerNm').text(recipNm);
 		$('#chgerPhnno').text(recipPhnno);
-		$('#chgerAddr').html(chgerAddr);
+		$('#chgerAddr').text(chgerAddr);
 	}
 }
 

+ 12 - 9
src/main/webapp/WEB-INF/views/mob/mypage/MypageReturnFormMob.html

@@ -121,7 +121,7 @@
 								<td>
 									<div class="select_custom select_return">
 										<div class="combo">
-											<div class="select">반품 사유를 선택하세요.</div>
+											<div class="select">단순 변심</div>
 										</div>
 									</div>
 								</td>
@@ -185,6 +185,12 @@
 							<button type="button" id="btn_adrsChange_pop" class="btn_popup" onclick="fnChangeDeliveryAddr();"><span>회수지 변경</span></button>
 						</div>
 						<div class="tbl">
+							<input type="hidden" name="chgerNm" 		th:value="${deliveryAddrInfo.recipNm}">
+							<input type="hidden" name="chgerPhnno" 		th:value="${deliveryAddrInfo.recipPhnno}">
+							<input type="hidden" name="chgerZipcode" 	th:value="${deliveryAddrInfo.recipZipcode}">
+							<input type="hidden" name="chgerBaseAddr" 	th:value="${deliveryAddrInfo.recipBaseAddr}">
+							<input type="hidden" name="chgerDtlAddr" 	th:value="${deliveryAddrInfo.recipDtlAddr}">
+							<input type="hidden" name="chgerRtnMemo" 	th:value="${deliveryAddrInfo.delvMemo}">
 							<div class="ship_info">
 								<dl>
 									<div class="name">
@@ -201,12 +207,6 @@
 									</div>
 									<div class="desc_txt">택배사에서 반품 상품을 직접 회수할 장소 선택</div>
 								</dl>
-								<input type="hidden" name="chgerNm" 		th:value="${deliveryAddrInfo.recipNm}">
-								<input type="hidden" name="chgerPhnno" 		th:value="${deliveryAddrInfo.recipPhnno}">
-								<input type="hidden" name="chgerZipcode" 	th:value="${deliveryAddrInfo.recipZipcode}">
-								<input type="hidden" name="chgerBaseAddr" 	th:value="${deliveryAddrInfo.recipBaseAddr}">
-								<input type="hidden" name="chgerDtlAddr" 	th:value="${deliveryAddrInfo.recipDtlAddr}">
-								<input type="hidden" name="chgerRtnMemo" 	th:value="${deliveryAddrInfo.delvMemo}">
 							</div>
 						</div>
 					</div>
@@ -360,7 +360,7 @@
 			<div class="button_list">
 				<th:block th:if="${returnReason}" th:each="oneData, status : ${returnReason}">
 					<button type="button" th:attr="chgReason=${oneData.cd}" onclick="fnChangeReturnReason(this);">
-						<span th:text="${oneData.cdNm}">단순 변심</span>
+						<span th:text="${oneData.cdNm}"></span>
 					</button>
 				</th:block>
 			</div>
@@ -470,6 +470,9 @@ $(document).ready(function() {
 
 	// 타이틀명
 	$('#htopTitle').text('반품 신청');
+
+	// 반품사유 선택 처리
+	$('#returnReasonPop .lap .popup_con .button_list button').eq(0).click();
 });
 
 // 반품수량버튼기능
@@ -744,7 +747,7 @@ var delvAddrSet = function(delvObj) {
 	
 	$('#chgerNm').text(chgerNm);
 	$('#chgerPhnno').text(chgerPhnno);
-	$('#chgerAddr').html(chgerAddr);
+	$('#chgerAddr').text(chgerAddr);
 }
 
 let isValid = false;

+ 2 - 2
src/main/webapp/WEB-INF/views/mob/mypage/NoMemberExchangeFormMob.html

@@ -146,7 +146,7 @@
 								<td>
 									<div class="select_custom select_exchange">
 										<div class="combo">
-											<div class="select">교환 사유를 선택하세요.</div>
+											<div class="select">사이즈 변경</div>
 										</div>
 									</div>
 								</td>
@@ -710,7 +710,7 @@ var delvAddrSet = function(delvObj) {
 
 		$('#chgerNm').text(recipNm);
 		$('#chgerPhnno').text(recipPhnno);
-		$('#chgerAddr').html(chgerAddr);
+		$('#chgerAddr').text(chgerAddr);
 	}
 }
 

+ 12 - 9
src/main/webapp/WEB-INF/views/mob/mypage/NoMemberReturnFormMob.html

@@ -120,7 +120,7 @@
 								<td>
 									<div class="select_custom select_return">
 										<div class="combo">
-											<div class="select">반품 사유를 선택하세요.</div>
+											<div class="select">단순 변심</div>
 										</div>
 									</div>
 								</td>
@@ -184,6 +184,12 @@
 							<button type="button" id="btn_adrsChange_pop" class="btn_popup" onclick="fnChangeDeliveryAddr();"><span>회수지 변경</span></button>
 						</div>
 						<div class="tbl">
+							<input type="hidden" name="chgerNm" 		th:value="${deliveryAddrInfo.recipNm}">
+							<input type="hidden" name="chgerPhnno" 		th:value="${deliveryAddrInfo.recipPhnno}">
+							<input type="hidden" name="chgerZipcode" 	th:value="${deliveryAddrInfo.recipZipcode}">
+							<input type="hidden" name="chgerBaseAddr" 	th:value="${deliveryAddrInfo.recipBaseAddr}">
+							<input type="hidden" name="chgerDtlAddr" 	th:value="${deliveryAddrInfo.recipDtlAddr}">
+							<input type="hidden" name="chgerRtnMemo" 	th:value="${deliveryAddrInfo.delvMemo}">
 							<div class="ship_info">
 								<dl>
 									<div class="name">
@@ -200,12 +206,6 @@
 									</div>
 									<div class="desc_txt">택배사에서 반품 상품을 직접 회수할 장소 선택</div>
 								</dl>
-								<input type="hidden" name="chgerNm" 		th:value="${deliveryAddrInfo.recipNm}">
-								<input type="hidden" name="chgerPhnno" 		th:value="${deliveryAddrInfo.recipPhnno}">
-								<input type="hidden" name="chgerZipcode" 	th:value="${deliveryAddrInfo.recipZipcode}">
-								<input type="hidden" name="chgerBaseAddr" 	th:value="${deliveryAddrInfo.recipBaseAddr}">
-								<input type="hidden" name="chgerDtlAddr" 	th:value="${deliveryAddrInfo.recipDtlAddr}">
-								<input type="hidden" name="chgerRtnMemo" 	th:value="${deliveryAddrInfo.delvMemo}">
 							</div>
 						</div>
 					</div>
@@ -359,7 +359,7 @@
 			<div class="button_list">
 				<th:block th:if="${returnReason}" th:each="oneData, status : ${returnReason}">
 					<button type="button" th:attr="chgReason=${oneData.cd}" onclick="fnChangeReturnReason(this);">
-						<span th:text="${oneData.cdNm}">단순 변심</span>
+						<span th:text="${oneData.cdNm}"></span>
 					</button>
 				</th:block>
 			</div>
@@ -469,6 +469,9 @@ $(document).ready(function() {
 
 	// 타이틀명
 	$('#htopTitle').text('반품 신청');
+
+	// 반품사유 선택 처리
+	$('#returnReasonPop .lap .popup_con .button_list button').eq(0).click();
 });
 
 // 반품수량버튼기능
@@ -749,7 +752,7 @@ var delvAddrSet = function(delvObj) {
 	
 	$('#chgerNm').text(chgerNm);
 	$('#chgerPhnno').text(chgerPhnno);
-	$('#chgerAddr').html(chgerAddr);
+	$('#chgerAddr').text(chgerAddr);
 }
 
 let isValid = false;

+ 37 - 3
src/main/webapp/WEB-INF/views/mob/order/OrderFormMob.html

@@ -24,7 +24,7 @@
 <!-- payment.js -->
 <script type="text/javascript" th:src="${@environment.getProperty('pg.kcp.js.url')}" src=""></script>
 <script type="text/javascript" src="/biz/payment.js"></script>
-<script type="text/javascript" src="/ux/plugins/approval_key.js"></script>
+<script type="text/javascript" src="/ux/plugins/approval_key.js" charset='euc-kr'></script>
 
 <form id="order_info" name="order_info" method="post" action="/order/pay/result/response" ></form>
 
@@ -1262,13 +1262,47 @@ var paymentInfoSet = function() {
 							$("#order_info").html(result);
 							
 							var pgGb = $("#order_info input[name=pgGb]").val();
-							
+
 							if (pgGb == "NAVER") {
 								fnNaverPaymentReady();
 							} else if (pgGb == "KAKAO") {
 								fnKakaoPaymentReady();
 							} else if (pgGb == "KCP" || pgGb == "PAYCO") {
-								jsf__pay(document.order_info);
+								//kcp_AJAX();
+								//jsf__pay(document.order_info);
+								//$("#order_info").attr("action", "/kcp/approval");
+								//$("#order_info").submit();
+								//alert(JSON.stringify($("#order_info").serialize()));
+
+								kcp_AJAX();
+
+								//ajax_flag = false;
+
+								/*let data = {
+									  siteCd : $("#order_info input[name=site_cd]").val()
+									, ordrIdxx : $("#order_info input[name=ordr_idxx]").val()
+									, goodMny : $("#order_info input[name=good_mny]").val()
+									, payMethod : $("#order_info input[name=pay_method]").val()
+									, goodName : $("#order_info input[name=good_name]").val()
+									, responseType : $("#order_info input[name=response_type]").val()
+									, retUrl : $("#order_info input[name=Ret_URL]").val()
+									, escwUsed : $("#order_info input[name=escw_used]").val()
+								}
+
+								$.ajax( {
+									type		: "POST",
+									url 		: '/pg/kcp/approval',
+									data		: JSON.stringify(data),
+									dataType 	: 'json',
+									beforeSend : function(xhr, settings) {
+										xhr.setRequestHeader("AJAX"			, "true");
+										xhr.setRequestHeader('Accept'		, 'application/json');
+										xhr.setRequestHeader('Content-Type'	, 'application/json');
+									},
+									success 	: function(result) {
+										alert("된건가");
+									}
+								});*/
 							}
 						}
 					});

+ 2 - 1
src/main/webapp/WEB-INF/views/mob/pg/kcpOrderMob.html

@@ -28,7 +28,8 @@
 	<input type="hidden" name="quotaopt"		th:value="${payment.quotaopt}"/>	<!-- 최대 할부 개월 수(0 ~ 18까지 설정 가능) -->
 	<input type="hidden" name="ipgm_date"		value=""/>							<!-- 가상계좌설정 -->
 	<input type="hidden" name="PayUrl"			th:value="${'http:' + @environment.getProperty('domain.front') + payment.payUrl}" id="PayUrl"/>	<!-- 결제 정보 등록시 응답 타입 ( 필드가 없거나 값이 '' 일경우 TEXT, 값이 XML 또는 JSON 지원 -->
-	<input type="hidden" name="Ret_URL"			th:value="${'http:' + @environment.getProperty('domain.front') + payment.retUrl}">			<!-- 리턴 URL (kcp와 통신후 결제를 요청할 수 있는 암호화 데이터를 전송 받을 가맹점의 주문페이지 URL) -->
+	<!--<input type="hidden" name="Ret_URL"			th:value="${'http:' + @environment.getProperty('domain.front') + payment.retUrl}">-->			<!-- 리턴 URL (kcp와 통신후 결제를 요청할 수 있는 암호화 데이터를 전송 받을 가맹점의 주문페이지 URL) -->
+	<input type="hidden" name="Ret_URL"			value="http://ldfront.style24.com/order/form" />
 
 	<input type="hidden" name="tablet_size"		value="1.0">						<!-- 화면 크기 조정 -->
 	<input type="hidden" name="response_type"	value="TEXT"/>						<!-- 결제 정보 등록시 응답 타입 ( 필드가 없거나 값이 '' 일경우 TEXT, 값이 XML 또는 JSON 지원 -->

+ 65 - 0
src/main/webapp/WEB-INF/views/web/goods/GoodsDetailFormWeb.html

@@ -1115,6 +1115,71 @@
 		gagajf.ajaxSubmit("/goods/detail/tmtb/frame", "html", "goodsTmtbArea", params);
 	}
 	
+	//사이즈 클릭시 - 단품
+	var fnViewStock = function(obj, goodsCd, optCd, optCd1, optCd2,  minOrdQty, maxOrdQty) {
+		let $obj = $(obj);
+		let selfGoodsYn = $("#cartForm  input[name=selfGoodsYn]").val();
+		let $target = null;
+		if (selfGoodsYn == "Y"){
+			$target = $obj;
+			$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);
+
+				$('.price_box').show();
+				fnSetTotalPrice();
+				
+				// 모바일에서 작업해야함
+				if ('P' != _frontGb) {
+					$("#cartForm  input[name=opt]").parent().find('label').removeClass('on');
+					$("#cartForm  input[name=opt]").each(function(){
+						if ($(this).attr('optCd') == optCd){
+							$(this).parent().find('label').addClass('on');
+						}
+					});
+				}
+			}
+
+		}, "text");
+	}
+	
 	//세트 사이즈 클릭시
 	function fnViewStockSet(obj, goodsCd, optCd1, optCd2, minOrdQty, maxOrdQty) {
 		

+ 6 - 6
src/main/webapp/WEB-INF/views/web/mypage/MypageExchangeFormWeb.html

@@ -196,9 +196,8 @@
 										</tr>
 										<tr>
 											<th>주소</th>
-											<td id="chgerAddr">
-												<span th:text="|${deliveryAddrInfo.recipBaseAddr} ${deliveryAddrInfo.recipDtlAddr}|"></span>
-	<!--											<th:block th:text="|${deliveryAddrInfo.recipBaseAddr} ${deliveryAddrInfo.recipDtlAddr}|"></th:block>-->
+											<td>
+												<span id="chgerAddr" th:text="|${deliveryAddrInfo.recipBaseAddr} ${deliveryAddrInfo.recipDtlAddr}|"></span>
 												<button type="button" class="btn btn_default btn_sm" onclick="fnChangeAddr('chger');"><span>회수지 변경</span></button>
 											</td>
 										</tr>
@@ -615,8 +614,8 @@
 			$('#exchangeForm input[name=recipDtlAddr]').val(recipDtlAddr);
 			$('#exchangeForm input[name=delvMemo]').val(delvMemo);
 		} else if (addrGb == 'chger') {
-			let chgerAddr = recipBaseAddr + ' ' + recipDtlAddr + '\n';
-			chgerAddr += '<button type="button" class="btn btn_default btn_sm" onclick="fnChangeAddr(\'chger\');"><span>회수지 변경</span></button>';
+			//let chgerAddr = recipBaseAddr + ' ' + recipDtlAddr + '\n';
+			//chgerAddr += '<button type="button" class="btn btn_default btn_sm" onclick="fnChangeAddr(\'chger\');"><span>회수지 변경</span></button>';
 
 			$('#exchangeForm input[name=chgerNm]').val(recipNm);
 			$('#exchangeForm input[name=chgerPhnno]').val(recipPhnno);
@@ -627,7 +626,8 @@
 
 			$('#chgerNm').text(recipNm);
 			$('#chgerPhnno').text(recipPhnno);
-			$('#chgerAddr').html(chgerAddr);
+			$('#chgerAddr').text(recipBaseAddr + ' ' + recipDtlAddr);
+			//$('#chgerAddr').html(chgerAddr);
 		}
 	}
 

+ 13 - 16
src/main/webapp/WEB-INF/views/web/mypage/MypageReturnFormWeb.html

@@ -127,7 +127,7 @@
 														<div class="select">반품 사유를 선택하세요.</div>
 														<ul class="list">
 															<!-- 선택처리 class="selected" / 선택불가 aria-disabled="true" 추가  -->
-															<li class="selected">반품 사유를 선택하세요.</li>
+<!--															<li class="selected">반품 사유를 선택하세요.</li>-->
 															<li th:if="${returnReason}" th:each="oneData, status : ${returnReason}" th:attr="chgReason=${oneData.cd}" th:text="${oneData.cdNm}" onclick="fnChangeReturnReason(this);"></li>
 														</ul>
 													</div>
@@ -196,9 +196,8 @@
 										</tr>
 										<tr>
 											<th>주소</th>
-											<td id="chgerAddr">
-												<span th:text="|${deliveryAddrInfo.recipBaseAddr} ${deliveryAddrInfo.recipDtlAddr}|"></span>
-<!--												<th:block th:text="|${deliveryAddrInfo.recipBaseAddr} ${deliveryAddrInfo.recipDtlAddr}|"></th:block>-->
+											<td>
+												<span id="chgerAddr" th:text="|${deliveryAddrInfo.recipBaseAddr} ${deliveryAddrInfo.recipDtlAddr}|"></span>
 												<button type="button" class="btn btn_default btn_sm" onclick="fnChangeDeliveryAddr();"><span>회수지 변경</span></button>
 											</td>
 										</tr>
@@ -320,7 +319,7 @@
 							</p>
 						</div>
 						<div class="btn_footer_area">
-							<button type="button" class="btn btn_default btn_md" onclick="cfnGoToPage(_PAGE_MYPAGE_CRE_LIST)"><span>취소</span></button>
+							<button type="button" class="btn btn_default btn_md" onclick="cfnGoToPage(_PAGE_MYPAGE_ORDER_LIST)"><span>취소</span></button>
 							<button type="button" id="btn_refund_pop" class="btn btn_dark btn_md" onclick="fnReturn()"><span>반품 신청</span></button>
 						</div>
 					</div>
@@ -355,12 +354,6 @@
 		// 마이페이지 location 설정
 		fnSetMypageLocation('취소/반품/교환 내역', '_PAGE_MYPAGE_CRE_LIST', '반품 신청');
 
-		// 반품상품 수량 셀렉트박스 활성화
-		//var goods_count_selecter = new sCombo('.myOrderView .part_goods .select_custom.select_count');
-
-		// 반품사유 셀렉트박스 활성화
-		//var return_reason_selecter = new sCombo('.myOrderView .tbl.type1 td .select_custom.select_reason');
-		
 		// 셀렉트박스 활성화
 		$('.select_custom').each(function() {
 			new sCombo($(this));
@@ -371,6 +364,9 @@
 			$('#withdraw').click();
 			$('.wdGb').css('display','none');
 		}
+
+		// 반품사유 선택 처리
+		$('.select_reason .combo .list li').eq(0).click();
 	});
 
 	// 반품 처리
@@ -410,8 +406,7 @@
 		let accountNm = $('#returnForm input[name=accountNm]').val();
 		let bankCd = $('#returnForm input[name=bankCd]').val();
 
-		//if (paymentInfo.payMeans == 'G014_20' && paymentInfo.payStat == 'G016_30' && (gagajf.isNull(accountNo) || gagajf.isNull(accountNm) || gagajf.isNull(bankCd))) {
-		if (true) {
+		if (paymentInfo.payMeans == 'G014_20' && paymentInfo.payStat == 'G016_30' && (gagajf.isNull(accountNo) || gagajf.isNull(accountNm) || gagajf.isNull(bankCd))) {
 			let data = {};
 			data.ordNo = oneData.ordNo;
 			data.accountNm = oneData.accountNm;
@@ -612,8 +607,9 @@
 		let chgerBaseAddr = delvObj.recipBaseAddr;
 		let chgerDtlAddr = delvObj.recipDtlAddr;
 		let delvMemo = delvObj.delvMemo;
-		let chgerAddr = chgerBaseAddr + ' ' + chgerDtlAddr + '\n';
-		chgerAddr += '<button type="button" class="btn btn_default btn_sm" onclick="fnChangeDeliveryAddr();"><span>회수지 변경</span></button>';
+		let chgerAddr = chgerBaseAddr + ' ' + chgerDtlAddr;
+		//let chgerAddr = chgerBaseAddr + ' ' + chgerDtlAddr + '\n';
+		//chgerAddr += '<button type="button" class="btn btn_default btn_sm" onclick="fnChangeDeliveryAddr();"><span>회수지 변경</span></button>';
 
 		$('#returnForm input[name=chgerNm]').val(chgerNm);
 		$('#returnForm input[name=chgerPhnno]').val(chgerPhnno);
@@ -624,7 +620,8 @@
 		
 		$('#chgerNm').text(chgerNm);
 		$('#chgerPhnno').text(chgerPhnno);
-		$('#chgerAddr').html(chgerAddr);
+		$('#chgerAddr').text(chgerAddr);
+		//$('#chgerAddr').html(chgerAddr);
 	}
 
 	// 환불계좌 등록 콜백 처리

+ 6 - 5
src/main/webapp/WEB-INF/views/web/mypage/NoMemberExchangeFormWeb.html

@@ -195,8 +195,8 @@
 										</tr>
 										<tr>
 											<th>주소</th>
-											<td id="chgerAddr">
-												<span th:text="|${deliveryAddrInfo.recipBaseAddr} ${deliveryAddrInfo.recipDtlAddr}|"></span>
+											<td>
+												<span id="chgerAddr" th:text="|${deliveryAddrInfo.recipBaseAddr} ${deliveryAddrInfo.recipDtlAddr}|"></span>
 												<button type="button" class="btn btn_default btn_sm" onclick="fnChangeAddr('chger');"><span>회수지 변경</span></button>
 											</td>
 										</tr>
@@ -614,8 +614,8 @@
 			$('#exchangeForm input[name=recipDtlAddr]').val(recipDtlAddr);
 			$('#exchangeForm input[name=delvMemo]').val(delvMemo);
 		} else if (addrGb == 'chger') {
-			let chgerAddr = recipBaseAddr + ' ' + recipDtlAddr + '\n';
-			chgerAddr += '<button type="button" class="btn btn_default btn_sm" onclick="fnChangeAddr(\'chger\');"><span>회수지 변경</span></button>';
+			//let chgerAddr = recipBaseAddr + ' ' + recipDtlAddr + '\n';
+			//chgerAddr += '<button type="button" class="btn btn_default btn_sm" onclick="fnChangeAddr(\'chger\');"><span>회수지 변경</span></button>';
 
 			$('#exchangeForm input[name=chgerNm]').val(recipNm);
 			$('#exchangeForm input[name=chgerPhnno]').val(recipPhnno);
@@ -626,7 +626,8 @@
 
 			$('#chgerNm').text(recipNm);
 			$('#chgerPhnno').text(recipPhnno);
-			$('#chgerAddr').html(chgerAddr);
+			$('#chgerAddr').text(recipBaseAddr + ' ' + recipDtlAddr);
+			//$('#chgerAddr').html(chgerAddr);
 		}
 	}
 

+ 12 - 7
src/main/webapp/WEB-INF/views/web/mypage/NoMemberReturnFormWeb.html

@@ -125,7 +125,7 @@
 														<div class="select">반품 사유를 선택하세요.</div>
 														<ul class="list">
 															<!-- 선택처리 class="selected" / 선택불가 aria-disabled="true" 추가  -->
-															<li class="selected">반품 사유를 선택하세요.</li>
+<!--															<li class="selected">반품 사유를 선택하세요.</li>-->
 															<li th:if="${returnReason}" th:each="oneData, status : ${returnReason}" th:attr="chgReason=${oneData.cd}" th:text="${oneData.cdNm}" onclick="fnChangeReturnReason(this);"></li>
 														</ul>
 													</div>
@@ -194,8 +194,8 @@
 										</tr>
 										<tr>
 											<th>주소</th>
-											<td id="chgerAddr">
-												<th:block th:text="|${deliveryAddrInfo.recipBaseAddr} ${deliveryAddrInfo.recipDtlAddr}|"></th:block>
+											<td>
+												<span id="chgerAddr" th:text="|${deliveryAddrInfo.recipBaseAddr} ${deliveryAddrInfo.recipDtlAddr}|"></span>
 												<button type="button" class="btn btn_default btn_sm" onclick="fnChangeDeliveryAddr();"><span>회수지 변경</span></button>
 											</td>
 										</tr>
@@ -317,7 +317,7 @@
 							</p>
 						</div>
 						<div class="btn_footer_area">
-							<button type="button" class="btn btn_default btn_md" onclick="cfnGoToPage(_PAGE_NOMEMBER_CRE_LIST);"><span>취소</span></button>
+							<button type="button" class="btn btn_default btn_md" onclick="cfnGoToPage(_PAGE_NOMEMBER_ORDER_LIST);"><span>취소</span></button>
 							<button type="button" id="btn_refund_pop" class="btn btn_dark btn_md" onclick="fnReturn()"><span>반품 신청</span></button>
 						</div>
 					</div>
@@ -362,6 +362,9 @@
 			$('#withdraw').click();
 			$('.wdGb').css('display','none');
 		}
+
+		// 반품사유 선택 처리
+		$('.select_reason .combo .list li').eq(0).click();
 	});
 
 	// 반품 처리
@@ -606,8 +609,9 @@
 		let chgerBaseAddr = delvObj.recipBaseAddr;
 		let chgerDtlAddr = delvObj.recipDtlAddr;
 		let delvMemo = delvObj.delvMemo;
-		let chgerAddr = chgerBaseAddr + ' ' + chgerDtlAddr + '\n';
-		chgerAddr += '<button type="button" class="btn btn_default btn_sm" onclick="fnChangeDeliveryAddr();"><span>회수지 변경</span></button>';
+		let chgerAddr = chgerBaseAddr + ' ' + chgerDtlAddr;
+		//let chgerAddr = chgerBaseAddr + ' ' + chgerDtlAddr + '\n';
+		//chgerAddr += '<button type="button" class="btn btn_default btn_sm" onclick="fnChangeDeliveryAddr();"><span>회수지 변경</span></button>';
 
 		$('#returnForm input[name=chgerNm]').val(chgerNm);
 		$('#returnForm input[name=chgerPhnno]').val(chgerPhnno);
@@ -618,7 +622,8 @@
 		
 		$('#chgerNm').text(chgerNm);
 		$('#chgerPhnno').text(chgerPhnno);
-		$('#chgerAddr').html(chgerAddr);
+		$('#chgerAddr').text(chgerAddr);
+		//$('#chgerAddr').html(chgerAddr);
 	}
 
 	// 환불계좌 등록 콜백 처리

+ 0 - 64
src/main/webapp/biz/goods.js

@@ -14,70 +14,6 @@ var fnGoodsLikeSearch = function(params) {
 	gagajf.ajaxSubmit("/goods/detail/like/frame", "html", "goodsLikebArea", params);
 }
 
-//사이즈 클릭시 - 단품
-var fnViewStock = function(obj, goodsCd, optCd, optCd1, optCd2,  minOrdQty, maxOrdQty) {
-	let $obj = $(obj);
-	let selfGoodsYn = $("#cartForm  input[name=selfGoodsYn]").val();
-	let $target = null;
-	if (selfGoodsYn == "Y"){
-		$target = $obj;
-		$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);
-
-			$('.price_box').show();
-			fnSetTotalPrice();
-			
-			// 모바일에서 작업해야함
-			if ('P' != _frontGb) {
-				$("#cartForm  input[name=opt]").parent().find('label').removeClass('on');
-				$("#cartForm  input[name=opt]").each(function(){
-					if ($(this).attr('optCd') == optCd){
-						$(this).parent().find('label').addClass('on');
-					}
-				});
-			}
-		}
-
-	}, "text");
-}
-
 
 // EP 쿠폰조회
 var fnEpCouponDown = function(afLinkCd, goodsCd, maxRownum){

+ 19 - 0
src/main/webapp/biz/payment.js

@@ -33,4 +33,23 @@ function jsf__pay( form ) {
 	} catch (e) {
 		/* IE 에서 결제 정상종료시 throw로 스크립트 종료 */
 	}
+}
+
+/* kcp web 결제창 호츨 (변경불가) */
+function call_pay_form()
+{
+	var v_frm = document.order_info;
+
+	v_frm.action = PayUrl;
+
+	if (v_frm.Ret_URL.value == "")
+	{
+		/* Ret_URL값은 현 페이지의 URL 입니다. */
+		alert("연동시 Ret_URL을 반드시 설정하셔야 됩니다.");
+		return false;
+	}
+	else
+	{
+		v_frm.submit();
+	}
 }

+ 7 - 1
src/main/webapp/ux/mo/css/layout_m.css

@@ -650,8 +650,9 @@
 [class*="pd_descrp"] .descrp_box > div > span.tit_desc {display:block; margin-bottom:1rem; font-size:1.3rem; font-weight:500; letter-spacing:-0.025em;}
 [class*="pd_descrp"] .descrp_box > div > p {font-size:1.3rem; font-weight:200; line-height:1.5; word-break:keep-all;}
 [class*="pd_descrp"] .mdhtml_box {margin-top:4rem;}
-[class*="pd_descrp"] .mdhtml_box a{margin:0 -2rem; display:block;}
+[class*="pd_descrp"] .mdhtml_box a{display:block; margin:0 -2rem; padding-top: 26%; overflow: hidden; position: relative;}
 [class*="pd_descrp"] .mdhtml_box img {width:100%;}
+[class*="pd_descrp"] .mdhtml_box img {/*width:100%;*/max-width: none;width: auto;height: 100%;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);}
 [class*="pd_descrp"] .mdhtml_box iframe {display:block; margin-left:auto; margin-right:auto}
 [class*="pd_descrp"] .mdhtml_box .movblock {position:relative; display:block; height:0; line-height:0; margin-left:auto; margin-right:auto; padding-top:56.25%; background:#eee}
 [class*="pd_descrp"] .mdhtml_box .movblock > iframe {position:absolute; left:0; right:0; top:0; bottom:0; width:100%; height:100%; z-index:2}
@@ -1169,6 +1170,11 @@
 .modal.pd_pop.pd_review_pop .riview_box .area_slider{margin-bottom:0;}
 .modal.pd_pop.pd_review_pop .btn_group_flex > div > .btn{height:5.3rem;}
 .modal.pd_pop.pd_review_pop .pd_review .area_rv_empty .btn_group_flex{position:fixed; width: 100%; bottom: 0; left:0; margin-top: 0; z-index:10;}
+.modal.pd_pop.pd_review_pop .btn_default:hover{background-color:#fff;}
+.modal.pd_pop.pd_review_pop .btn_default:focus{background-color:#fff;}
+.modal.pd_pop.pd_review_pop .btn_default:active{background-color:#fff;}
+.modal.pd_pop.pd_review_pop .btn_default.active{background-color:#fff;}
+.modal.pd_pop.pd_review_pop .tgl_dropdown.btn_default{background-color:#fff;}
 .pd_review{background:#f5f5f5;}
 .pd_review.best,
 .pd_review.photo{background:#fff; position:relative; bottom:0; z-index:999; max-height:35rem;}

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

@@ -1175,17 +1175,18 @@ main.container .inner h2[data-style~="unusual"] {font-size:2.0rem;top: 0;positio
 .my .review .tbl_wrap .tbl .password .btn.btn_primary {width: 100%; height: 4.5rem; background: #fff; color:#fd4802}
 .my .review .desc_txt {margin-top: 1.5rem; font-size: 1.1rem; color: #666; font-weight: 200; position: relative; padding-left: 0.6rem;}
 .my .review .desc_txt:before {content:''; position: absolute; left: 0; top: 0.6rem; width: 0.2rem; height: 0.2rem; background: #888;}
-.my .review .btn_group_flex {/*padding:0 0 6rem;*/ margin:0; background: #fff;}
+.my .review .btn_group_flex {/*padding:0 0 6rem;*/ margin:0; background: #fff;} 
 .my .review .tbl_wrap .tbl td .certi_wrap {display: block;}
 .my .review .tbl_wrap .tbl td .certi_wrap .btn {width: 8.6rem; height: 4.5rem; position: absolute; top: 0; right: 0; padding: 0; text-align: center;}
 
 .my .review .tbl_wrap .tbl th.ver_top {vertical-align: top; padding-top: 25px;}
 .my .review .tbl_wrap .tbl th.ver_top02 {vertical-align: top;}
-.my .review .tbl_wrap .tbl td textarea {width: 100%; resize:none; height: 15rem; padding: 15px; font-size: 14px; color: #868686;}
+.my .review .tbl_wrap .tbl td textarea {width: 100%; resize:none; height: 15rem; padding: 1.5rem; padding-bottom: 2.5rem; font-size: 1.2rem; color: #222;}
+.my .review .tbl_wrap .tbl td textarea .txt_cnt {display:block; position:absolute; margin-top:0; right: 1rem; bottom: 0.1rem; text-align: right; font-size: 1.2rem; z-index:1; width:95%; background-color:#fff;}
 .my .review .tbl_wrap .tbl.review_tbl td {padding-left: 0;}
 .my .review .tbl_wrap .tbl.review_tbl td textarea {height: 200px;}
 .my .review .tbl_wrap .tbl td .select {width: 400px;}
-.my .review .tbl_wrap .tbl td .txt_cnt {text-align: right; margin-top: 10px;position: absolute;bottom: 2.0rem;right: 1.0rem;}
+.my .review .tbl_wrap .tbl td .txt_cnt {background: #fff; width: calc(100% - 3.0rem); position: absolute; bottom: 1.6rem; right: 1.5rem; margin-top: 0; padding:0.5rem 0 0.5rem; font-size: 1.3rem; text-align: right; color: #888;}
 .my .review .tbl_wrap .tbl td .rev_height, 
 .my .review .tbl_wrap .tbl td .rev_weight {border:1px solid #ddd; position: relative;}
 .my .review .tbl_wrap .tbl td .rev_height input, 
@@ -1283,7 +1284,7 @@ main.container .inner h2[data-style~="unusual"] {font-size:2.0rem;top: 0;positio
 .tbl_wrap .tbl {padding:1.5rem 0 0; border-top:1px solid #000; border-bottom:0;} 
 .tbl_wrap .tbl table {text-align:left; word-break:keep-all; width: 100%;}
 .tbl_wrap .tbl table th,
-.tbl_wrap .tbl table td {position:relative; padding:0; font-weight:500; font-size:1.3rem; padding-bottom: 1.5rem; vertical-align: top; word-break: break-all;}
+.tbl_wrap .tbl table td {position:relative; padding:0; font-weight:300; font-size:1.3rem; padding-bottom: 1.5rem; vertical-align: top; word-break: break-all;}
 .tbl_wrap .tbl table th {font-weight:300; color: #888; font-size: 1.3rem; padding-right:1rem;}
 .tbl_wrap .tbl table th.sr-only {position: absolute;}
 .tbl_wrap .tbl table tr:last-child th, .tbl_wrap .tbl table tr:last-child td {padding-bottom: 0;}

+ 2 - 2
src/main/webapp/ux/mo/js/common_m.js

@@ -161,7 +161,7 @@ $(document).ready(function() {
                         var file = e.target;
                         console.log(file);
                         $("<span class=\"pics\">" +
-                            "<img class=\"picsThumbs\" src=\"" + e.target.result + "\"/>" +
+                            "<img class=\"picsThumbs\" src=\"" + e.target.result + "\" title=\"" + file.name + "\"/>" +
                             "<br/><span class=\"removes\">Removes image</span>" +
                             "</span>").insertBefore(".fileAdd");
                         $(".removes").click(function(){
@@ -209,7 +209,7 @@ $(document).ready(function() {
                     fileReader.onload = (function(e) {
                         var file = e.target;
                         $("<span class=\"pics\">" +
-                            "<img class=\"picsThumbs\" src=\"" + e.target.result + "\"/>" +
+                            "<img class=\"picsThumbs\" src=\"" + e.target.result + "\" title=\"" + file.name + "\"/>" +
                             "<br/><span class=\"removes\">Removes image</span>" +
                             "</span>").insertBefore(".fileAdd");
                         $(".removes").click(function(){

+ 15 - 10
src/main/webapp/ux/pc/css/layout.css

@@ -134,7 +134,7 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 .common_header .search button{float:right; margin:4px 0 0 0}
 .common_header .search .btn_open_search {display:none; float:left; margin-right:20px; margin-top:5px}
 .common_header .search .btn_cart {margin-top:4px}
-.common_header .search .circle_count{display:inline-block;width:23px;height:23px;margin-left:5px; font-size:7px;text-align:center;line-height:2.5;color:#fff;background:#fd4802;border-radius:50%; position:absolute; top:-10px; right:-18px; bottom:auto; left:auto;}
+.common_header .search .circle_count{display:inline-block;width:23px;height:23px;margin-left:5px; font-size:10px;text-align:center;line-height:2.5;color:#fff;background:#fd4802;border-radius:50%; position:absolute; top:-10px; right:-18px; bottom:auto; left:auto;}
 .common_header .search .circle_count.red{background:#fd4802}
 .common_header .nav > ul.btn_home {display:none;}
 .common_header .black_screen {position: fixed; width: 100%; height: 100%; background: rgba(0,0,0,0.7); z-index: 88; display:none;}
@@ -916,7 +916,7 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 .tbl.type1 table {text-align:left; word-break:keep-all;}
 .tbl.type1 table th,
 .tbl.type1 table td {position:relative; /*padding:10px 40px;*/ font-weight:200; font-size:16px; letter-spacing:-0.025em;}
-.tbl.type1 table th {padding:10px 0px 10px 40px; font-weight:500;}
+.tbl.type1 table th {padding:10px 0px 10px 40px; font-weight:500; text-align: left;}
 .tbl.type1 table td {padding:10px 40px 10px 0px;}
 .tbl.type1 table tr td:first-child {padding-left:40px}
 .tbl.type1 table tr td:last-child {padding-right:40px;}
@@ -1660,7 +1660,7 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 	.dp .itemsGrp.cut2 {margin:0 -10px;margin: 0 auto;display: inline-block;padding: 0 calc((58% - 20px)/2);}
 	.dp .itemsGrp.cut2 .item_prod {width: calc((100% - 0px)/2);}
 	.dp .itemsGrp.cut3 {margin:0 -10px;margin: 0 auto;display: inline-block;padding: 0 calc((42.8% - 20px)/2);}
-	.dp .itemsGrp.cut3 .item_prod {width: calc((100% - 0px)/3);}
+	.dp .itemsGrp.cut3 .item_prod {width: calc((100% - 1px)/3);}
 	.dp .itemsGrp.cut4 {margin:0 -10px;margin: 0 auto;display: inline-block;padding: 0 calc((28.8% - 20px)/2);}
 	.dp .itemsGrp.cut4 .item_prod {width: calc((100% - 0px)/4);}
 	.dp .wrap {padding-bottom:160px;}
@@ -1775,7 +1775,7 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 	.dp_best_top100 .ui_row .ui_col_12 .form_field {justify-content: flex-end;}
 	.dp_best_top100 .ui_row .ui_col_12 .select_custom {width:180px;}
 	.dp_best_top100 .ui_row .ui_col_12 .select_custom:first-child {margin-right: 10px;}
-	.dp_best_top100 .select_custom .combo .list {border-top:1px solid #ddd; z-index: 99;}
+	.dp_best_top100 .select_custom .combo .list {border-top:1px solid #ddd; z-index: 100;}
 	.dp_best_top100 .select_custom .combo .list > li {padding-left:15px; padding-right:15px; font-size:14px; line-height:40px;}
 	.dp_best_top100 .select_custom .combo .select {font-size: 14px; padding:14px 15px;}
 	.dp_best_top100 .list_content .item_prod {width: 20%;}
@@ -1890,7 +1890,7 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 	.dp .dp_btn_area {padding-bottom:20px;}
 	.dp .dp_btn_area .cont_head {display:none;}
 	.dp .dp_btn_area .btn_wrap {text-align:center; margin:0;}
-	.dp .dp_btn_area .btn_wrap .btn {min-width:220px; height:60px; font-size:18px; font-weight:300; line-height:normal;}
+	.dp .dp_btn_area .btn_wrap .btn {min-width:220px; height:60px; font-size:18px; font-weight:300; line-height:35px;}
 	.dp .dp_btn_area .btn_wrap .btn.go_next span {display:inline-block; padding-right:20px; background:url('/images/pc/ico_bread_root_w.png') no-repeat 100% 50%;}
 
 	/* dp_기획전상세 : 리얼후기 */	
@@ -2597,7 +2597,10 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 	.nonMBorder .agree_nombPrivacy label span {font-size:18px;}
 	.nonMBorder .agree_nombPrivacy label span .tmark_required {display:inline-block; margin-top:2px; font-size:14px; vertical-align:top;}
 	.nonMBorder .agree_nomb_txt_box {margin-bottom:40px; padding:35px 40px; border:1px solid #ddd;}
-	.nonMBorder .agree_nomb_txt_box > div {overflow:auto; max-height:160px; color:#888; font-size:14px; line-height:1.5; font-weight:200;}
+	.nonMBorder .agree_nomb_txt_box > div {overflow:auto; max-height:160px; color:#888; font-size:14px; line-height:1.5; font-weight:200; padding-right: 15px;}
+	.nonMBorder .agree_nomb_txt_box > div::-webkit-scrollbar {width:2px;}
+	.nonMBorder .agree_nomb_txt_box > div::-webkit-scrollbar-thumb {background-color:#222222; /*border-radius:50px; -webkit-border-radius:50px;*/ background-clip:padding-box; width: 4px;}
+	.nonMBorder .agree_nomb_txt_box > div::-webkit-scrollbar-track {background-color:#dddddd; /*border-radius:50px; -webkit-border-radius:50px;*/}
 	.nonMBorder .adress_area {}
 	.nonMBorder .adress_area dl {padding:20px 14px 0}
 	.nonMBorder .adress_area dl div {margin-top:15px;} 
@@ -2944,7 +2947,8 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 	[class*="pd_descrp"] .descrp_box > div:first-child {margin-top:0;}
 	[class*="pd_descrp"] .descrp_box > div > span.tit_desc {display:block; margin-bottom:10px; font-size:18px; font-weight:500; letter-spacing:-0.025em;}
 	[class*="pd_descrp"] .descrp_box > div > p {font-size:16px; font-weight:200; line-height:1.5; word-break:keep-all;}
-	[class*="pd_descrp"] .mdhtml_box {margin-top:80px}
+	[class*="pd_descrp"] .mdhtml_box {margin-top:80px;text-align: center;}
+	[class*="pd_descrp"] .mdhtml_box p{text-align: center;}
 	[class*="pd_descrp"] .mdhtml_box img {max-width:100%;}
 	[class*="pd_descrp"] .mdhtml_box iframe {display:block; margin-left:auto; margin-right:auto}
 	[class*="pd_descrp"] .mdhtml_box .movblock {position:relative; display:block; height:0; line-height:0; margin-left:auto; margin-right:auto; padding-top:56.25%; background:#eee}
@@ -4236,7 +4240,7 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 	.my .myCoupon .content_area {margin-top:60px}
 	.my .myCoupon .content_area .coupon_list::after {content:''; clear:both; display:block;}
 	.my .myCoupon .content_area .coupon_list ul {margin-top:-20px}
-	.my .myCoupon .content_area .coupon_list li {float:left; width:calc((100% - 60px) * 0.25); margin-left:20px; margin-top:20px;}
+	.my .myCoupon .content_area .coupon_list li {float:left; width:calc(25% - 15px); margin-left:20px; margin-top:20px;} /* 210517_수정 : IE 1380px 이하 대응. */
 	.my .myCoupon .content_area .coupon_list li:nth-child(4n-3) {margin-left:0}
 
 	/* my_myWishlist : 위시리스트 */
@@ -4508,10 +4512,11 @@ ul.maintabs li [class^='box_depth'] {display:none; position:absolute; left:100%;
 	/* popup_배송지 변경 팝업 */	
 	.modal.adrsChange_pop {width:600px; max-width:none; height:auto;}
 	.modal.adrsChange_pop .modal-footer {margin-top:0; margin-left:-60px; margin-right:-60px; margin-bottom:-60px;}
-	.modal.adrsChange_pop .modal-body .pop_cont {max-height:510px !important; margin-left:-20px; margin-right:-20px; padding:0 20px 60px; line-height:1;}
+	.modal.adrsChange_pop .modal-body .pop_cont {max-height:510px !important; margin-left:-20px; margin-right:-20px; padding:0 20px; line-height:1;}
+	.modal.adrsChange_pop .modal-body .pop_cont ul {padding-bottom: 60px;}
 	.modal.adrsChange_pop .modal-body .pop_cont.nodata ul {display: none;}
 	.modal.adrsChange_pop .modal-body .pop_cont.nodata .empty_txt {display: block;}
-	.modal.adrsChange_pop .modal-body .pop_cont .empty_txt {display: none; padding:80px 0;}
+	.modal.adrsChange_pop .modal-body .pop_cont .empty_txt {display: none; padding:80px 0 140px;}
 	.modal.adrsChange_pop button span {line-height:1;}
 	.modal.adrsChange_pop .btn.btn_sm {min-width:70px; height:34px; padding-top:9px; font-size:14px; font-weight:300;}
 	.modal.adrsChange_pop .form_field,

+ 3 - 3
src/main/webapp/ux/pc/js/common-ui.js

@@ -91,7 +91,7 @@ $(document).ready(function() {
 					var file = e.target;
 					console.log(file);
 					$("<span class=\"pics\">" +
-						"<img class=\"picsThumbs\" src=\"" + e.target.result + "\"/>" +
+						"<img class=\"picsThumbs\" src=\"" + e.target.result + "\" title=\"" + file.name + "\"/>" +
 						"<br/><span class=\"removes\">Removes image</span>" +
 						"</span>").insertAfter("#fileAdd");
 					$(".removes").click(function(){
@@ -481,10 +481,10 @@ $(document).ready( function() {
 			$('.sticky_nav li').find('a').removeClass('active');
 
 			var $menu     = $('.sticky_nav li a'),
-				$contents = $(".list_content > div");
+				$contents = $(".list_content > div.dp_item_list"); //210517_ 수정 : 전시 브랜드별 상품리스트 특정 class .dp_item_list 추가. 
 
 			$.each($contents, function(idx, item){
-				var $target   = $(".list_content > div").eq(idx),
+				var $target   = $(".list_content > div.dp_item_list").eq(idx), //210517_ 수정 : 전시 브랜드별 상품리스트 특정 class .dp_item_list 추가. 
 					i         = $target.index(),
 					targetHeader = $(".sticky_nav").outerHeight() + 30,
 					targetTop = $target.offset().top - targetHeader;

+ 25 - 25
src/main/webapp/ux/plugins/approval_key.js

@@ -28,14 +28,14 @@
 
     function kcp_AJAX()
     {
-        // 해당 소스는 jQuery를 사용 하지 않는 업체에서도 작동 할수 있도록 구현되었습니다.
-        // 이 부분은 javascript로 구현시 jQuery를 이용하면 더욱 쉽게 구현 할수 있습니다. 
-        // 또는
-        // javascript를 통한 ajax 통신을 할 필요 없이 소스내에 order_approval.jsp를 연동해서 사용 하셔도 관계 없으며
-        // 제공되는 jar 파일에 직접 전달된 데이터를 사용할수 있도록 method가 구현 되어 있습니다.
+        // 占쌔댐옙 占쌀쏙옙占쏙옙 jQuery占쏙옙 占쏙옙占� 占쏙옙占쏙옙 占십댐옙 占쏙옙체占쏙옙占쏙옙占쏙옙 占쌜듸옙 占쌀쇽옙 占쌍듸옙占쏙옙 占쏙옙占쏙옙占실억옙占쏙옙占싹댐옙.
+        // 占쏙옙 占싸븝옙占쏙옙 javascript占쏙옙 占쏙옙占쏙옙占쏙옙 jQuery占쏙옙 占싱울옙占싹몌옙 占쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙占쏙옙 占쌀쇽옙 占쌍쏙옙占싹댐옙. 
+        // 占실댐옙
+        // javascript占쏙옙 占쏙옙占쏙옙 ajax 占쏙옙占쏙옙占� 占쏙옙 占십울옙 占쏙옙占쏙옙 占쌀쏙옙占쏙옙占쏙옙 order_approval.jsp占쏙옙 占쏙옙占쏙옙占쌔쇽옙 占쏙옙占� 占싹셔듸옙 占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙
+        // 占쏙옙占쏙옙占실댐옙 jar 占쏙옙占싹울옙 占쏙옙占쏙옙 占쏙옙占쌨듸옙 占쏙옙占쏙옙占싶몌옙 占쏙옙占쏙옙寗占� 占쌍듸옙占쏙옙 method占쏙옙 占쏙옙占쏙옙 占실억옙 占쌍쏙옙占싹댐옙.
         if(ajax_flag)
         {
-            var url    = "order_approval.jsp";
+            var url    = "http://ldfront.style24.com/pg/kcp/approval";
             var form = document.order_info;
             var params = "?site_cd=" + form.site_cd.value
                        + "&ordr_idxx=" + form.ordr_idxx.value
@@ -51,7 +51,7 @@
         }
         else
         {
-            alert("통신 중입니다. 잠시만 기다려 주세요.");
+            alert("占쏙옙占� 占쏙옙占쌉니댐옙. 占쏙옙첩占� 占쏙옙慕占� 占쌍쇽옙占쏙옙.");
         }
             
     }
@@ -64,31 +64,31 @@
             {
                 if ( req01_AJAX.responseText != null )
                 {
-                    // 해당 소스는 jQuery를 사용 하지 않는 업체에서도 작동 할수 있도록 구현되었습니다.
-                    // 이 부분은 javascript로 구현시 jQuery를 이용하면 더욱 쉽게 구현 할수 있습니다. 
-                    // 또는
-                    // javascript를 통한 ajax 통신을 할 필요 없이 소스내에 order_approval.jsp를 연동해서 사용 하셔도 관계 없으며
-                    // 제공되는 jar 파일에 직접 전달된 데이터를 사용할수 있도록 method가 구현 되어 있습니다.
+                    // 占쌔댐옙 占쌀쏙옙占쏙옙 jQuery占쏙옙 占쏙옙占� 占쏙옙占쏙옙 占십댐옙 占쏙옙체占쏙옙占쏙옙占쏙옙 占쌜듸옙 占쌀쇽옙 占쌍듸옙占쏙옙 占쏙옙占쏙옙占실억옙占쏙옙占싹댐옙.
+                    // 占쏙옙 占싸븝옙占쏙옙 javascript占쏙옙 占쏙옙占쏙옙占쏙옙 jQuery占쏙옙 占싱울옙占싹몌옙 占쏙옙占쏙옙 占쏙옙占쏙옙 占쏙옙占쏙옙 占쌀쇽옙 占쌍쏙옙占싹댐옙. 
+                    // 占실댐옙
+                    // javascript占쏙옙 占쏙옙占쏙옙 ajax 占쏙옙占쏙옙占� 占쏙옙 占십울옙 占쏙옙占쏙옙 占쌀쏙옙占쏙옙占쏙옙 order_approval.jsp占쏙옙 占쏙옙占쏙옙占쌔쇽옙 占쏙옙占� 占싹셔듸옙 占쏙옙占쏙옙 占쏙옙占쏙옙占쏙옙
+                    // 占쏙옙占쏙옙占실댐옙 jar 占쏙옙占싹울옙 占쏙옙占쏙옙 占쏙옙占쌨듸옙 占쏙옙占쏙옙占싶몌옙 占쏙옙占쏙옙寗占� 占쌍듸옙占쏙옙 method占쏙옙 占쏙옙占쏙옙 占실억옙 占쌍쏙옙占싹댐옙.
                     try
                     {
                         var form = document.order_info;
                         
                         if( form.response_type.value == "JSON" )
                         {
-                            StateChangeForJSON( req01_AJAX ); // JSON 방식일 경우
+                            StateChangeForJSON( req01_AJAX ); // JSON 占쏙옙占쏙옙占� 占쏙옙占�
                         }
                         else if( form.response_type.value == "XML" )
                         {
-                            StateChangeForXML( req01_AJAX ); // XML 방식일 경우
+                            StateChangeForXML( req01_AJAX ); // XML 占쏙옙占쏙옙占� 占쏙옙占�
                         }
                         else if( form.response_type.value == "TEXT" || form.response_type.value == "" )
                         {
-                            StateChangeForText( req01_AJAX ); // TEXT 방식일 경우
+                            StateChangeForText( req01_AJAX ); // TEXT 占쏙옙占쏙옙占� 占쏙옙占�
                         }
                     }
                     catch( e )
                     {
-                        StateChangeForText( req01_AJAX ); // TEXT 방식일 경우
+                        StateChangeForText( req01_AJAX ); // TEXT 占쏙옙占쏙옙占� 占쏙옙占�
                     }
                 }
             }
@@ -107,8 +107,8 @@
         if( txt[0].replace(/^\s*/,'').replace(/\s*$/,'') == '0000' )
         {
             document.getElementById( "approval" ).value = txt[1].replace(/^\s*/,'').replace(/\s*$/,'');
-            // 아래 alert는 삭제 해도됨
-            alert("성공적으로 거래가 등록 되었습니다.");
+            // 占싣뤄옙 alert占쏙옙 占쏙옙占쏙옙 占쌔듸옙占쏙옙
+            alert("占쏙옙占쏙옙占쏙옙占쏙옙占쏙옙 占신뤄옙占쏙옙 占쏙옙占� 占실억옙占쏙옙占싹댐옙.");
             PayUrl = decodeURIComponent( txt[2].replace(/^\s*/,'').replace(/\s*$/,'') );
             
             document.getElementById( "traceNo" ).value = txt[3].replace(/^\s*/,'').replace(/\s*$/,'');
@@ -123,7 +123,7 @@
             var res_msg = txt[2].replace(/^\s*/,'').replace(/\s*$/,'');
             
             ajax_flag=true;
-            alert("실패 되었습니다.[" + res_msg + "]");
+            alert("占쏙옙占쏙옙 占실억옙占쏙옙占싹댐옙.[" + res_msg + "]");
         }
     }
     
@@ -136,8 +136,8 @@
         if( x[0].getElementsByTagName( "Code" )[0].childNodes[0].nodeValue == '0000' )
         {
             document.getElementById( "approval" ).value = x[0].getElementsByTagName( "approvalKey" )[0].childNodes[0].nodeValue;
-            // 아래 alert는 삭제 해도됨
-            alert("성공적으로 거래가 등록 되었습니다.");
+            // 占싣뤄옙 alert占쏙옙 占쏙옙占쏙옙 占쌔듸옙占쏙옙
+            alert("占쏙옙占쏙옙占쏙옙占쏙옙占쏙옙 占신뤄옙占쏙옙 占쏙옙占� 占실억옙占쏙옙占싹댐옙.");
             PayUrl = x[0].getElementsByTagName( "PayUrl" )[0].childNodes[0].nodeValue;
             
             document.getElementById( "traceNo" ).value = x[0].getElementsByTagName( "traceNo"     )[0].childNodes[0].nodeValue;
@@ -152,7 +152,7 @@
         {
             ajax_flag=true;
             
-            alert("실패 되었습니다.[" + x[0].getElementsByTagName( "Message" )[0].childNodes[0].nodeValue + "]");
+            alert("占쏙옙占쏙옙 占실억옙占쏙옙占싹댐옙.[" + x[0].getElementsByTagName( "Message" )[0].childNodes[0].nodeValue + "]");
         }
     }
     
@@ -164,8 +164,8 @@
         if( json.Code == '0000' )
         {
             document.getElementById( "approval" ).value = json.approvalKey;
-            // 아래 alert는 삭제 해도됨
-            alert("성공적으로 거래가 등록 되었습니다.");
+            // 占싣뤄옙 alert占쏙옙 占쏙옙占쏙옙 占쌔듸옙占쏙옙
+            alert("占쏙옙占쏙옙占쏙옙占쏙옙占쏙옙 占신뤄옙占쏙옙 占쏙옙占� 占실억옙占쏙옙占싹댐옙.");
             PayUrl = json.PayUrl;
             
             document.getElementById( "PayUrl"  ).value = json.request_URI;
@@ -177,6 +177,6 @@
         {
             ajax_flag=true;
             
-            alert("실패 되었습니다.[" + json.Message + "]");
+            alert("占쏙옙占쏙옙 占실억옙占쏙옙占싹댐옙.[" + json.Message + "]");
         }
     }