| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075 |
- <!DOCTYPE html>
- <html lang="ko"
- xmlns:th="http://www.thymeleaf.org"
- xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
- layout:decorator="mob/common/layout/SubLayoutMob">
- <!--
- *******************************************************************************
- * @source : PlanningDetailFormMob.html
- * @desc : 기획전/이벤트 상세 Page
- *============================================================================
- * STYLE24
- * Copyright(C) 2020 TSIT, All rights reserved.
- *============================================================================
- * VER DATE AUTHOR DESCRIPTION
- * === =========== ========== =============================================
- * 1.0 2021.05.12 sowon 최초 작성
- *******************************************************************************
- -->
- <body>
- <th:block layout:fragment="content">
- <script src="https://developers.kakao.com/sdk/js/kakao.min.js"></script>
- <main role="" id="" class="container dp">
- <section class="content">
- <div class="inner">
- <div class="promotion_tit">
- <h3 th:text="${planInfo.planNm}"></h3>
- <div class="period">
- <span th:text="${planInfo.dispStdt}"></span> - <span th:text="${planInfo.dispEddt}"></span>
- </div>
- <button type="button" class="share_btn"><img src="/images/mo/ico_share_btn.png" alt="공유" /></button>
- </div>
- </div>
- <div class="inner wide">
- <div class="promotion_visual type1" th:if="${fsrcInfoTop != null}" th:utext="${#strings.replace(#strings.replace(fsrcInfoTop.fsrcMob,'&lt;','<'),'&gt;','>')}">>
- </div>
- </div>
- <th:block th:each="a, template : ${templateOrd}">
- <th:block th:if="${a.tmplType == 'G082_10'}">
- <div class="inner bg_gray" th:id="${a.tmplType}">
- </div>
- </th:block>
- <th:block th:if="${a.tmplType == 'G082_20'}">
- <div class="inner" th:id="${a.tmplType}">
- </div>
- </th:block>
- <th:block th:if="${a.tmplType == 'G082_30'}"><!-- 이미지 -->
- <div class="inner wide" th:id="${a.tmplType}">
- </div>
- </th:block>
- <th:block th:if="${a.tmplType == 'G082_50'}">
- <div class="inner wide" th:id="${a.tmplType + a.planContSq}">
- </div>
- </th:block>
- <th:block th:if="${a.tmplType == 'G082_51'}">
- <div class="inner" th:id="${a.tmplType + a.planContSq}">
- <div class="dp_listItems_wrap">
- <h2 class="dp_subtitle">
- <a th:if="${a.linkUrl!=null && a.linkUrl!=''}" th:href="${a.linkUrl}" th:text="${a.title}"></a>
- <a th:unless="${a.linkUrl!=null && a.linkUrl!=''}" href="javascript:void(0)" th:text="${a.title}"></a>
- </h2>
- <div class="itemsGrp" th:id="'group_'+${a.planContSq}">
- </div>
- <button class="btn btn_default" th:id="'moreBtn_'+${a.planContSq}" th:onclick="moreBtn([[${a.planContSq}]])">더보기</button>
- </div>
- </div>
- </th:block>
- <th:block th:if="${a.tmplType == 'G082_52'}">
- <div class="inner" th:id="${a.tmplType + a.planContSq}">
- </div>
- </th:block>
- </th:block>
-
- <div class="inner" th:if="${fsrcInfoBtm != null}" th:utext="${#strings.replace(#strings.replace(fsrcInfoBtm.fsrcMob,'&lt;','<'),'&gt;','>')}"></div>
- <div class="inner" th:if="${planInfo.pollSq != null}">
- <div class="dp_btn_area">
- <div class="btn_wrap">
- <a href="javascript:;" id="btn_survey" class="btn btn_primary" onclick="javascript:fnJoinConfirm()"><span>설문조사 참여하기</span></a>
- </div>
- </div>
- </div>
-
- <!-- 댓글리스트 -->
- <th:block th:if="${planInfo.replyYn == 'Y'}">
- <div class="inner wide">
- <form action="" class="form_wrap">
- <div class="cmt_wrap">
- <div class="cmt_write">
- <div class="cmt_tarea">
- <div class="form_field">
- <div class="ui_col_12 comment_textarea">
- <div class="input_wrap">
- <textarea class="doc_contactus" name="replyText" id="replyText" placeholder="500자 이내로 입력해 주세요." style="resize: none;" onclick="fnTextConfirm()" maxlength="500"></textarea>
- <p class="txt_cnt">
- <span id="contactus_cnt" class="contactus_cnt"><em class="c_primary" id="cmt_cnt">0</em>/500</span>
- </p>
- </div>
- </div>
- </div>
- </div>
- <div class="cmt_thumb">
- <div class="form_field">
- <div class="input_wrap">
- <div class="form_field">
- <div class="imgUpload">
- <label for="fileAdd" class="fileAdd" id="fileAdd_reply">첫번째업로드</label>
- <input type="file" id="fileAdd" name="files" accept=".jpeg, .jpg, .png">
- </div>
- </div>
- </div>
- </div>
- </div>
- <div class="btn_wrap">
- <button type="button" id="btn_cmt_regist" class="btn btn_dark" onclick="fnReplySave()"><span>등록</span></button>
- </div>
- </div>
- <!-- 댓글 -->
- <div class="cmt_group" id="replyList">
-
- <!-- <div class="paging_wrap">
- <ul class="pageNav">
- <li class="prev"><a href="#"><span class="sr-only">이전</span></a></li>
- <li class="active">01</li>
- <li>/</li>
- <li>10</li>
- <li class="next"><a href="#"><span class="sr-only">다음</span></a></li>
- </ul>
- </div> -->
- <!-- 임시 -->
- <div class="paging_wrap">
- <ul class="pageNav" id="paging">
- </ul>
- </div>
- <!-- 임시 -->
- </div>
- </div>
- </form>
- </div>
- </th:block>
-
- <th:block th:if="${#lists.size(planCornerList)}>0">
- <div class="inner" id="cornerInner">
- <div class="dp_listItems_wrap typeSelector">
- <div class="items_option">
- <div class="open_categori" style="position: relative; width: 100%; z-index: 0;">
- <a id="filter"></a>
- </div>
- </div>
- </div>
- </div>
- <div id="cornerGoodsList"></div>
- </th:block>
- <div class="inner">
- <div class="other_promotion_slide">
- <h2 th:if="${planInfo.planGb == 'P'}" class="dp_subtitle">다른 기획전 보기</h2>
- <h2 th:if="${planInfo.planGb == 'E'}" class="dp_subtitle">다른 이벤트 보기</h2>
- <div class="swiper-container">
- <div class="swiper-wrapper">
- <th:block th:each="PlanData, PlanStat : ${planList}">
- <div class="swiper-slide">
- <a th:onclick="cfnGoToPlanDetail([[${PlanData.planSq}]])" class="dp_lookbook_item" tabindex="0">
- <div class="img">
- <img th:src="${@environment.getProperty('upload.image.view')+PlanData.mainImg}" alt="${PlanData.planNm}">
- </div>
- <div class="txt">
- <div class="tit" th:text="${PlanData.planNm}"></div>
- </div>
- </a>
- </div>
- </th:block>
- </div>
- </div>
- </div>
- </div>
- </section>
-
- <!-- 코너 클릭 팝 -->
- <div id="odDatePop" class="popup_box odDatePop">
- <div class="lap">
- <div class="popup_close">카테고리닫기</div>
- <div class="popup_head sr-only">
- <h2 class="">기간 선택 팝업</h2>
- </div>
- <div class="popup_con">
- <div class="button_list clear">
- <th:block th:if="${planCornerList!=null}" th:each="a, cornerStat : ${planCornerList}">
- <button type="button" th:onclick="fnCornerClick([[${cornerStat.index+1}]], [[${a.cornerNm}]])"><span th:text="${a.cornerNm}"></span></button>
- </th:block>
- </div>
- </div>
- </div>
- </div>
-
- <!-- 쿠폰사용안내 팝업 -->
- <div class="modal fade couponInfo_pop" id="couponInfoPop" tabindex="-1" role="dialog" aria-labelledby="couponInfoLabel" aria-hidden="true">
- <div class="modal-dialog" role="document">
- <div class="modal-content">
- <!-- 쿠폰사용안내 팝업 내용 -->
- </div>
- </div>
- <a href="#close-modal" rel="modal:close" id="couponInfoPop_close" class="close-modal">Close</a>
- </div>
- </main>
-
- <div class="modal pop_full photo_comment_popup" id="photo_full_popup" tabindex="-1" role="dialog" aria-labelledby="comment_popup" aria-hidden="true">
-
- </div>
-
- <th:block th:each="a, template : ${templateOrd}">
- <th:block th:if="${a.tmplType == 'G082_51'}">
- <form th:id="'searchForm1_'+${a.tmplType + a.planContSq}" name="searchForm1" th:action="@{'/planning/goods/list'}" th:method="post">
- <input type="hidden" name="pageNo2" value="1" />
- <input type="hidden" name="pageSize2" value="6" />
- <input type="hidden" name="tmplType" th:value="${a.tmplType}" />
- <input type="hidden" name="planContSq" th:value="${a.planContSq}" />
- <input type="hidden" name="planSq" th:value="${planInfo.planSq}" />
- </form>
- </th:block>
- </th:block>
- <form id="searchForm" name="searchForm" th:action="@{/planning/reply/list}" th:method="post">
- <input type="hidden" name="pageNo" value="1" />
- <input type="hidden" name="planSq" th:value="${planInfo.planSq}" />
- <input type="hidden" name="pageSize" value="10" />
- </form>
- <script src="/ux/plugins/gaga/gaga.paging.js"></script>
- <script th:inline="javascript">
- let review = [[${reviewInfo}]];
- let coupon = [[${couponInfo}]];
- let plan = [[${planInfo}]];
- let image = [[${imageInfo}]];
- let goods1 = [[${goods1Info}]];
- let goods2 = [[${goods2Info}]];
- let goods4 = [[${goods4Info}]];
- let template =[[${templateOrd}]];
- let replyList = [[${replyList}]];
- let replyCount = [[${replyCount}]];
- let replyAttachList = [[${replyAttachList}]];
- let planCornerGoodsList = [[${planCornerGoodsList}]];
- let planCornerList = [[${planCornerList}]];
- let _mall = [[${@environment.getProperty('domain.front')}]];
- let goodsView =[[${@environment.getProperty('upload.goods.view')}]]
- let imgUrl=[[${@environment.getProperty('upload.image.view')}]];
- var ajaxReplyList = function () {
- gagaPaging.init('searchForm', fnSearchCallback, 'paging', 10);
- gagaPaging.load(1);
- }
- var fnSearchCallback = function (result) {
- $("#replyList").html('');
- if (result!=null) {
- var html = '';
-
- html += '<div class="cmt_list_tit">';
- html += ' <strong>댓글</strong><span class="cnt">('+result.replyCount.addComma()+')</span> ';
- html += '</div>';
- if (result.replyList.length>0) {
- html += '<ul class="cmt_list">';
- $.each(result.replyList, function (idx, item) {
- html += ' <li>';
- html += ' <div class="cmt_top">';
- html += ' <span class="writer">'+item.maskingCustId+'</span>';
- html += ' <span class="date">'+item.entryDt+'</span>';
- if (item.entryCustNo == result.custNo) {
- html += ' <button type="button" id="btn_cmt_delete" class="btn_del" value="'+item.planEntrySq+'" onclick="fnDelReply(this.value)">삭제</button>';
- }
- html += ' </div>';
- html += ' <div class="cmt_cont">';
- if (result.replyAttachList.length>0) {
- html += ' <div class="img_wrap clear">';
- for (var i = 0; i < result.replyAttachList.length; i++) {
- if(result.replyAttachList[i].planEntrySq == item.planEntrySq){
- html += ' <div class="pics"><img class="picsThumbs" src="'+ imgUrl +'/'+result.replyAttachList[i].sysFileNm +'" onclick="cfPlanReplyDetail(\''+item.planSq+'\',\''+item.planEntrySq+'\',\''+result.replyAttachList[i].planEntryAtSq+'\');"></div>';
- }
- }
- html += ' </div>';
- }
- html += ' <p>'+item.entryVal1.escapeHtml()+'</p>';
- html += ' </div>';
- html += ' </li>';
- });
- html += '</ul>';
- }else{
- html += '<div class="nodata"> ';
- html += ' <div class="txt_box"> ';
- html += ' <p> ';
- html += ' 등록된 댓글이 없습니다. ';
- html += ' </p> ';
- html += ' </div> ';
- html += '</div> ';
- }
- }
- $("#replyList").append(html);
-
- // Create pagination
- gagaPaging.createPagination(result.paging.pageable);
- }
- // 댓글 삭제
- var fnDelReply = function(obj) {
-
- data = {planEntrySq : obj};
- var jsonData = JSON.stringify(data);
- mcxDialog.confirm("댓글을 삭제 하시겠습니까?", {
- cancelBtnText : "취소",
- sureBtnText : "확인",
- sureBtnClick : function() {
- gagajf.ajaxJsonSubmit('/planning/reply/delete', jsonData,function() {
- ajaxReplyList();
- });
- }
- })
- }
- $('#fileAdd').on('change', function() { fnChooseFile(this); });
- var fnChooseFile = function(obj) {
- var picLength = $(".pics").length;
-
- // multiple 속성이 있으면 files에는 다수의 객체가 할당됨
- var file = obj.files[0];
- if (!gagajf.isNull(file.name)) {
- var extension = "\.(jpg|jpeg|png)$";
- if (!(new RegExp(extension, "i")).test(file.name)) {
- mcxDialog.alertC('이미지는 [jpg, jpeg, png] 파일만 가능합니다.', {
- sureBtnText: "확인",
- sureBtnClick: function() {
- //$(obj).parent('.imgUpload').find('.removes').trigger('click');
- $('.imgUpload').find('span').eq(0).remove();
- }
- });
- return false;
- }
- }
- // 이거 왜 안먹히지
- if (!gagajf.isNull(file.size) && Number(file.size) > (10 * 1000000)) {
- mcxDialog.alertC('이미지는 최대 10MB 이하 파일만 가능합니다.', {
- sureBtnText: "확인",
- sureBtnClick: function() {
- $(obj).parent('.imgUpload').find('.removes').trigger('click');
- }
- });
- return false;
- }
-
- // 파일 업로드
- gagajf.ajaxFileUpload('/common/file/upload?subDir=/reply'
- , file
- , function(result) {
- // 업로드한 파일명 설정
- $(".imgUpload").find('.pics').last().append("<input type='hidden' name='orgFileNm' id='orgFileNm"+(picLength+1)+"' value='"+result.oldFileName+"'>");
- $(".imgUpload").find('.pics').last().append("<input type='hidden' name='sysFileNm' id='sysFileNm"+(picLength+1)+"' value='"+result.newFileName+"'>");
- }
- );
- }
- //댓글 등록 버튼 클릭 시
- var fnReplySave = function() {
- var fileLength = $("input[name='sysFileNm']").length;
- var content = $('#replyText').val();
- if (content.length < 2){
- mcxDialog.alert("최소 2자 이상 입력해주세요.");
- return;
- }
-
- var yokList = new Array('<script>','script','D쥐고','D지고','jonna','jot같','mi쳤','ssㅑ','tlqkf','wlfkf','같은새끼','같은새끼','개새끼','개같','개넷','개년','개념빠가','개독','개련','개련','개마이','개부랄','개삼성','개새기','개새끼','개섹','개셈','개소리','개쓰래기','개저씨','계새끼','골빈','골1빈','골빈','괘새끼','껒여','꺼지세요','꺼져요','로꺼져','로꺼져','로꺼.져','꺼.지','나빼썅','나쁜새끼','년놈','늬믜','늬미','니년','니믜','니미럴','닝기리','다꺼져','닥쳐라','닥치세','도라이','뒈져','뒤져버','디져라','디졌','디지고','디질','딴년','또라이','또라인','똘아이','ㅁㅊ','ㅁ친','맘충','보이루','망돌','머갈','먹.금','먹.끔','먹1금','먹금','먹끔','명존','믜칀','믜친','미:놈','미:놈','미1친','미놈','미시친발','미쳣네','미쳤나','미쳤니','미췬','미칀','미친새','미친~','미친개','미친새','미친색','미친ㅋ','미틴','및힌','별창','병1신','병1크','병맛','병신','병크','봊','븅신','빠큐','빡새끼','빻았','빻은','뻐규','뻐큐','뻑유','뻑큐','뻨큐','뼈큐','뽄새','뽄세','삐걱','ㅄ','ㅅ','ㅂ','ㅅ.ㅂ','ㅅ1ㅂ','ㅅ1발','ㅅㄲ네','ㅅㄲ들','ㅅ루','ㅅㅋ','ㅅㅡ루','사새끼','새.끼','새1끼','새1키','새77ㅣ','새끼라','새끼야','새퀴','새킈','새키','색희','색히','샊기','샊히','샹년','섀키','솔1친','솔친','쉬발','쉬버','쉬이바','쉬이이','쉬이이이','쉬펄','슈1발','슈레기','슈발','슈벌','슈우벌','슈ㅣ발','스.루','스벌','스죄','스타죄국','싑창','시1발','시미발친','시미친발','시바','시바류','시바시바','시바알','시바앙','시발','시방새','시벌탱','시볼탱','시부럴','시부렬','시부울','시뷰럴','시뷰렬','시빨','시새발끼','시이발','시친발미','시키가','시팔','시펄','십창','십팔','ㅆ1ㄺ','ㅆ1ㅂ','ㅆㄹㄱ','ㅆㄺ','ㅆㅂ','싸가지없','싸가지없','싸물어','쌉가','쌍년','쌍놈','쌔끼','썅','썌끼','쒸펄','쓰1레기','쓰래기같','쓰레기새','쓰레기새','쓰렉','씝창','씨1발','씨바라','씨바알','씨발','씨방새','씨버럼','씨벌','씨벌탱','씨볼탱','씨부럴','씨부렬','씨뷰럴','씨뷰렬','씨빠빠','씨빨','씨뻘','씨새발끼','씨이발','씨팔','씹귀','씹덕','씹못','씹뻐럴','씹새끼','씹쌔','씹창','씹치','씹팔','씹할','ㅇㅍㅊㅌ','아가리','아닥','아오ㅅㅂ','아오시바','아오ㅅㅂ','아오시바','애미','앰','앰창','얘쁘','얘쁜','얪','에라이퉤','에라이퉷','에라이퉤','에라이퉷','엠뷩신','엠븽신','엠빙신','엠생','엠창','엿같','엿이나','예.질','예1질','예질','옘병','외1퀴','외퀴','웅앵','웅엥','은년','은새끼','이새끼','이따위','이새끼','입털','입털','ㅈ.ㄴ','ㅈㄴ','ㅈㄹ','절라','정병','젖같','젗같','젼나','젼낰','졀라','졀리','졌같은','졏같','조낸','조온','조온나','족까','존나','존나','존','나','존.나','존1','존1나','존귀','존귘','존ㄴ나','존나','존낙','존내','졸라','좁밥','조센징','짱깨','짱개','짱꼴라','꼴라','착짱','죽짱','짱골라','좃','종나','좆','좆까','좇같','죠낸','죠온나','죤나','죤내','죵나','죶','죽어버려','죽여버리고','죽여버리고','죽여불고','죽여뿌고','중립충','줬같은','쥐랄','쥰나','쥰내','쥰니','쥰트','즤랄','지랄','지1랄','지1뢰','지껄이','지들이','지랄','지롤','지뢰','지인지조','짱깨','짱께','쪼녜','쪼다','착짱죽짱','섬숭이','쪽본','쪽1바리','쪽바리','쪽발','쫀맛','쫀1','쫀귀','쫀맛','쫂','쫓같','쬰잘','쬲','찝째끼','창년','창녀','창놈','창넘','처먹','凸','첫빠','쳐마','친년','친놈','친구년','친년','친노마','친놈','손놈','남미새','여미새','혐석','호로새끼','호로잡','화낭년','화냥년','후.려','후1려','후1빨','후려','후빨','ㅗ');
-
- if(yokList.indexOf(content)>=0){
- mcxDialog.alert("입력 불가한 내용을 포함하고 있습니다.");
- $('#replyText').val('');
- $('#cmt_cnt').text(0);
- return;
- }
-
- //파일관련 데이터 담기
- var multiReplyOrgFile = [];
- var multiReplySysFile = [];
- for (var i = 0; i < fileLength; i++) {
- multiReplyOrgFile.push($(".pics").eq(i).find('input[name="orgFileNm"]').val());
- multiReplySysFile.push($(".pics").eq(i).find('input[name="sysFileNm"]').val());
- }
- data = {entryVal1 : content,
- planSq : plan.planSq,
- multiReplyOrgFile : multiReplyOrgFile,
- multiReplySysFile : multiReplySysFile};
- var jsonData = JSON.stringify(data);
- mcxDialog.confirm("댓글을 등록 하시겠습니까?", {
- cancelBtnText : "취소",
- sureBtnText : "확인",
- sureBtnClick : function() {
- gagajf.ajaxJsonSubmit('/planning/reply/save', jsonData,function() {
- ajaxReplyList();
- $('#replyText').val('');
- $('.pics').remove();
- $('.fileAdd').show();
- //댓글 작성시 글자 카운트
- $('#cmt_cnt').text(0);
- });
- }
- })
- }
- if(planCornerList.length>0){
-
- var html = '';
- $.each(planCornerList, function(idx, item) {
- html += '<div class="inner" >';
- html += ' <div class="dp_listItems_wrap type'+(idx+1)+'"> ';
- html += ' <h2 class="dp_subtitle">'+item.cornerNm+'</h2>';
- html += ' <div class="list_content">';
- html += ' <div class="itemsGrp">';
- $.each(planCornerGoodsList, function(idx2, item2) {
- if (item2.cornerNm == item.cornerNm) {
- html += ' <div class="item_prod">';
- html += ' <div class="item_state">';
- html += ' <button type="button" class="itemLike';
- if(item2.likeIt == 'likeit'){
- html += ' likeit';
- }
- html += ' "';
- html += 'onClick="cfnPutWishList(this);" goodsCd=\''+item2.goodsCd+'\', ithrCd=\'\', contentsLoc=\'\', planDtlSq=\'\'>관심상품 추가</button>';
- html += ' <a href="javascript:void(0);" onclick="cfnGoToGoodsDetail(\'' + item2.goodsCd + '\')" class="itemLink">';
- html += ' <div class="itemPic">';
- html += ' <img class="vLHTC pd_img" src="'+ goodsView +'/'+item2.sysImgNm +'">';
- html += ' </div>';
- html += ' <p class="itemBrand">'+item2.brandGroupNm+'</p>';
- html += ' <div class="itemName">'+item2.goodsNm+'</div>';
- html += ' <p class="itemPrice">';
- if (item2.currPrice != item2.listPrice) {
- html += ' <span class="itemPrice_original">'+item2.listPrice.addComma()+'</span>';
- }
- html += item2.currPrice.addComma();
- if (item2.dcRate != 0) {
- html += ' <span class="itemPercent">'+item2.dcRate.addComma()+'%</span>';
- }
- html += ' </p>';
- html += ' <div class="itemcolorchip">';
- if(!gagajf.isNull(item2.colorChips)){
- var colorArr = item2.colorChips.split(",");
- var colorCd = '';
- var rgbColor = '';
- for(let i=0; i<colorArr.length; i++){
- var colorInfo = colorArr[i].split(":");
- colorCd = colorInfo[0];
- rgbColor = colorInfo[1];
- if(rgbColor=='#FFFFFF'){
- html += ' <span class="chip_color" style="background-color: '+rgbColor+';border:1px solid #aaa;" value="'+colorCd+'">'+colorCd+'</span>';
- }else{
- html += ' <span class="chip_color" style="background-color: '+rgbColor+'" value="'+colorCd+'">'+colorCd+'</span>';
- }
- }
- }
- html += ' </div>';
- if(!gagajf.isNull(item2.icon)){
- var iconArr = item2.icon.split(",");
- var iconGb = '';
- var iconNm = '';
- html += ' <p class="itemBadge">';
- for(let i=0; i<iconArr.length; i++){
- var iconInfo = iconArr[i].split(":");
- iconGb = iconInfo[0];
- iconNm = iconInfo[1];
- html += ' <span class="badge13" value="'+iconGb+'">'+iconNm+' </span>';
- }
- html += ' </p>';
- }
- if(item2.goodsTnm != null){
- html += ' <div class="itemComment">'+item2.goodsTnm+'</div>';
- }
- html += ' </a>';
- html += ' </div>';
- html += ' </div>';
- }
- });
- html += ' </div>';
- html += ' </div>';
- html += ' </div>';
- html += '</div>';
-
- });
-
- $("#cornerGoodsList").append(html);
-
- }
- if(goods1.length>0){
- var array = [];
- for (var j = 0; j < template.length; j++) {
- if(template[j].tmplType == 'G082_50'){
- array.push(template[j].planContSq);
- }
- }
- for (var i = 0; i < template.length; i++) {
- var html = '';
- if(template[i].tmplType == 'G082_50' && array[0] == template[i].planContSq && typeof array[0] != 'undefined') {
- html += '<div class="dp_listItems_cont type1">\n';
- html += ' <h2 class="dp_subtitle">\n';
- if (template[i].linkUrl != null && template[i].linkUrl != '') { /* 링크 변경 예정 */
- if (template[i].linkOpenGb == 'M') { //본창
- html += ' <a href="'+template[i].linkUrl+'" target="_self">'+template[i].title+'</a>\n';
- }else{
- html += ' <a href="'+template[i].linkUrl+'" target="_blank">'+template[i].title+'</a>\n';
- }
- }else{
- html += ' <a href="javascript:void(0)">'+template[i].title+'</a>\n';
- }
- html += ' </h2>\n';
- html += ' <div class="swiper-container item01">\n';
- html += ' <div class="swiper-wrapper">\n';
- $.each(goods1, function(idx, item) {
- if (item.planContSq == template[i].planContSq) {
- html += ' <div class="swiper-slide">\n';
- html += ' <div class="item_prod">\n';
- html += ' <div class="item_state">\n';
- html += ' <a href="#none" class="itemLink">\n';
- html += ' <div class="itemPic">\n';
- html += ' <img class="vLHTC pd_img" src="'+ goodsView +'/'+item.sysImgNm +'?RS=780" alt="">\n';
- html += ' </div>\n';
- html += ' <p class="itemBrand">'+item.brandGroupNm+'</p>\n';
- html += ' <div class="itemName">'+item.goodsNm+'</div>\n';
- html += ' <p class="itemPrice">\n';
- if (item.currPrice != item.listPrice) {
- html += ' <span class="itemPrice_original">'+item.listPrice.addComma()+'</span>\n';
- }
- html += item.currPrice.addComma();
- if (item.currPrice != item.listPrice) {
- html += ' <span class="itemPercent">'+Math.floor(item.dcRate)+'%</span>\n';
- }
- html += ' </p>\n';
- if(item.goodsTnm != null){
- html += ' <div class="itemComment">'+item.goodsTnm+'</div>\n';
- }
- html += ' </a>\n';
- html += ' </div>\n';
- html += ' </div>\n';
- html += ' </div>\n';
- }
- });
- html += ' </div>\n';
- html += ' <div class="swiper-pagination"></div>\n';
- html += ' </div>\n';
- html += '</div>\n';
- $("#G082_50" +array[0]).append(html);
- }
-
- if($("#G082_50" +template[i].planContSq).length){
- array.shift();
- }
- }
- }
- var fnCompleteList = function () {
- $.each(template, function(idx, item) {
- if(item.tmplType == "G082_51"){
- var form = '#searchForm1_G082_51'+item.planContSq;
- gagajf.ajaxFormSubmit('/planning/goods/list', form, fnGetCompleteCallback);
- }
-
- });
-
- }
- var fnGetCompleteCallback = function (result) {
- if (result.dataList != null && result.dataList.length > 0) {
- var html = '';
- $.each(result.dataList, function(idx, item) {
- html += ' <div class="item_prod">';
- html += ' <div class="item_state">';
- html += ' <a onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\')" class="itemLink">';
- html += ' <div class="itemPic">';
- html += ' <img class="vLHTC pd_img" src="'+ goodsView +'/'+item.sysImgNm +'">';
- html += ' </div>';
- html += ' <p class="itemBrand">'+item.brandGroupNm+'</p>';
- html += ' <div class="itemName">'+item.goodsNm+'</div>';
- html += ' <p class="itemPrice">';
- if (item.currPrice != item.listPrice) {
- html += ' <span class="itemPrice_original">'+item.listPrice.addComma()+'</span>';
- }
- html += item.currPrice.addComma();
- if (item.currPrice != item.listPrice) {
- html += ' <span class="itemPercent">'+Math.floor(item.dcRate)+'%</span>';
- }
- html += ' </p>';
- if(item.goodsTnm != null){
- html += ' <div class="itemComment">'+item.goodsTnm+'</div>';
- }
- html += ' </a>';
- html += ' </div>';
- html += ' </div>';
- });
- $('#group_'+result.dataList[0].planContSq).append(html);
- if (result.paging1.pageable2.totalPage > result.paging1.pageable2.pageNo) {
-
- $('#moreBtn_' + result.dataList[0].planContSq).show();
- $('#searchForm1_G082_51'+result.dataList[0].planContSq +' input[name=pageNo2]').val(result.paging1.pageable2.pageNo + 1);
-
- }else{
- $('#moreBtn_' + result.dataList[0].planContSq).hide();
- }
- }
- }
- var moreBtn = function (obj) {
- var form = '#searchForm1_G082_51'+obj;
- gagajf.ajaxFormSubmit('/planning/goods/list', form, fnGetCompleteCallback);
- }
- if(goods4.length>0){
- var array = [];
- var html = '';
- for (var j = 0; j < template.length; j++) {
- if(template[j].tmplType == 'G082_52'){
- array.push(template[j].planContSq);
- }
- }
-
- for (var i = 0; i < template.length; i++) {
- if(template[i].tmplType == 'G082_52' && array[0] == template[i].planContSq && typeof array[0] != 'undefined'){
- html += '<div class="dp_listItems_cont type2">';
- if (template[i].linkUrl != null && template[i].linkUrl != '') { /* 링크 변경 예정 */
- if (template[i].linkOpenGb == "M") { //본창
- html += ' <h2 class="dp_subtitle"><a href="'+template[i].linkUrl+'" target="_self">'+template[i].title+' </a></h2>';
- }else{
- html += ' <h2 class="dp_subtitle"><a href="'+template[i].linkUrl+'" target="_blank">'+template[i].title+' </a></h2>';
- }
- }else{
- html += ' <h2 class="dp_subtitle"><a href="javascript:void(0)">'+template[i].title+' </a></h2>';
- }
-
- html += ' <div class="swiper-container item02">';
- html += ' <div class="swiper-wrapper">';
- $.each(goods4, function(idx, item) {
- html += ' <div class="swiper-slide">';
- html += ' <div class="item_prod">';
- html += ' <div class="item_state">';
- html += ' <a onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\')" class="itemLink">';
- html += ' <div class="itemPic">';
- html += ' <img class="vLHTC pd_img" src="'+ goodsView +'/'+item.sysImgNm +'">';
- html += ' </div>';
- html += ' <p class="itemBrand">'+item.brandGroupNm+'</p>';
- html += ' <div class="itemName">'+item.goodsNm+'</div>';
- html += ' <p class="itemPrice">';
- if (item.currPrice != item.listPrice) {
- html += ' <span class="itemPrice_original">'+item.listPrice.addComma()+'</span>';
- }
-
- html += item.currPrice.addComma();
- if (item.currPrice != item.listPrice) {
- html += ' <span class="itemPercent">'+Math.floor(item.dcRate)+'%</span>';
- }
- html += ' </p>';
- if(item.goodsTnm != null){
- html += ' <div class="itemComment">'+item.goodsTnm+'</div>';
- }
-
- html += ' </a>';
- html += ' </div>';
- html += ' </div>';
- html += ' </div>';
- })
-
- html += ' </div>';
- html += ' <div class="swiper-pagination"></div>';
- html += ' </div>';
- html += '</div>';
- $("#G082_52" +array[0]).append(html);
- }
- if($("#G082_52" +template[i].planContSq).length){
- array.shift();
- }
- }
- }
- if(review.length>0){
-
- var html = '';
-
- html += '<div class="dp_review_cont">\n';
- html += ' <div class="dp_review">\n';
- html += ' <h2 class="dp_subtitle">'+review[0].title+'</h2>\n';
- html += ' <div class="review">\n';
- html += ' <div class="swiper-container review_list">\n';
- html += ' <div class="swiper-wrapper">\n';
- $.each(review, function(idx, item) {
- html += ' <div class="swiper-slide">\n';
- html += ' <div>\n';
- html += ' <div class="best_review">\n';
- if(item.reviewSysImg!= null){
- html += ' <a href="javascript:void();" onclick="cfGoodsReviewDetail(\''+item.goodsCd+'\',\'\', \'Y\',\''+item.reviewSq+'\');">\n';
- }else{
- html += ' <a href="javascript:void();" onclick="cfGoodsReviewDetail(\''+item.goodsCd+'\',\'\', \'N\',\''+item.reviewSq+'\');">\n';
- }
- html += ' <div class="lap">\n';
- html += ' <div class="pic">\n';
- if(item.reviewSysImg!= null){
- if (item.fileGb == 'M') {
- html += ' <span class="thumb mov" style="background-image:url('+ imgUrl+item.reviewSysImg +');"></span>\n';
- }else{
- html += ' <span class="thumb" style="background-image:url('+ imgUrl +item.reviewSysImg +');"></span>\n';
- }
- }else{
- html += ' <span class="thumb" style="background-image:url('+ goodsView+'/'+item.sysImgNm +');"></span>\n';
- }
- html += ' </div>\n';
- html += ' <div class="info">\n';
- html += ' <div>\n';
- html += ' <div class="star_score">\n';
- html += ' <span class="star">\n';
- html += ' <em class="progbar" style="width:'+(item.score*20)+'%;"></em>\n';
- html += ' </span>\n';
- if(item.bestYn == 'Y'){
- html += ' <em class="ico ico_besttag"></em>\n';
- }
- html += ' </div>\n';
- html += ' <div class="txt_best_review">\n';
- html += ' <p>'+item.reviewContent+'</p>';
- html += ' </div>\n';
- html += ' <div class="writer">\n';
- html += ' <span class="wr_id">'+item.maskingCustId+'</span>\n';
- html += ' <span class="wr_date">'+item.regDt+'</span>\n';
- html += ' </div>\n';
- html += ' </div>\n';
- html += ' </div>\n';
- html += ' </div>\n';
- html += ' </a>\n';
- html += ' </div>\n';
- html += ' <div class="product_view">\n';
- html += ' <div class="item_prod">\n';
- html += ' <div class="item_state">\n';
- html += ' <a href="javascript:void(0)" onclick="cfnGoToGoodsDetail(\'' + item.goodsCd + '\')" class="itemLink">\n';
- html += ' <div class="itemPic">\n';
- html += ' <img alt="" class="vLHTC pd_img" src="'+ goodsView +'/'+item.sysImgNm +'">\n';
- html += ' </div>\n';
- html += ' <div class="itemName">'+item.goodsNm+'</div>\n';
- html += ' <p class="itemPrice">\n';
- html += ' <span class="itemPrice_sale">'+item.currPrice.addComma()+'</span>\n';
- html += ' </p>\n';
- html += ' </a>\n';
- html += ' </div>\n';
- html += ' </div>\n';
- html += ' </div>\n';
- html += ' </div>\n';
- html += ' </div>\n';
- });
- html += ' </div>\n';
- html += ' <div class="swiper-pagination"></div>\n';
- html += ' </div>\n';
- html += ' </div>\n';
- html += ' </div>\n';
- html += '</div>\n';
- $("#G082_10").append(html);
- }
- /* 이미지 */
- if(image.length>0){
- var html = '';
-
- html += '<div class="promotion_visual type2">';
- html += ' <div class="big_banner_slide">';
- html += ' <div class="swiper-container">';
- html += ' <div class="swiper-wrapper">';
- $.each(image, function(idx, item) {
- html += ' <div class="swiper-slide">';
- if (item.linkOpenGb == 'M') {
- html += ' <a href="'+item.linkUrl+'" target="_self"><img src="'+ imgUrl + item.itemVal +'?RS=1206" ></a>';
- }else{
- html += ' <a href="'+item.linkUrl+'" target="_blank"><img src="'+ imgUrl + item.itemVal +'?RS=1206" ></a>';
- }
- html += ' </div>';
- });
-
- html += ' </div>';
- html += ' <div class="swiper-pagination"></div>';
- html += ' </div>';
- html += ' </div>';
- html += '</div>';
-
- $("#G082_30").append(html);
- }
- if(coupon.length>0){
- var html = '';
-
- html += '<div class="dp_coupon">';
- html += ' <h2 class="dp_subtitle">'+coupon[0].title+'</h2>';
- html += ' <div class="coupon_list">';
- html += ' <ul class="clear">';
- $.each(coupon, function(idx, item) {
- if (item.couponStat == '쿠폰받기') {
- html += ' <li> ';
- }else{
- html += ' <li class="off"> ';
- }
-
- html += ' <div class="cp_top">';
- html += ' <div class="cp_detail">';
- html += ' <p class="tit">'+item.cpnNm+'</p>';
- html += ' <strong class="sale_t won_t"><span>'+item.dcVal.addComma()+'</span>'+item.dcWay+'</strong>';
- html += ' <p class="cp_cont">'+item.useCondition+'</p>';
- html += ' <span class="cp_cnt">'+item.issueCondition+'</span>';
- html += ' </div>';
- html += ' <span class="cp_shape"></span>';
- html += ' </div>';
- html += ' <div class="cp_date" id="dp_coupon1">';
- if (item.couponStat == '쿠폰받기') {
- html += ' <button type="button" id="coupon_'+item.cpnId+'" onclick="fnPlanCouponDown('+item.cpnId+')"><span>쿠폰 받기</span></button>';
- }else{
- html += ' <button type="button" id="coupon_'+item.cpnId+'" onclick="fnPlanCouponDown('+item.cpnId+')"><span>받기 완료</span></button>';
- }
- html += ' </div>';
- html += ' <div class="cp_info">';
- html += ' <button type="button" id="modalBasic" class="btn_couponInfo_pop" onclick="usePlanInfoCoupon('+item.cpnId+')"><span>사용안내</span></button>';
- html += ' </div>';
- html += ' </li>';
- });
- html += ' </ul>';
- html += ' </div>';
- html += ' <div class="announce_txt">';
- html += ' <div class="note_txt">';
- html += ' <img src="/images/mo/ico_content_find.png" alt="유의사항">';
- html += ' <p>유의사항</p>';
- html += ' </div>';
- html += ' <div class="announce_list">';
- html += ' <ul>';
- html += coupon[0].note;
- html += ' </ul>';
- html += ' </div>';
- html += ' </div>';
- html += '</div>';
-
- $("#G082_20").append(html);
- }
- //쿠폰 사용안내 모달
- var usePlanInfoCoupon = function (id) {
- var data = {cpnId : id
- ,planSq : plan.planSq};
- var jsonData = JSON.stringify(data);
-
- $.ajax( {
- type : "POST",
- url : '/planning/coupon/detailpop',
- data : jsonData,
- contentType: 'application/json',
- dataType : 'html',
- success : function(result) {
- if (result != null) {
- $("#couponInfoPop").html(result);
- $("#couponInfoPop").modal("show");
- }
- }
- });
-
- return false;
- }
- //설문조사 참여 버튼 클릭
- var fnJoinConfirm = function () {
- let planSq = plan.planSq;
-
- cfnGoToPollDetail(planSq);
- }
- //쿠폰 다운로드
- var fnPlanCouponDown = function(obj){
- if (!cfCheckLogin()) {
- cfnGoToPage(_PAGE_LOGIN);
- return false;
- }
-
- let cpnId = obj;
- gagajf.ajaxJsonSubmit(_PAGE_PLANNING_CPN_DOWNLOAD, JSON.stringify({cpnId: cpnId}), fnPlanCouponCallBack);
- }
- // 쿠폰다운로드 콜백
- var fnPlanCouponCallBack = function(result){
- $.each(result.couponList, function (idx, item) {
- if (Number(item.custPubLimitQty) > 0){
- if (Number(item.custPubLimitQty) <= Number(item.custCouponCnt)){
- $('#coupon_'+ item.cpnId).html('<span>받기완료</span>');
- $('#coupon_'+ item.cpnId).attr('disabled', true);
- }
- }
- });
- }
- var fnCornerClick = function(obj,obj2) {
- $("#filter").text(obj2);
- var offset = $('.dp_listItems_wrap.type'+obj).offset(); //선택한 태그의 위치를 반환
- //animate()메서드를 이용해서 선택한 태그의 스크롤 위치를 지정해서 0.4초 동안 부드럽게 해당 위치로 이동함
- $('html').animate({scrollTop : offset.top - 77}, 400);
- }
- //댓글 입력 확인
- var fnTextConfirm = function() {
- //로그인 확인
- if (!cfCheckLogin()) {
- mcxDialog.alert("로그인 후 참여 가능합니다.");
- $("#replyText").val('');
- return false;
- }
- }
- $(document).ready(function(){
- if(plan.planGb == "P"){
- $('#htopTitle').text('기획전');
- }else{
- $('#htopTitle').text('이벤트');
- }
- ajaxReplyList();
-
- fnCompleteList();
- $("#filter").text(planCornerList[0].cornerNm);
-
- //Q3 글자 수 카운트
- $('.doc_contactus').keyup(function (e){
- var content = $(this).val();
- $('#contactus_cnt em').html(content.length);
- if (content.length > 500){
- $(this).val(content.substring(0, 500));
- $('#contactus_cnt em').html("500");
- }
- });
- $(document).on('click','.pop_open_btn',function(){
- $('.modal.photo_comment_popup .pop_detail').toggleClass('active');
- });
-
- //상단 빅배너 슬라이드
- var big_banner_slide = new Swiper('.big_banner_slide .swiper-container', {
- slidesPerView: 1,
- spaceBetween: 8,
- centerMode: true,
- pagination: {
- el: '.big_banner_slide .swiper-pagination',
- },
- });
- //review 슬라이드
- var dp_reviewitem_slide = new Swiper('.review .swiper-container', {
- slidesPerView: 1,
- spaceBetween: 8,
- loop: true,
- centerMode: true,
- pagination: {
- el: '.review .swiper-pagination',
- type: 'fraction',
- },
- });
- // 아이템스라이드(리스트갯수1)
- var dp_listItems_cont1 = new Swiper('.dp_listItems_cont .swiper-container.item01', {
- slidesPerView: 1,
- spaceBetween: 0,
- centerMode: true,
- pagination: {
- el: '.dp_listItems_cont .swiper-container.item01 .swiper-pagination',
- },
- });
- // 아이템스라이드(리스트갯수2)
- var dp_listItems_slide3 = new Swiper('.dp_listItems_cont .swiper-container.item02', {
- slidesPerView: 'auto',
- slidesPerView: 2,
- spaceBetween: 8,
- centerMode: true,
- });
- // 아이템스라이드(리스트갯수3)
- var dp_listItems_slide3 = new Swiper('.dp_listItems_slide .swiper-container.item03', {
- slidesPerView: 3,
- spaceBetween: 8,
- centerMode: true,
- });
-
- // 다른기획전
- var other_promotion_slide = new Swiper('.other_promotion_slide .swiper-container', {
- slidesPerView: 2,
- spaceBetween: 8,
- centerMode: true,
- });
-
- $(document).on('click','.popup_box .button_list button',function(){
- $('.popup_box .button_list button').removeClass('on');
- $(this).addClass('on');
- });
-
- //기간 선택 팝업
- $(document).on("click", ".open_categori", function(){
- $('#odDatePop').show().addClass("active");
- $("body").css({"overflow":"hidden"});
- });
-
-
- //팝업_닫기
- $('.popup_close').on("click",function(){
- $('.popup_box').hide().removeClass('active');
- $("body").css({"overflow":"visible"});
- });
-
- $('#btn1').click(function(){
- var offset = $('.dp_listItems_wrap.type1').offset(); //선택한 태그의 위치를 반환
- //animate()메서드를 이용해서 선택한 태그의 스크롤 위치를 지정해서 0.4초 동안 부드럽게 해당 위치로 이동함
- $('html').animate({scrollTop : offset.top}, 400);
- });
-
- // Full size Popup
- /* $(document).on('click','.cmt_wrap .cmt_cont .pics',function(){
- $("#photo_full_popup").modal("show");
- });
- $(".close-modal").click(function() {
- $("#photo_full_popup").modal("hide");
- }); */
-
- // 210415_드롭박스 상단고정
- $(window).scroll(function(){
- var scrollTop= $(window).scrollTop();
- var itemTop=$('.dp .dp_listItems_wrap.type1').offset().top;
- if (scrollTop >= itemTop){
- $('.dp .dp_listItems_wrap .items_option').addClass('fix');
- } else {
- $('.dp .dp_listItems_wrap .items_option').removeClass('fix');
- }
- });
-
- //210510_추가 : 토스트 팝업 button 클릭 시 팝업 닫기.
- $(document).on('click','.popup_box.odDatePop .button_list button',function(){
- $(this).parents('.popup_box.odDatePop').hide().removeClass('active');
- $("body").css({"overflow":"visible"});
- })
-
- //카테고리
- function category(){
- var categoryOpen=$(".open_categori .select_dress");
- var categoryClose=$(".category_box .category_close");
- var categoryPop=$(".category_box");
- categoryOpen.on("click",function(){
- categoryPop.show();
- categoryPop.addClass("active");
- $("body").css({"overflow":"hidden"});
- });
- categoryClose.on("click",function(){
- categoryPop.hide();
- $("body").css({"overflow":"visible"});
- });
- }
- category();
- });
- </script>
- </th:block>
- </body>
- </html>
|