1<!doctype html> 2<html xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.thymeleaf.org " 3 lang="en" 4> 5<head> 6 7 <meta charset="utf-8"> 8 <meta name="viewport" 9 content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"> 10 <meta name="facebook-domain-verification" content="jyntulevb03x6n6qqbdooakvsuhb50" /> 11 12 <!-- css --> 13 14 <!--<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css" 15 integrity="sha384-GJzZqFGwb1QTTN6wy59ffF1BuGJpLSa9DkKMp0DgiMDm4iYMj70gZWKYbI706tWS" crossorigin="anonymous" rel="preload" as="style" onload="this.onload=null;this.rel='stylesheet'"> 16 <link th:href="@{'/css/common'+ ${__min__} +'.css'(ver=${__pub__})}" rel="preload" as="style" onload="this.onload=null;this.rel='stylesheet'"> 17 <noscript> 18 </noscript>--> 19 <!-- <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/css/bootstrap.min.css" 20 integrity="sha384-GJzZqFGwb1QTTN6wy59ffF1BuGJpLSa9DkKMp0DgiMDm4iYMj70gZWKYbI706tWS" crossorigin="anonymous" rel="stylesheet"> --> 21 <!-- <link th:href="@{'/css/common'+ ${__min__} +'.css'(ver=${__pub__})}" rel="stylesheet"> í¼ë¸ ì¤ë©´ ìì² --> 22 <!-- <link th:href="@{'/css/common.css'(ver=${__pub__})}" rel="stylesheet"> --> 23 <!--
23<script th:src="@{'/lib/common-correct-css'+ ${__min__} +'.js'(ver=${__pub__})}"></script>
23--> 24 <!-- <th:block layout:fragment="ex-css-mypage"></th:block> 25 <th:block layout:fragment="ex-css-member"></th:block> --> 26 <link href="/favicon.ico?ver=200427" rel="icon"/> 27 28 <link rel='stylesheet' href='https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.css' /> 29 <link rel='stylesheet' href='/css/jquery-ui.css'> 30 <link rel="stylesheet" href="/css/style.css?ver=25-06-17-1400"> 31 32 <!-- Google Tag Manager -->
33<script> 34 /*<![CDATA[*/ 35 /*]]>*/ 36</script>
36 37 38 <!-- head-seo--> 39 <!-- google ëì --> 40 <meta name="google-site-verification" content="f79wBG6xrqqw7JSSdNJxwMWiILXHMO2ld_d07KEgoxw"/> 41 42 <!-- ë¤ì´ë² ëì --> 43 <!-- <meta name="naver-site-verification" content="a6178a0bde2144c7ab9f31ca03479b569de830ff"/> ì¤ë³µì¼ë¡ì¸í 주ì--> 44 <link rel="canonical" href="https://www.groomingjok.io/store"/> 45 46 <!-- bing, ì¼í ëì --> 47 <meta name="msvalidate.01" content="568EF949BE5F5DED45F610E0F761F40C" /> 48 49 <!-- SEO ëì --> 50 <title>그루ë°ì¡± l ë¨ì ì±í ì ë³´ì±</title> 51 <meta name="description" content="그루ë°ì¡± | ë¨ì ì±í ì ë³´ì±"/> 52 <meta name="keywords" content="그루ë°ì¡± , GroomingJok, ìê±°íìì , ë매êµì , ì±í, ê°ì´ì±í, ê°ë¨ì¸ë, ì½ì±í, ë°ë¹í¡, ì½ì±í, ì¸êµì¸ ì±í, ë¤êµì´ì±í, Kë·°í°, ì¼ì´ë·°í°, ë·°í°, ë°©í, íêµì¬í, í´ê°, ì¸ëª¨"/> 53 <meta property="og:type" content="website"/> 54 <meta property="og:image" content="https://www.groomingjok.io/img/logo.svg"/> 55 <meta property="og:site_name" content="GroomingJok - 그루ë°ì¡± | ë¨ì ì±í ì ë³´ì±"/> 56 <meta property="og:title" content="그루ë°ì¡± l ë¨ì ì±í ì ë³´ì±"/> 57 <meta property="og:description" content="그루ë°ì¡± | ë¨ì ì±í ì ë³´ì±"/> 58 <meta property="og:url" content="https://www.groomingjok.io/store"/> 59 <!-- --> 60 61 <!-- tommy ë¤ì´ë² ì¹ë§ì¤í° ë©ííê·¸ --> 62 <meta name="naver-site-verification" content="a6178a0bde2144c7ab9f31ca03479b569de830ff"/> 63 64
64<script async src='https://www.google-analytics.com/analytics.js'></script>
64 65 66 <!-- Global site tag (gtag.js) - Google Analytics -->
vendor: 66 bytes, lines 66-67
66 67 <script async src="https://www.googletagmanager.com/gtag/js?id=
67UA-163489448-1
vendor: 14 bytes, lines 67-68
67"></script> 68
68<script> 69
vendor: 142 bytes, lines 69-73
69window.dataLayer = window.dataLayer || []; 70 function gtag(){dataLayer.push(arguments);} 71 gtag('js', new Date()); 72 73 gtag('config', '
73UA-163489448-1
vendor: 13 bytes, lines 73-75
73'); 74 75
75window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)};ga.l=+new Date; 76 ga('create', 'UA-163489448-1', 'auto'); 77 ga('send', 'pageview'); 78 </script>
78 79 <!-- //End Global site tag (gtag.js) - Google Analytics --> 80 81 <!-- Global site tag (gtag.js) - Google Ads: 650837381 -->
vendor: 66 bytes, lines 81-82
81 82 <script async src="https://www.googletagmanager.com/gtag/js?id=
82AW-650837381
vendor: 14 bytes, lines 82-83
82"></script> 83
83<script> 84
vendor: 142 bytes, lines 84-88
84window.dataLayer = window.dataLayer || []; 85 function gtag(){dataLayer.push(arguments);} 86 gtag('js', new Date()); 87 88 gtag('config', '
88AW-650837381
vendor: 6 bytes, lines 88-89
88'); 89
89</script>
89 90 91 <!-- Facebook Pixel Code --> 92
92<script>
vendor: 434 bytes, lines 92-101
92 93 !function(f,b,e,v,n,t,s) 94 {if(f.fbq)return;n=f.fbq=function(){n.callMethod? 95 n.callMethod.apply(n,arguments):n.queue.push(arguments)}; 96 if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0'; 97 n.queue=[];t=b.createElement(e);t.async=!0; 98 t.src=v;s=b.getElementsByTagName(e)[0]; 99 s.parentNode.insertBefore(t,s)}(window, document,'script', 100 'https://connect.facebook.net/en_US/fbevents.js'); 101 fbq('init', '
1011643428045825303
vendor: 35 bytes, lines 101-103
101'); 102 fbq('track', 'PageView'); 103
103</script>
103 104 105 <!-- kakaoPixel --> 106
106<script type="text/javascript" charset="UTF-8" src="//t1.daumcdn.net/adfit/static/kp.js"></script>
106 107
107<script type="text/javascript"> 108 kakaoPixel('5213982040864504465').pageView(); 109 </script>
109 110 111 112 <noscript><img height="1" width="1" style="display:none" 113 src="https://www.facebook.com/tr?id=1643428045825303&ev=PageView&noscript=1" 114 /></noscript> 115 <!-- //End Facebook Pixel Code --> 116 117 <!-- //End head-seo--> 118 119 <!-- Enliple Common Tracker v3.6 [ê³µì©] start -->
120<script type="text/javascript"> 121 <!-- 122 function mobRf() { 123 var rf = new EN(); 124 rf.setData("userid", "beautysocial"); 125 rf.setSSL(true); 126 rf.sendRf(); 127 } 128 //--> 129</script>
vendor: 1 bytes, line 129
129
130<script src="https://cdn.megadata.co.kr/js/en_script/3.6/enliple_min3.6.js" 131 defer="defer" onload="mobRf()"></script>
131 132<!-- Enliple Common Tracker v3.6 [ê³µì©] end --> 133 134</head> 135 136<body> 137 138 <!-- Google Tag Manager (noscript) --> 139 <!-- End Google Tag Manager (noscript) --> 140 141 142 <style> 143 @-webkit-keyframes intro-open { 144 from { transform:translateY(100%); } 145 100% { transform:translateY(0); } 146 } 147 @keyframes intro-open { 148 from { transform:translateY(100%); } 149 100% { transform:translateY(0); } 150 } 151 @-webkit-keyframes intro-close { 152 from { transform:translateY(0); } 153 100% { transform:translateY(100%); } 154 } 155 @keyframes intro-close { 156 from { transform:translateY(0); } 157 100% { transform:translateY(100%); } 158 } 159 </style> 160 <div id="intro" style="background-color: white; 161 position: fixed; 162 width: 100%; 163 display: none"> 164 <div> 165 <object type="image/svg+xml" data="/img/logo.svg"></object> 166 </div> 167 <!--<h1 class="logo text-hide"><img th:data-src="@{/img/logo.png}" 168 th:alt="#{common.msg.title.groomingjok}" 169 th:text="#{common.msg.title.groomingjok}" 170 class="lazy" 171 >BeautySocial</h1>--> 172 </div> 173
173<script> 174 /*<![CDATA[*/ 175 var intro = (function() { 176 var ns = 'intro'; 177 var _pEle = document.querySelector('#intro'); 178 var _interface = {}; 179 _interface.close = function () { 180 _pEle.style.animation ='intro-close .3s ease both'; 181 setTimeout(function () { 182 _pEle.style.display = 'none'; 183 _pEle.style.zIndex = '-1'; 184 }, 430); 185 }; 186 _interface.open = function () { 187 _pEle.style.display = ''; 188 _pEle.style.zIndex = '9998'; 189 _pEle.style.animation ='intro-open .3s ease both'; 190 /*lazyLoading(sel('img', _pEle), true).setImagesSrc(function (imageEl) { 191 return hasClass(imageEl, 'lazy'); 192 });*/ 193 }; 194 return _interface; 195 })(); 196 /*]]>*/ 197 </script>
197 198 199 200 <!--overlay--> 201 <div id="overlayWrapper" class="box" style=" 202 position: fixed; 203 top: 0; left: 0; 204 width: 100%; height: 100%; 205 background: none; border: none; box-shadow: none; 206 display: none; 207 z-index: -1 208 "> 209 <div id="loading" style=" 210 position: absolute; 211 top: 0; 212 left: 0; 213 width: 100%; 214 height: 100%; 215 background: rgba(255,255,255,0); 216 border-radius: 3px; 217 cursor: default; 218 z-index: 50; 219 display: none 220 "> 221 <div class="loading" id="loadingImg"> 222 <div class="txt"></div> 223 </div> 224 </div> 225 </div> 226 <style> 227 .open1 { 228 animation: open1 6s forwards 229 } 230 @keyframes open1 { 231 from { background: rgba(255, 255, 255, 0); cursor: default } 232 50% { background: rgba(255, 255, 255, 0.4); cursor: default } 233 80% { background: rgba(255, 255, 255, 0.4); cursor: progress } 234 to { background: rgba(255, 255, 255, 0.7); cursor: progress } 235 } 236 .close1 { 237 animation: close1 1s forwards 238 } 239 @keyframes close1 { 240 from{ background: rgba(255, 255, 255, 0.2); cursor: default } 241 50% { background: rgba(255, 255, 255, 0) } 242 to { background: rgba(255, 255, 255, 0); display: none } 243 } 244 .appear1 { 245 animation: appear1 3s forwards 246 } 247 @keyframes appear1 { 248 from { opacity: 0 } 249 50% { opacity: 0.4 } 250 to { opacity: 1 } 251 } 252 .disappear1 { 253 animation: disappear1 1s forwards 254 } 255 @keyframes disappear1 { 256 from{ opacity: 0.2 } 257 50% { opacity: 0 } 258 to { opacity: 0 } 259 } 260 </style> 261
261<script> 262 /*<![CDATA[*/ 263 var overlay = (function(){ 264 var elOverlayWrapper = document.getElementById('overlayWrapper'); 265 var elOverlay = document.getElementById('loading'); 266 var elLoadingImg = document.getElementById('loadingImg'); 267 var _status = 'off'; 268 var init = function() { 269 elOverlayWrapper.style.display = ''; 270 }; 271 var isOn = function() { 272 return _status == 'on'; 273 }; 274 var _overlay = {}; 275 _overlay.isOn = isOn; 276 _overlay.on = function(){ 277 init(); 278 elOverlayWrapper.style.zIndex = 9999; 279 //elOverlay.classList.remove('close1'); 280 elOverlay.classList.add('open1'); 281 elOverlay.style.display = ''; 282 /* elLoadingImg.classList.remove('disappear1'); 283 elLoadingImg.classList.add('appear1'); */ 284 _status = 'on'; 285 // console.log('overlay on'); 286 }; 287 _overlay.off = function(){ 288 if (!isOn()) { 289 // console.log('overlay off block'); 290 return false; 291 } 292 //elOverlay.classList.add('close1'); 293 elOverlay.classList.remove('open1'); 294 window.setTimeout(function () { 295 elOverlayWrapper.style.zIndex = -1; 296 elOverlay.style.display = 'none'; 297 }, 300); 298 elLoadingImg.classList.add('disappear1'); 299 elLoadingImg.classList.remove('appear1'); 300 _status = 'off'; 301 // console.log('overlay off'); 302 }; 303 return _overlay; 304 })(); 305 /*]]>*/ 306 </script>
306 307 <!--//overlay--> 308 309 310 <!--placeholder--> 311 <div id="placeholderWrapper" style="display: none"> 312 <div class="media placeholder-content" data-ele-name="placeholder"> 313 <div class="profile placeholder-content-item"> 314 <span class="img"></span> 315 </div> 316 <div class="media-body" data-ele-name="items"> 317 <div class="tit placeholder-content-item" data-column-name="item" style="display: none"></div> 318 <div class="sub-tit placeholder-content-item" data-column-name="item" style="display: none"></div> 319 <div class="lst-site placeholder-content-item" data-column-name="item" style="display: none"></div> 320 </div> 321 </div> 322 <ul data-ele-name="itemWrapper" style="display: none"> 323 <li></li> 324 </ul> 325 </div> 326
326<script src="/js/inc/placeholder.min.js?ver=0.1.05"></script>
326 327 <!--//placeholder--> 328 329 330<!--
330<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
330--> 331<!--
331<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
331 -->
332<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.6/umd/popper.min.js" integrity="sha384-wHAiFfRlMFy6i5SRaxvfOCifBUQy1xHdJ/yoi7FRNXMRBu5WHdZYu1hA6ZOblgut" crossorigin="anonymous"></script>
332 333<!--
333<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js" integrity="sha384-B0UglyR+jN6CkvvICOB2joaf5I4l3gm9GU6Hc1og6Ls7i6U/mkkaduKaBhlAXv9k" crossorigin="anonymous"></script>
333 --> 334
335<script src="/js/jquery.min.js"></script>
vendor: 2 bytes, line 335
335
336<script src="/js/jquery-ui.js"></script>
336 337<!--
337<script src='/js/swiper-bundle.js'></script>
337 -->
338<script src='https://files.pleasehelp.co.kr/data.server/static/cdn/swiper-bundle.min.js'></script>
338 339<!--
339<script src='https://unpkg.com/swiper/swiper-bundle.min.js'></script>
339 -->
340<script src="/js/jquery.slideToUnlock.js"></script>
vendor: 2 bytes, line 340
340
341<script src="/js/hammer.min.js"></script>
vendor: 2 bytes, line 341
341
342<script src="/js/scripts.js?ver=25-04-09-1000"></script>
342 343<!--
343<script th:src="@{/lib/locales.min.js}"></script>
343 --> 344<!--
344<script th:src="@{/lib/moment.min.js}"></script>
344--> 345<!--
345<script th:src="@{/lib/moment-with-locales.min.js}"></script>
345-->
346<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js" integrity="sha256-4iQZ6BVL4qNKlQ27TExEhBN1HFPvAvAMbFavKKosSWQ=" crossorigin="anonymous"></script>
346 347 348 349 350 351<!--
351<script th:src="@{'/lib/rsea'+ ${__min__} +'.js'(ver=200126)}"></script>
351 -->
352<script src="/lib/rsea.js?ver=202505261504001"></script>
352 353 354
355<script src="/lib/polyfill.min.js?ver=0.1.31"></script>
vendor: 2 bytes, line 355
355
356<script 357> 358/*<![CDATA[*/ 359var _btsSet = Object.assign({ 360 cookieName: '' 361 , defaultLanguage: "ko" 362 , supportLanguage: {"ko":null,"ja":null,"en":null,"zh":null} 363 , cacheDay: 1 364 , toastTime: 1500 //ms 365 , mainSwiperLoop: false 366 , mainSwiperDelay: 3000 //ms 367 // , area: 'AIGSTN' 368 , area: '' 369 , rankingNotice: 4 370 , _all: 'ALL' 371 , _end: '' 372 , isDev: false 373 , platformType: 'G' 374 , genderCode: 'M' 375 , inputPlatformType: 'G' 376}, {"mainSwiperDelay":3000,"cacheDay":1,"toastTime":2200,"rankingNotice":"30"}); 377/*]]>*/ 378</script>
vendor: 2 bytes, line 378
378
379<script src="/lib/global_util.min.js?ver=0.4.85"></script>
vendor: 2 bytes, line 379
379
380<script src="/lib/dom_util.min.js?ver=0.5.12"></script>
vendor: 2 bytes, line 380
380
381<script src="/lib/string_util.min.js?ver=0.1.27"></script>
vendor: 2 bytes, line 381
381
382<script src="/lib/date_util.min.js?ver=0.4.78"></script>
vendor: 2 bytes, line 382
382
383<script src="/lib/validate_util.min.js?ver=0.2.11"></script>
vendor: 2 bytes, line 383
383
384<script src="/lib/cookie_util.min.js?ver=0.4.42"></script>
vendor: 2 bytes, line 384
384
385<script src="/lib/i18n_util.min.js?ver=0.1.32"></script>
vendor: 2 bytes, line 385
385
386<script src="/lib/consts.min.js?ver=0.9.00"></script>
vendor: 2 bytes, line 386
386
387<script 388> 389 /*<![CDATA[*/ 390var __userNo = -1; 391var __userNickname = null; 392var locale = "en"; // FIXME locale -> getLanguage() ë¡ ëì²´ 393var language = "en"; 394var countryCd = ""; 395var isEn = function() { 396 return language == 'en'; 397}; 398var isKo = function() { 399 return language == 'ko'; 400}; 401var getLanguage = function() { 402 return language; 403}; 404var isForeignLang = function() { 405 return !isKo(); 406}; 407"en" 408var __bts = { 409 mode: "prod", 410 defaults: { 411 pageZeroStart: 0, 412 pageStart: 1, 413 pageStart_append: 1, 414 pageStart_dropdown: 1, 415 pageStart_search: 1, 416 pageSize: 10, 417 pageSize_dropdown: 20, 418 pageSize_txPurposes: 60, 419 pageSize_txNames: 350, 420 pageSize_hospitals: 9999, 421 pageSize_doctors: 9999, 422 pageSize_searchResult: 6, 423 pageSize_subList: 20, 424 statusCd: 'A', 425 orderKey: 'id', 426 orderDirection: 'desc', 427 tagArea: 'ALL', 428 rankingType: '', 429 rankingTxPartCd: '', 430 _end: '' 431 }, 432 consts: { 433 yn: { 434 y: "Y", 435 n: "N", 436 _end: '' 437 }, 438 surgicalType: { 439 y: "surgical", 440 n: "nonsurgical" 441 }, 442 productType: { 443 skin: "skin", 444 hair: "hair", 445 hue: "hue", 446 teeth: "teeth", 447 body: "body" 448 }, 449 boardType: { 450 face: "face", 451 cos: "cos", 452 hl: "hl", 453 ur: "ur", 454 sc: "sc", 455 lv: "lv", 456 car: "car", 457 sprot: "sport", 458 game: "game", 459 skin: "skin", 460 heal: "heal", 461 fash: "fash", 462 chat: "chat", 463 ques: "ques", 464 anon: "anon", 465 best: 'best', 466 etc: "etc" 467 }, 468 epReviewType: { 469 doctor: 'd', 470 hospital: 'p' 471 }, 472 rankingType: { 473 hospital: "chkProv", 474 doctor: "chkDoctor" 475 }, 476 serviceType: { 477 empty: "PS0EMPTY" 478 }, 479 sns: { 480 kakaotalk: "kakaotalk", 481 kakao: "kakao", 482 line: "line", 483 facebook: "facebook", 484 skype: "skype", 485 viber: "viber",
486 wechat: "wechat", 487 weibo: "weibo", 488 whatsapp: "whatsapp", 489 google: "google", 490 email: "email", 491 insta: "insta", 492 twitter: "twitter" 493 }, 494 android: { 495 key: { 496 id: "hid", 497 name: "hname", 498 like: "like" 499 }, 500 yn: { 501 y: "yes", 502 n: "no" 503 } 504 }, 505 userAgent: { 506 androidWebView: "androidWebView", 507 iosWebView: "iosWebView" 508 }, 509 fileKey: {"cpr_02":"cpr_02","cpr_01":"cpr_01","review_after":"review_after","profile":"profile","prov_req":"prov_req","review_before":"review_before","comment":"comment","prov_bizr":"prov_bizr","prov_main":"prov_main","prov":"prov"}, 510 likeCd: { 511 all: "ALL", 512 hospital: "PRV001", 513 doctor: "DOC001", 514 treatment: "TX0001", 515 event: "EV0001", 516 review: "RV0001" 517 }, 518 review: { 519 status: { 520 waiting: "S_I", 521 approval: "S_F", 522 impossible: "S_R", 523 waitingReapproval: "S_RI", 524 }, 525 costType: { 526 one: "TC1CST", 527 total: "TCTCST", 528 unknown: "TCUNKN", 529 }, 530 params: { 531 translated: "translated" 532 } 533 }, 534 order: { 535 ordrDefault: 'id', 536 direction: { 537 asc: 'asc', 538 desc: 'desc' 539 }, 540 id: 'id', 541 popular: 'popular', 542 rate: 'rate', 543 comment: 'comment' 544 }, 545 contryCd: { 546 ko: '+82' 547 }, 548 swiperConfig:{ 549 slidesPerView: 'auto' 550 }, 551 txPartType: { 552 txPartCd : 'txPartCd', 553 txPartCdWh : 'txPartCdWh', 554 }, 555 cookie: { 556 returnUrl : '___beautycorn_rtn', 557 cookieNameLoginId : '_BTC_ACNT' 558 } 559 }, 560 main: { 561 event: 'event', 562 store: 'store', 563 hospital: 'hospital', 564 doctor: 'doctor', 565 treatment: 'treatment', 566 treatmentMain: 'treatmentMain', 567 review: 'review', 568 user: 'user', 569 _end: '' 570 }, 571 scheme: { 572 protocol: { 573 ios: '', //TODO 574 android: '' //TODO 575 } 576 }, 577 url: { 578 aapi: "\/api", 579 sapi: "https:\/\/sapi.beautysocial.io\/api", 580 rapi: "https:\/\/rapi.beautysocial.io\/rapi", 581 schema: "https", 582 cdn: "files.beautysocial.io\/data.dev", 583 repository: "", 584 googleApi_embedUrl: "https:\/\/www.google.com\/maps\/embed\/v1\/place?key=AIzaSyCDjUzy6HIRfmTb0jSIbRNB3tzlsG4JcdQ", 585 app: { 586 google: '', 587 apple: '' 588 }, 589 _end: '' 590 }, 591 path: { 592 index: "\/", 593 login: "\/login", 594 logout: "\/logout", 595 faq: "\/faq", 596 notice: "\/notice", 597 privacy: "\/privacy", 598 terms: "\/terms", 599 search: "\/search", 600 searchResult: "\/search\/result", 601 treatment: "\/treatment", 602 treatmentMain: "\/treatmentMain", 603 hospital: "\/hospital", 604 doctor: "\/doctor", 605 event: "\/event", 606 review: "\/review", 607 reviewReg: "\/review\/reg", 608 employeeReview: "\/employeeReview", 609 employeeReviewDetail: "\/employeeReview\/detail", 610 employeeReviewDReg: "\/employeeReview\/dreg", 611 employeeReviewPReg: "\/employeeReview\/preg", 612 employeeReviewDEdit: "\/employeeReview\/dedit", 613 employeeReviewPEdit: "\/employeeReview\/pedit", 614 complainReview: "\/complainReview", 615 complainReviewDetail: "\/complainReview\/detail", 616 complainReviewDReg: "\/complainReview\/dreg", 617 complainReviewPReg: "\/complainReview\/preg", 618 complainReviewDEdit: "\/complainReview\/dedit", 619 complainReviewPEdit: "\/complainReview\/pedit", 620 reviewEdit: "\/review\/edit", 621 store: "\/store", 622 storeDetail: "\/store\/detail", 623 shoppingBasket: "\/store\/shoppingBasket", 624 storeOrdersheet: "\/store\/storeOrdersheet", 625 board: "\/board", 626 estimate: "\/estimate", 627 estimateIntro: "\/estimate\/intro", 628 estimateApplication: "\/estimate\/application", 629 myPageSetting: "\/mypage\/setting", 630 myPageEstimate: "\/mypage\/estimate", 631 treatmentDetail: "\/treatment\/detail", 632 treatmentMainDetail: "\/treatmentMain\/detail", 633 hospitalDetail: "\/hospital\/detail", 634 doctorDetail: "\/doctor\/detail", 635 eventDetail: "\/event\/detail", 636 reviewDetail: "\/review\/detail",
637 userDetail: "\/user\/detail", 638 eventRecentlyList: "\/event\/eventRecentlyList", 639 boadDetail: "\/board\/detail", 640 videoDetail: "\/video\/detail", 641 _end: '' 642 }, 643 statusCode: { 644 ok: 200, 645 location: 302, 646 sysErr: 1001 647 }, 648 messageKeys: null, 649 code: { 650 'err.cd.common.invalid.token': "1002", 651 'err.cd.common.expired.token': "1003", 652 }, 653 message: [ 654 [ 'exception', "An error has occured while processing. Please contact the administrator."], 655 [ 'invalidToken', "\uC720\uD6A8\uD558\uC9C0 \uC54A\uC740 \uD1A0\uD070\uC785\uB2C8\uB2E4."], 656 [ 'expiredToken', "\uB9CC\uB8CC\uB41C \uD1A0\uD070\uC785\uB2C8\uB2E4."], 657 [ 'invalidAccess', "This is an incorrect approach."], 658 [ 'requireSearchOptions', "Enter keyword"], 659 [ 'mypage.withdrawal.msg.please.select.a.reason', "Please select a reason."], 660 [ 'join.msg.you.can.select.up.to.3.body.areas', "You can select up to 3 body areas."], 661 [ 'join.msg.please.select.at.least.1.body.area', "Please select at least 1 body area."], 662 [ 'mypage.withdrawal.msg.please.describe.your.reason.for.leaving', "Please describe your reason for leaving"], 663 [ 'common.msg.sub.filter.search.tx.part.clinics', "Search clinics by treatments"], 664 [ 'common.msg.sub.filter.search.tx.part.doctors', "Search doctors by treatments"], 665 [ 'common.msg.sub.filter.search.tx.part.reviews', "Select a treatment"], 666 [ 'end', '' ] 667 ], 668 text: { 669 noData: "No data" 670 , loading: 'loading...' 671 , noti_lastPage: "Last Page" 672 , noti_selectTxFirst: "Please select treatment area or goal first." 673 , title_main: "GroomingJok" 674 , title_reviews: "Reviews" 675 , title_reviewWrite: "Write a review" 676 , title_reviewEdit: "Edit review" 677 , title_searchMain: "Search" 678 , title_searchTreatment: "Search Treatments" 679 , title_searchEvent: "Promotions" 680 , title_searchStore: 'ì¤í¨ì¼ì´' 681 , title_evaluation: "Rate" 682 , title_searchHospital: "Search Clinics" 683 , title_searchDoctor: "Search Doctors" 684 , title_searchReview: "Reviews" 685 , title_mypage: "My Page" 686 , title_ranking: "Weekly Ranking" 687 , title_notification: "Notification" 688 , title_offersRedeemed: "Promotions I booked" 689 //, title_counselList: /*"Appointment Request List"*/'ìë´ ì ì² ë¦¬ì¤í¸' 690 , title_counselHistory: "Appointment requests" 691 //, title_applyList: /*"Request List"*/'ìë´ ë¦¬ì¤í¸' 692 , title_report: "Report" 693 , title_myReview: "My Reviews" 694 , title_myLikeEvent: "Promotions I liked" 695 , title_myLikeReview: "Reviews I liked" 696 , title_likeList: "List of Liked Contents" 697 , title_faq: "FAQ" 698 , title_signUp: "Sign up" 699 , title_userWithdrawal: "Delete Account" 700 , title_notice: "Updates" 701 , title_policy: "Privacy Policy" 702 , title_terms: "Terms of Service" 703 , title_config: "Settings" 704 , title_reqComplete: "Succeesfully Submitted!" 705 , title_estimate_msg_quote_request: "Request Price Quote" 706 , unit_year: "" 707 , unit_currency: "$" 708 , unit_currency_kr: "\u20A9" 709 , unit_currency_us: "$" 710 , unit_currency_jp: "\u5186" 711 , unit_currency_cn: "\u5143" 712 , unit_currency_kr_char: "KRW" 713 , unit_currency_us_char: "USD" 714 , unit_currency_jp_char: "JPY" 715 , unit_currency_cn_char: "CNY" 716 , unit_currency_kr_manWon: "\uB9CC\uC6D0" 717 , unit_currency_estimate: "$" 718 , word_surgicalTypeA: "All" 719 , word_surgicalTypeY: "Surgical" 720 , word_surgicalTypeN: "Non-surgical" 721 , word_surgicalTypeP: "Non-surgical" 722 , word_productTypeSkin: '기ì´' 723 , word_productTypeHair: 'í¤ì´' 724 , word_productTypeHue: 'ì¹ë£' 725 , word_productTypeTeeth: 'ë³´í¸' 726 , word_productTypeBody: 'ë°ë' 727 , word_boardTypeFace: 'ì¼í' 728 , word_boardTypeCos: 'ì±í' 729 , word_boardTypeHl: 'í모' 730 , word_boardTypeUr: 'ë¹ë¨' 731 , word_boardTypeSc: 'ì±ê³ 민' 732 , word_boardTypeLv: 'ì°ì ã»ì±ê³ 민' 733 , word_boardTypeCar: 'ìëì°¨' 734 , word_boardTypeSport: 'ì¤í¬ì¸ ' 735 , word_boardTypeGame: 'ê²ì' 736 , word_boardTypeSkin: 'í¼ë¶' 737 , word_boardTypeHeal: 'í¬ì¤' 738 , word_boardTypeFash: 'í¨ì ' 739 , word_boardTypeChat: 'ì¡ë´' 740 , word_boardTypeEtc: 'ìì ' 741 , word_boardTypeQues: 'ì§ë¬¸' 742 , word_boardTypeAnon: 'ìµëª ' 743 , word_boardTypeBest: 'ë² ì¤í¸' 744 , word_categoryNonSurgical: "Non-surgical" 745 , word_categorySurgical: "Surgical" 746 , word_mainHospital: "Clinics" 747 , word_mainDoctor: "Doctors" 748 , word_before: "Before" 749 , word_after: "After" 750 , sub_txPart: "Treatment Area" 751 , sub_txPurpose: "Treatment Goal" 752 , sub_txName: "Treatment Method" 753 , word_night: "After hours" 754 , word_holiday: "Off" 755 , word_appointment: "Appointment" 756 , word_more: "More" 757 , word_folding: "Fold" 758 , word_like: "Like" 759 , word_likeCancel: "Cancel like" 760 , word_all: "All"
761 , list_categoryAll: "All" 762 , review_msg_waiting_for_release: "Waiting for release" 763 , review_msg_cannot_write: "Cannot write" 764 , review_msg_waiting_for_re_confirmation: "Waiting for re-confirmation" 765 , common_msg_delete_confirm: "Confirm to cancel" 766 , common_msg_do_you_want_to_delete: "Do you want to cancel?" 767 , review_msg_do_you_want_to_delete: "Do you want to cancel?" 768 , common_msg_you_can_select_up_to_maximum: "You can select up to {0} body areas." 769 , common_msg_see_translation: "See translation" 770 , common_msg_see_original: "See original" 771 , _end: '' 772 }, 773 url_img: { 774 EYES: "\/img\/icon-bk-eyes.png", 775 FACE: "\/img\/icon-bk-face.png", 776 FOREHEAD: "\/img\/icon-bk-forehead.png", 777 HAIR: "\/img\/icon-bk-hair.png", 778 LIPS: "\/img\/icon-bk-lips.png", 779 NOSE: "\/img\/icon-bk-nose.png", 780 TEETH: "\/img\/icon-bk-teeth.png", 781 BREASTS: "\/img\/icon-bk-breasts.png", 782 EARS: "\/img\/icon-bk-ears.png", 783 CHIN_JAW: "\/img\/icon-bk-chin.png", 784 NECK: "\/img\/icon-bk-neck.png", 785 BODY: "\/img\/icon-bk-body.png", 786 GENITALS: "\/img\/icon-bk-genitals.png", 787 788 SKIN: "\/img\/icon-tm-skin.png", 789 FIBOLI: "\/img\/icon-tm-fillers.png", 790 FACYAN: "\/img\/icon-tm-jaw.png", 791 FATTRAN: "\/img\/icon-tm-fat.png", 792 LIPOSUCTION: "\/img\/icon-tm-liposuction.png", 793 FOREHAIR: "\/img\/icon-tm-hair.png", 794 795 _ALL: "\/img\/icon-bk-all.png", 796 _end: '' 797 }, 798 set: _btsSet 799}; 800 /*]]>*/ 801</script>
vendor: 2 bytes, line 801
801
802<script src="/lib/model.min.js?ver=20-01-29-1553"></script>
802 803<!--
803<script th:src="@{'/lib/app'+ ${__min__} +'.js'(ver=21-07-30-0916)}"></script>
803 -->
804<script src="/lib/app.js?ver=25-05-07-0940"></script>
vendor: 2 bytes, line 804
804
805<script> 806 /*<![CDATA[*/ 807 //FIXME ì¿ í¤ ê¸°ë° ë¡ê·¸ì¸ ì²´í¬ 808 btsInit().run(); 809 /*]]>*/ 810</script>
810 811<!--
811<script th:src="@{'/lib/common-custom'+ ${__min__} +'.js'(ver=25-04-08-1020)}"></script>
811 -->
812<script src="/lib/common-custom.js?ver=25-04-09-1000"></script>
vendor: 2 bytes, line 812
812
813<script src="/lib/kevin.min.js?ver=20-01-07-1654"></script>
vendor: 2 bytes, line 813
813
814<script src="/lib/steve.min.js?ver=21-01-28-1250"></script>
vendor: 2 bytes, line 814
814
815<script src="/lib/naver-analytics.min.js?ver=20-05-26-1700"></script>
815 816 817 818<!-- alert --> 819<div id="alert" class="modal alert" style="display: none;"> 820 <div class="modal-inner"> 821 <a href="#" class="ico close modalClose" data-ele-name="btnCloseAlert">ë«ê¸°</a> 822 <div class="modal-header"> 823 <div class="modal-title" data-column-name="title">ì림</div> 824 </div> 825 <div class="modal-body"> 826 <div data-ele-name="wrapperMessageList"> 827 <p class="desc" data-column-name="message"> 828 loading... 829 </p> 830 </div> 831 <div data-ele-name="wrapperTemplateItem" style="display: none"> 832 <p class="desc" data-column-name="message">loading...</p> 833 </div> 834 </div> 835 <div class="modal-footer"> 836 <a href="javascript:void(0)" class="btn positive modalClose" data-column-name="btnOk">íì¸</a> 837 </div> 838 </div> 839 <div class="modal-dim" id="alertDim"></div> 840</div> 841 842<!-- <div id="alert" class="md-alert modal fade" tabindex="-1" role="dialog" style="display: none;"> 843 <div class="modal-dialog modal-dialog-centered" role="document"> 844 <div class="modal-content"> 845 <div class="modal-header"> 846 <h5 class="modal-title" data-column-name="title">loading...</h5> 847 <button type="button" class="close" aria-label="Close" data-ele-name="btnCloseAlert"> 848 <i class="icon-hd-close"></i> 849 </button> 850 </div> 851 <div class="modal-body"> 852 <div class="alert-body"> 853 <div class="alert-cnt" data-ele-name="wrapperMessageList"> 854 <p data-column-name="message">loading...</p> 855 </div> 856 <div class="alert-cnt" data-ele-name="wrapperTemplateItem" style="display: none"> 857 <p data-column-name="message">loading...</p> 858 </div> 859 </div> 860 </div> 861 </div> 862 </div> 863</div> -->
864<script> 865 /*<![CDATA[*/ 866 var alertModal = (function(){ 867 868 var ns = 'alertModal'; 869 870 var _alertModal = { 871 $el: { 872 p: null, 873 title: null, 874 close: null, 875 wrapperMessageList: null, 876 wrapperTemplateItem: null 877 }, 878 alertCloseCallback: function() { 879 bts.isDebug() && console.log(ns + '.alertCloseCallback :: close'); 880 } 881 }; 882 883 _alertModal.alertInit = function() { 884 885 _alertModal.$el.p = $('#alert'); 886 _alertModal.$el.dim = $('#alertDim'); 887 _alertModal.$el.title = _alertModal.$el.p.find('[data-column-name="title"]'); 888 _alertModal.$el.close = _alertModal.$el.p.find('[data-ele-name="btnCloseAlert"]'); 889 _alertModal.$el.wrapperMessageList = _alertModal.$el.p.find('[data-ele-name="wrapperMessageList"]'); 890 _alertModal.$el.wrapperTemplateItem = _alertModal.$el.p.find('[data-ele-name="wrapperTemplateItem"]'); 891 892 var _close = function() { 893 // _alertModal.$el.p[0].style.zIndex = 0; //FIXME 894 _alertModal.$el.p.css("z-index", "0"); //FIXME 895 _alertModal.$el.p.hide(); 896 _alertModal.$el.p.removeClass('on'); 897 _alertModal.$el.dim.removeClass('on'); 898 if (isFunction(_alertModal.alertCloseCallback)) { 899 900 _alertModal.alertCloseCallback(); 901 } 902 }; 903 _alertModal.$el.close[0].onclick = function(e) { 904 905 // _alertModal.$el.p.modal('hide'); 906 _close(); 907 } 908 909 _alertModal.$el.p.on('hidden.bs.modal' , function() { 910 _close(); 911 }); 912 913 _alertModal.$el.dim.on('click', function(e){ 914 e.preventDefault(); 915 916 _alertModal.$el.p.css("z-index", "0"); //FIXME 917 _alertModal.$el.p.hide(); 918 _alertModal.$el.p.removeClass('on'); 919 _alertModal.$el.dim.removeClass('on'); 920 }); 921 }; 922 _alertModal.alertInit(); 923 924 _alertModal.alertClear = function() { 925 926 _alertModal.alertCloseCallback = function() { 927 bts.isDebug() && console.log(ns + '.alertCloseCallback :: close'); 928 }; 929 930 _alertModal.$el.title[0].innerHTML = ''; 931 932 _alertModal.$el.wrapperMessageList[0].innerHTML = ''; 933 }; 934 _alertModal.alert = function(v, closeCallback, title) { 935 //alert(v); 936 937 _alertModal.alertClear(); 938 939 if (isFunction(closeCallback)) { 940 941 _alertModal.alertCloseCallback = closeCallback; 942 } 943 944 if (title) { 945 _alertModal.$el.title[0].innerHTML = title; 946 } else { 947 _alertModal.$el.close.hide(); 948 } 949 950 var _el = null; 951 var _messages; 952 if (typeof v == 'string') { 953 _messages = v ? v.normalize().split('\n') : ['']; 954 resolveEles(_messages, function(_v, i){ 955 if (_el != null) { 956 _alertModal.$el.wrapperMessageList.append('<br>'); 957 } 958 _el = _alertModal.$el.wrapperTemplateItem.children()[0].cloneNode(); 959 _el.innerHTML = _v || _alertModal.$el.wrapperTemplateItem.children()[0].innerHTML; 960 _alertModal.$el.wrapperMessageList.append(_el); 961 }); 962 } else if (isEle(v)) { 963 _alertModal.$el.wrapperMessageList.append(v); 964 } else if (isEles(v)) { 965 _messages = v; 966 resolveEles(_messages, function(_v, i){ 967 if (_el != null) { 968 _alertModal.$el.wrapperMessageList.append('<br>'); 969 } 970 _el = _v; 971 _alertModal.$el.wrapperMessageList.append(_el); 972 }); 973 } else { 974 _messages = [v]; 975 resolveEles(_messages, function(_v, i){ 976 if (_el != null) { 977 _alertModal.$el.wrapperMessageList.append('<br>'); 978 } 979 _el = _alertModal.$el.wrapperTemplateItem.children()[0].cloneNode(); 980 _el.innerHTML = _v || _alertModal.$el.wrapperTemplateItem.children()[0].innerHTML; 981 _alertModal.$el.wrapperMessageList.append(_el); 982 }); 983 } 984 985 986 // _alertModal.$el.p.modal(); 987 // _alertModal.$el.p[0].style.zIndex = 1052; //FIXME 988 _alertModal.$el.p.css("z-index", "999"); //FIXME 989 _alertModal.$el.p.show(); 990 _alertModal.$el.p.addClass('on'); 991 _alertModal.$el.dim.addClass('on'); 992 993 ModalUtils.adjustPosition(); 994 995 return false; 996 }; 997 return { 998 open: function(v, closeCallback, title) { 999 return _alertModal.alert(v, closeCallback, title); 1000 } 1001 } 1002 })(); 1003 /*]]>*/ 1004</script>
1004 1005 1006 1007<!-- confirm --> 1008<div id="confirm" class="modal alert" style="display: none;"> 1009 <div class="modal-inner"> 1010 <a href="#" class="ico close modalClose" data-ele-name="btnCloseAlert">ë«ê¸°</a> 1011 <div class="modal-header"> 1012 <div class="modal-title" data-column-name="title">ì림</div> 1013 </div> 1014 <div class="modal-body"> 1015 <div data-ele-name="wrapperMessageList"> 1016 <p class="desc" data-column-name="message"> 1017 loading... 1018 </p> 1019 </div> 1020 <div data-ele-name="wrapperTemplateItem" style="display: none"> 1021 <p class="desc" data-column-name="message">loading...</p> 1022 </div> 1023 </div> 1024 <div class="modal-footer"> 1025 <a href="javascript:void(0)" class="btn natural" data-column-name="btnCancel">Cancel</a> 1026 <a href="javascript:void(0)" class="btn positive modalClose" data-column-name="btnOk">Confirm</a> 1027 </div> 1028 </div> 1029 <div class="modal-dim" id="confirmDim" onclick="(function(){$(this).hide(); $(this).removeClass('on');})(this)"></div> 1030</div> 1031 1032<!-- <div id="confirm" class="md-alert modal fade" tabindex="-1" role="dialog" style="display: none;"> 1033 <div class="modal-dialog modal-dialog-centered" role="document"> 1034 <div class="modal-content"> 1035 <div class="modal-header"> 1036 <h5 class="modal-title" data-column-name="title">loading...</h5> 1037 <button type="button" class="close" aria-label="Close" data-ele-name="btnCloseAlert"> 1038 <i class="icon-hd-close"></i> 1039 </button> 1040 </div> 1041 <div class="modal-body"> 1042 <div class="alert-body"> 1043 <div class="alert-cnt" data-ele-name="wrapperMessageList"> 1044 <p data-column-name="message">loading...</p> 1045 </div> 1046 <div class="alert-cnt" data-ele-name="wrapperTemplateItem" style="display: none"> 1047 <p data-column-name="message">loading...</p> 1048 </div> 1049 </div> 1050 </div> 1051 <div class="modal-footer wide"> 1052 <div class="col-6"><button type="button" class="btn btn-lg btn-block btn-light" data-column-name="btnCancel">Cancel</button></div> 1053 <div class="col-6"><button type="button" class="btn btn-lg btn-block btn-secondary" data-column-name="btnOk">Confirm</button></div> 1054 </div> 1055 </div> 1056 </div> 1057</div> -->
1058<script> 1059 /*<![CDATA[*/ 1060 var confirmModal = (function(){ 1061 1062 var ns = 'confirmModal'; 1063 1064 var _confirmModal = { 1065 $el: { 1066 p: null, 1067 $p: null, 1068 title: null, 1069 btnOk: null, 1070 btnCancel: null, 1071 close: null, 1072 wrapperMessageList: null, 1073 wrapperTemplateItem: null 1074 }, 1075 confirmCallback: function() { 1076 bts.isDebug() && console.log(ns + '.confirmCallback :: confirm'); 1077 }, 1078 cancelCallback: function() { 1079 bts.isDebug() && console.log(ns + '.cancelCallback :: cancel'); 1080 } 1081 }; 1082 1083 _confirmModal.alertInit = function() { 1084 1085 _confirmModal.$el.p = sel('#confirm'); 1086 _confirmModal.$el.$p = $('#confirm'); 1087 _confirmModal.$el.$dim = $('#confirmDim', _confirmModal.$el.p); 1088 _confirmModal.$el.title = _confirmModal.$el.$p.find('[data-column-name="title"]'); 1089 _confirmModal.$el.btnOk = _confirmModal.$el.$p.find('[data-column-name="btnOk"]'); 1090 _confirmModal.$el.btnCancel = _confirmModal.$el.$p.find('[data-column-name="btnCancel"]'); 1091 _confirmModal.$el.close = _confirmModal.$el.$p.find('[data-ele-name="btnCloseAlert"]'); 1092 _confirmModal.$el.wrapperMessageList = _confirmModal.$el.$p.find('[data-ele-name="wrapperMessageList"]'); 1093 _confirmModal.$el.wrapperTemplateItem = _confirmModal.$el.$p.find('[data-ele-name="wrapperTemplateItem"]'); 1094 1095 var _close = function() { 1096 // _confirmModal.$el.$p[0].style.zIndex = 0; //FIXME 1097 _confirmModal.$el.$p.css("z-index", "0"); //FIXME 1098 _confirmModal.$el.$p.hide(); 1099 _confirmModal.$el.$p.removeClass('on'); 1100 _confirmModal.$el.$dim.removeClass('on'); 1101 1102 }; 1103 var _confirm = function() { 1104 // _confirmModal.$el.$p[0].style.zIndex = 0; //FIXME 1105 _close(); 1106 if (isFunction(_confirmModal.confirmCallback)) { 1107 _confirmModal.confirmCallback(); 1108 } 1109 }; 1110 _confirmModal.$el.close[0].onclick = function(e) { 1111 // _confirmModal.$el.$p.modal('hide'); 1112 _close(); 1113 if (isFunction(_confirmModal.cancelCallback)) { 1114 _confirmModal.cancelCallback(); 1115 } 1116 }; 1117 1118 _confirmModal.$el.$p.on('hidden.bs.modal' , function() { 1119 _close(); 1120 }); 1121 _confirmModal.$el.btnCancel[0].onclick = function(e) { 1122 // _confirmModal.$el.$p.modal('hide'); 1123 _close(); 1124 if (isFunction(_confirmModal.cancelCallback)) { 1125 _confirmModal.cancelCallback(); 1126 } 1127 }; 1128 _confirmModal.$el.btnOk[0].onclick = function(e) { 1129 1130 // _confirmModal.$el.$p.modal('hide'); 1131 _close(); 1132 _confirm(); 1133 }; 1134 }; 1135 _confirmModal.alertInit(); 1136 1137 _confirmModal.alertClear = function() { 1138 1139 _confirmModal.confirmCallback = function() { 1140 bts.isDebug() && console.log(ns + '.confirmCallback :: confirm'); 1141 }; 1142 _confirmModal.cancelCallback = function() { 1143 bts.isDebug() && console.log(ns + '.cancelCallback :: cancel'); 1144 }; 1145 1146 _confirmModal.$el.title[0].innerHTML = 'Confirm'; 1147 _confirmModal.$el.btnOk[0].innerHTML = 'Confirm'; 1148 _confirmModal.$el.btnCancel[0].innerHTML = 'Cancel'; 1149 1150 _confirmModal.$el.wrapperMessageList[0].innerHTML = ''; 1151 }; 1152 _confirmModal.alert = function(v, confirmCallback, cancelCallback, title, confirmBtnText, cancelBtnText) { 1153 // alert(v); 1154 1155 _confirmModal.alertClear(); 1156 1157 if (isFunction(confirmCallback)) { 1158 1159 _confirmModal.confirmCallback = confirmCallback; 1160 } 1161 if (isFunction(cancelCallback)) { 1162 1163 _confirmModal.cancelCallback = cancelCallback; 1164 } 1165 1166 if (title) { 1167 _confirmModal.$el.title[0].innerHTML = title; 1168 } 1169 if (confirmBtnText) { 1170 _confirmModal.$el.btnOk[0].innerHTML = confirmBtnText; 1171 } 1172 if (cancelBtnText) { 1173 _confirmModal.$el.btnCancel[0].innerHTML = cancelBtnText; 1174 } 1175 1176 var _el = null; 1177 var _messages; 1178 if (typeof v == 'string') { 1179 var _messages = v ? v.normalize().split('\n') : ['']; 1180 resolveEles(_messages, function(_v, i){ 1181 if (_el != null) { 1182 _confirmModal.$el.wrapperMessageList.append('<br>'); 1183 } 1184 _el = _confirmModal.$el.wrapperTemplateItem.children()[0].cloneNode(); 1185 _el.innerHTML = _v || _confirmModal.$el.wrapperTemplateItem.children()[0].innerHTML; 1186 //$(_el).find('[data-column-name="message"]')[0].innerHTML = _v; 1187 _confirmModal.$el.wrapperMessageList.append(_el); 1188 }); 1189 } else if (isEle(v)) { 1190 _confirmModal.$el.wrapperMessageList.append(v); 1191 } else if (isEles(v)) { 1192 _messages = v; 1193 resolveEles(_messages, function(_v, i){ 1194 if (_el != null) { 1195 _confirmModal.$el.wrapperMessageList.append('<br>'); 1196 } 1197 _el = _v; 1198 _confirmModal.$el.wrapperMessageList.append(_el); 1199 }); 1200 } else { 1201 _messages = [v]; 1202 resolveEles(_messages, function(_v, i){ 1203 if (_el != null) { 1204 _confirmModal.$el.wrapperMessageList.append('<br>'); 1205 } 1206 _el = _confirmModal.$el.wrapperTemplateItem.children()[0].cloneNode(); 1207 _el.innerHTML = _v || _confirmModal.$el.wrapperTemplateItem.children()[0].innerHTML; 1208 //$(_el).find('[data-column-name="message"]')[0].innerHTML = _v; 1209 _confirmModal.$el.wrapperMessageList.append(_el); 1210 }); 1211 } 1212 1213 // _confirmModal.$el.$p.modal(); 1214 // _confirmModal.$el.$p[0].style.zIndex = 1052; //FIXME 1215 _confirmModal.$el.$p.css("z-index", "999"); //FIXME 1216 _confirmModal.$el.$p.show(); 1217 _confirmModal.$el.$p.addClass('on'); 1218 _confirmModal.$el.$dim.addClass('on'); 1219 1220 ModalUtils.adjustPosition(); 1221 1222 return false; 1223 }; 1224 return { 1225 open: function(v, confirmCallback, cancelCallback, title, confirmBtnText, cancelBtnText) { 1226 return _confirmModal.alert(v, confirmCallback, cancelCallback, title, confirmBtnText, cancelBtnText); 1227 } 1228 } 1229 })(); 1230 /*]]>*/ 1231</script>
1231 1232 1233 1234 1235 1236 1237 1238<!-- toast --> 1239 1240<!-- 1241padding-right: 15px; 1242 display: block; 1243 z-index: 1050; 1244 width: 70%; 1245 height: 60px; 1246 top: 80%; 1247 left: 15%; 1248 overflow: hidden; 1249 max-height: 24px; top: 84%; 1250 max-height: 48px; top: 84%; 1251 max-height: 72px; top: 81%; 1252 max-height: 92px; top: 78%; 1253--> 1254 1255 1256<div id="toast" class="modal toast bottom" style="display: none;"> 1257 <div class="modal-inner"> 1258 <div class="modal-header" style="display: none;"> 1259 <h5 class="modal-title text-center" data-column-name="title">loading...</h5> 1260 </div> 1261 1262 <div class="modal-body"> 1263 <div data-ele-name="wrapperMessageList"> 1264 </div> 1265 <div data-ele-name="wrapperTemplateItem" style="display: none"> 1266 <p data-column-name="message">ë´ì© 기íì 참조 ë¶íë립ëë¤</p> 1267 </div> 1268 </div> 1269 </div> 1270</div> 1271 1272<!-- <div id="toast" class="md-toast modal fade" tabindex="-1" role="dialog" style="display: none;"> 1273 <div class="modal-dialog modal-dialog-centered" role="document"> 1274 <div class="modal-content"> 1275 <div class="modal-header" style=" 1276 display: none; 1277 "> 1278 <h5 class="modal-title text-center" data-column-name="title">loading...</h5> 1279 </div> 1280 <div class="modal-body"> 1281 í ì¤í¸ ë´ì© 1282 <div class="alert-body"> 1283 <div class="alert-cnt" data-ele-name="wrapperMessageList"> 1284 </div> 1285 <div class="alert-cnt" data-ele-name="wrapperTemplateItem" style="display: none"> 1286 <p data-column-name="message">loading...</p> 1287 </div> 1288 </div> 1289 </div> 1290 </div> 1291 </div> 1292</div> --> 1293<!-- alert based --> 1294<!-- <div id="toast" class="md-toast modal fade" tabindex="-1" role="dialog"> --> 1295<!-- <div class="modal-dialog modal-dialog-centered" role="document"> --> 1296<!-- <div class="modal-content"> --> 1297<!-- <div class="modal-header"> --> 1298<!-- <h5 class="modal-title text-center" data-column-name="title">loading...</h5> --> 1299<!-- </div> --> 1300<!-- <div class="modal-body"> --> 1301<!-- í ì¤í¸ ë´ì© --> 1302<!-- <div class="alert-body"> --> 1303<!-- <div class="alert-cnt" data-ele-name="wrapperMessageList"> --> 1304<!-- <p data-column-name="message">loading...</p> --> 1305<!-- </div> --> 1306<!-- <div class="alert-cnt" data-ele-name="wrapperTemplateItem" style="display: none"> --> 1307<!-- <p data-column-name="message">loading...</p> --> 1308<!-- </div> --> 1309<!-- </div> --> 1310<!-- </div> --> 1311<!-- </div> --> 1312<!-- </div> --> 1313<!-- </div> -->
1314<script> 1315 /*<![CDATA[*/ 1316 var toastModal = (function(){ 1317 1318 var ns = 'toastModal'; 1319 1320 var _positionTypes = { 1321 top: 'top', 1322 middle: 'middle', 1323 bottom: 'bottom' 1324 }; 1325 1326 var DEFAULT_POSITION = _positionTypes.bottom; 1327 1328 var _toastModal = { 1329 $el: { 1330 p: null, 1331 title: null, 1332 wrapperMessageList: null, 1333 wrapperTemplateItem: null 1334 }, 1335 set: { 1336 time: bts.set.toastTime, 1337 position: DEFAULT_POSITION 1338 } 1339 }; 1340 1341 _toastModal.toastInit = function() { 1342 1343 _toastModal.$el.p = $('#toast'); 1344 _toastModal.$el.title = _toastModal.$el.p.find('[data-column-name="title"]'); 1345 _toastModal.$el.wrapperMessageList = _toastModal.$el.p.find('[data-ele-name="wrapperMessageList"]'); 1346 _toastModal.$el.wrapperTemplateItem = _toastModal.$el.p.find('[data-ele-name="wrapperTemplateItem"]'); 1347 1348 //_toastModal.$el.p.on('show.bs.modal', _callback); 1349 //_toastModal.$el.p.off('hidden.bs.modal'); 1350 }; 1351 _toastModal.toastInit(); 1352 1353 _toastModal.toastClear = function() { 1354 _toastModal.$el.title[0].innerHTML = 'Toast'; 1355 1356 _toastModal.$el.wrapperMessageList[0].innerHTML = ''; 1357 1358 _toastModal.set.position = DEFAULT_POSITION; 1359 _toastModal.set.time = bts.set.toastTime; 1360 }; 1361 _toastModal.toast = function(v, closeCallback, title) { 1362 //alert(v); 1363 1364 if (title) { 1365 _toastModal.$el.title[0].innerHTML = title; 1366 } 1367 1368 var _el = null; 1369 var _messages = v ? v.split('\n') : ['']; 1370 1371 _messages.forEach(function(_v, i){ 1372 1373 if (_el == null) { 1374 1375 } else { 1376 1377 _toastModal.$el.wrapperMessageList.append('<br>'); 1378 } 1379 _el = _toastModal.$el.wrapperTemplateItem.children()[0].cloneNode(); 1380 _el.innerHTML = _v || _toastModal.$el.wrapperTemplateItem.children()[0].innerHTML; 1381 _toastModal.$el.wrapperMessageList.append(_el); 1382 }); 1383 1384 // [s] via common.js .on('click','[data-toggle=toast]', ...) 1385 var target = _toastModal.$el.p; 1386 target[0].style.zIndex = 999999; //FIXME 1387 target.show(); 1388 target.addClass('on'); 1389 var time = _toastModal.set.time; 1390 // í¬ì§ì ê¸°ë¥ ë¸ë½ 1391 /*var position = _toastModal.set.position; 1392 switch (position) { 1393 case _positionTypes.top: 1394 target[0].style.top = '5%'; 1395 target[0].style.bottom = 'unset'; 1396 break; 1397 case _positionTypes.middle: 1398 target[0].style.top = '50%'; 1399 target[0].style.bottom = 'unset'; 1400 break; 1401 case _positionTypes.bottom: 1402 target[0].style.top = 'unset'; 1403 target[0].style.bottom = '42px'; 1404 break; 1405 default: break; 1406 }*/ 1407 //target[0].style.zIndex = 1051; //modal over; 1408 if (isFunction(closeCallback)) { 1409 target.off().on('hidden.bs.modal', closeCallback); 1410 } 1411// target.modal({ 1412// backdrop: false 1413// // , show: false 1414// // , keyboard: true 1415// }); 1416 setTimeout(function(){ 1417 target.removeClass('on'); 1418 target[0].style.zIndex = 11; //FIXME 1419 },time); 1420 1421 setTimeout(function(){ 1422 target.hide(); 1423 $('html').removeClass('overflow'); 1424 }, time + 300); 1425 // setTimeout(function(){ 1426 // target.modal('hide'); 1427 // },time); 1428 // [e] via common.js .on('click','[data-toggle=toast]', ...) 1429 1430 1431 return false; 1432 }; 1433 return { 1434 open: function(v, position, time, closeCallback, title) { 1435 // console.log(">>>toast = ", v, ) 1436 _toastModal.toastClear(); 1437 1438 if (isNotEmpty(time)) { 1439 _toastModal.set.time = time || 0; 1440 } 1441 if (isNotEmpty(position)) { 1442 switch (position) { 1443 case _positionTypes.top: break; 1444 case _positionTypes.middle: break; 1445 case _positionTypes.bottom: break; 1446 default : 1447 bts.isDebug() && console.log(ns + '.open :: Invalid position(' + position + '). Choose one --> ' + _positionTypes.join(', ')); 1448 position = defaultPosition; 1449 break; 1450 } 1451 _toastModal.set.position = position; 1452 } 1453 return _toastModal.toast(v, closeCallback, title); 1454 }, 1455 positionTypes: _positionTypes 1456 } 1457 })(); 1458 /*]]>*/ 1459</script>
1459 1460 1461 1462<!-- alert2 --> 1463<div id="myModal" class="modal alert" data-backdrop="static" style="display: none;"> 1464 <div class="modal-inner"> 1465 <a href="#" class="ico close modalClose" data-ele-name="btnCloseAlert">ë«ê¸°</a> 1466 <div class="modal-header" data-ele-name="header"> 1467 <div class="modal-title" data-column-name="title">ì림</div> 1468 </div> 1469 <div class="modal-body" data-ele-name="body"> 1470 <div class="estimate-txtbox"> 1471 <p class="txt1"><span>Successfully Submitted!</span></p> 1472 <p class="txt2"><span>Youâll be contacted by up to<br />3 clinics with a price quote</span></p> 1473 <p class="txt3"><span>You can review your request on My Page.</span></p> 1474 </div> 1475 </div> 1476 <div class="modal-footer"> 1477 <a href="javascript:void(0)" class="btn positive modalClose" data-column-name="btnOk"><span>OK</span></a> 1478 </div> 1479 </div> 1480 <div class="modal-dim" id="myModalDim" onclick="(function(){$(this).hide(); $(this).removeClass('on');})(this)"></div> 1481</div> 1482 1483<!-- <div id="myModal" class="modal-base modal fade show min-type" tabindex="-1" role="dialog" data-backdrop="static" style="display: none;"> 1484 <div class="modal-dialog modal-dialog-scrollable modal-dialog-centered" role="document"> 1485 <div class="modal-content"> 1486 <div class="modal-header" data-ele-name="header" style="position: relative; display: none"> 1487 <h5 class="modal-title" data-column-name="title">loading...</h5> 1488 <button type="button" class="close" aria-label="Close" data-ele-name="btnCloseAlert"> 1489 <i class="icon-hd-close"></i> 1490 </button> 1491 </div> 1492 <div class="modal-body" data-ele-name="body"> 1493 <div class="estimate-txtbox"> 1494 <p class="txt1"><span th:text="#{estimate.msg.succeesfully.submitted}">ìë´ì ì²ìê° ì ì¶ëììµëë¤.</span></p> 1495 <p class="txt2"><span th:utext="#{estimate.msg.reviewing.your.request}">íìëì ì ì²ì를 ê²í í ë³ììì<br />ì°ë½ë릴 ìì ì ëë¤.</span></p> 1496 <p class="txt3"><span th:text="#{estimate.msg.requeston.page}">ì ì¶íì ìë´ì ì²ìë ë§ì´íì´ì§ìì íì¸ ê°ë¥í©ëë¤.</span></p> 1497 </div> 1498 </div> 1499 <div class="modal-footer"> 1500 <button type="button" class="btn btn-lg btn-block btn-secondary" data-column-name="btnOk"><span th:text="#{estimate.msg.ok}">íì¸</span></button> 1501 </div> 1502 </div> 1503 </div> 1504</div> -->
1505<script> 1506 /*<![CDATA[*/ 1507 var alertModal2 = (function(){ 1508 1509 var ns = 'alertModal2'; 1510 1511 var _alertModal = { 1512 el: { 1513 p: null, 1514 $p: null, 1515 title: null, 1516 btnOk: null, 1517 close: null, 1518 header: null, 1519 body: null, 1520 wrapperTemplateItem: null 1521 }, 1522 confirmCallback: function() { 1523 bts.isDebug() && console.log(ns + '.confirmCallback :: confirm'); 1524 } 1525 }; 1526 1527 _alertModal.alertInit = function() { 1528 1529 _alertModal.el.p = sel('#myModal'); 1530 _alertModal.el.$dim = $('#myModalDim', '#myModal'); 1531 _alertModal.el.$p = $(_alertModal.el.p); 1532 _alertModal.el.title = _alertModal.el.$p.find('[data-column-name="title"]'); 1533 _alertModal.el.btnOk = _alertModal.el.$p.find('[data-column-name="btnOk"]'); 1534 _alertModal.el.close = _alertModal.el.$p.find('[data-ele-name="btnCloseAlert"]'); 1535 _alertModal.el.header = _alertModal.el.$p.find('[data-ele-name="header"]'); 1536 _alertModal.el.body = _alertModal.el.$p.find('[data-ele-name="body"]'); 1537 1538 var _close = function() { 1539 // _alertModal.el.$p[0].style.zIndex = 0; //FIXME 1540 _alertModal.el.$p.css("z-index", "0"); //FIXME 1541 _alertModal.el.$p.hide(); 1542 _alertModal.el.$p.removeClass('on'); 1543 _alertModal.el.$dim.removeClass('on'); 1544 }; 1545 var _confirm = function() { 1546 _alertModal.el.$p[0].style.zIndex = 0; //FIXME 1547 if (isFunction(_alertModal.confirmCallback)) { 1548 _alertModal.confirmCallback(); 1549 } 1550 }; 1551 _alertModal.el.close[0].onclick = function(e) { 1552 _alertModal.el.$p.modal('hide'); 1553 _close(); 1554 }; 1555 1556 _alertModal.el.$p.on('hidden.bs.modal' , function() { 1557 _close(); 1558 }); 1559 _alertModal.el.btnOk[0].onclick = function(e) { 1560 _alertModal.el.$p.modal('hide'); 1561 _confirm(); 1562 }; 1563 }; 1564 _alertModal.alertInit(); 1565 1566 _alertModal.alertClear = function() { 1567 1568 _alertModal.confirmCallback = function() { 1569 bts.isDebug() && console.log(ns + '.confirmCallback :: confirm'); 1570 }; 1571 1572 hideEles(_alertModal.el.header[0]); 1573 _alertModal.el.title[0].innerHTML = 'Info'; 1574 _alertModal.el.btnOk[0].innerHTML = 'Ok'; 1575 1576 _alertModal.el.body[0].innerHTML = ''; 1577 }; 1578 _alertModal.alert = function(v, confirmCallback, confirmBtnText, title) { 1579 1580 _alertModal.alertClear(); 1581 1582 if (isFunction(confirmCallback)) { 1583 1584 _alertModal.confirmCallback = confirmCallback; 1585 } 1586 1587 if (title) { 1588 showEles(_alertModal.el.header[0]); 1589 _alertModal.el.title[0].innerHTML = title; 1590 } 1591 if (confirmBtnText) { 1592 _alertModal.el.btnOk[0].innerHTML = confirmBtnText; 1593 } 1594 1595 _alertModal.el.body[0].innerHTML = v || ''; 1596 1597 // _alertModal.el.$p.modal(); 1598 // _alertModal.el.$p[0].style.zIndex = 1052; //FIXME 1599 _alertModal.el.$p.css("z-index", "999"); //FIXME 1600 _alertModal.el.$p.show(); 1601 _alertModal.el.$p.addClass('on'); 1602 _alertModal.el.$dim.addClass('on'); 1603 1604 ModalUtils.adjustPosition(); 1605 1606 return false; 1607 }; 1608 return { 1609 open: function(v, confirmCallback, confirmBtnText, title) { 1610 return _alertModal.alert(v, confirmCallback, confirmBtnText, title); 1611 } 1612 } 1613 })(); 1614 /*]]>*/ 1615</script>
1615 1616
1617<script> 1618 /*<![CDATA[*/ 1619 var testConfirmModal = function() { 1620 confirmModal.open($('<div>').html( 1621 '<img src = "https://files.beautycorn.ai/data.dev2/banner_pc/b1f46d585b844266a7e515be1fac3424.png" />')[0] 1622 , function(){ bts.alert('ìì¸í 보기'); } 1623 , function(){ bts.alert('ì¤ëì ë³´ì§ ì기'); } 1624 , 'íë¡ëª¨ì ','ìì¸í 보기','ì¤ëì ë³´ì§ ì기'); 1625 }; 1626 var testAlertModal = function() { 1627 alertModal.open($('<div>').html( 1628 '<img src = "https://files.beautycorn.ai/data.dev2/banner_pc/b1f46d585b844266a7e515be1fac3424.png" />')[0] 1629 , function(){ bts.alert('ìì¸í 보기'); }, 'íë¡ëª¨ì '); 1630 }; 1631 var testAlertModal2 = function() { 1632 alertModal2.open('<div class="estimate-txtbox">\n' + 1633 ' <p class="txt1"><span th:text="#{estimate.msg.succeesfully.submitted}">ìë´ì ì²ìê° ì ì¶ëììµëë¤.</span></p>\n' + 1634 ' <p class="txt2"><span th:utext="#{estimate.msg.reviewing.your.request}">íìëì ì ì²ì를 ê²í í ë³ììì<br />ì°ë½ë릴 ìì ì ëë¤.</span></p>\n' + 1635 ' <p class="txt3"><span th:text="#{estimate.msg.requeston.page}">ì ì¶íì ìë´ì ì²ìë ë§ì´íì´ì§ìì íì¸ ê°ë¥í©ëë¤.</span></p>\n' + 1636 ' </div>' 1637 , function(){ console.log('alertModal2 eee'); }, 'OKKK', 'Info eee'); 1638 }; 1639 /*]]>*/ 1640</script>
1640 1641 1642 1643 <!-- ë¡ê·¸ì¸ --> 1644 1645 <div id="mdLogin" class="modal page" style="display: none;"> 1646 <div class="modal-inner"> 1647 <header class="header"> 1648 <div class="center"> 1649 <h1>ë¡ê·¸ì¸</h1> 1650 </div> 1651 <div class="right"> 1652 <ul class="util"> 1653 <li><a href="#" class="ico close modalClose">ë«ê¸°</a></li> 1654 </ul> 1655 </div> 1656 </header> 1657 1658 <div class="modal-body"> 1659 <div class="container center-layout"> 1660 <div class="emoji center"> 1661 <img src="/img/logo-symbol.svg" alt="" style="max-width: 80px;"> 1662 </div> 1663 <h2>Welcome!</h2> 1664 1665 <div class="form"> 1666 <a href="/login/apple" class="login-btn" data-sns_type="apple" style="display:none;"> 1667 <img src="/img/login-apple.png" alt=""> 1668 </a> 1669 <a href="/login/kakaotalk" class="login-btn"> 1670 <img src="/img/login-kakao.png" alt=""> 1671 </a> 1672 <a href="/login/google" class="login-btn"> 1673 <img src="/img/login-google.png" alt=""> 1674 </a> 1675 <a href="/emailJoin" class="login-btn"> 1676 <img src="/img/login-email.png" alt=""> 1677 </a> 1678 1679 <div class="aleady"> 1680 <span>Already a member?</span> 1681 <a href="/emailLogin" class="text-btn">Log in with email</a> 1682 </div> 1683 </div> 1684 </div> 1685 </div> 1686 </div> 1687 1688
1688<script> 1689 /*<![CDATA[*/ 1690 if(bts.isIOS()){ 1691 showEles(sel('[data-sns_type="apple"]')); 1692 // hideEles(sel('[data-sns_type="line"]')); 1693 }; 1694 var loginPopModal = (function() { 1695 1696 var ns = 'loginPopModal'; 1697 1698 var _pEle = sel('#mdLogin'); 1699 var _$pEle = $(_pEle); 1700 1701 var on = function() { 1702 // _$pEle.modal({ 1703 // show: true, 1704 // keyboard: true 1705 // }); 1706 _$pEle.css("z-index", "999999"); //FIXME 1707 _$pEle.show(); 1708 _$pEle.addClass('on'); 1709 }; 1710 1711 // var close = function() { 1712 // _$pEle.removeClass('on'); 1713 // _$pEle.css("z-index", "11") 1714 // _$pEle.hide(); 1715 // $('html').removeClass('overflow'); 1716 // }; 1717 1718 var init = function(no) { 1719 on(); 1720 var fbEventName = "login"; 1721 var fbParams = {method: "groomingjok"}; 1722 logEvent(fbEventName, fbParams); 1723 }; 1724 1725 return { 1726 init: init 1727 , on: on 1728 }; 1729 })(); 1730 /*]]>*/ 1731 </script>
1731 1732 </div> 1733 1734 <!-- <div id="mdLogin" class="modal fade" tabindex="-1" role="dialog" style="display: none;"> 1735 <div class="modal-dialog modal-dialog-scrollable modal-dialog-centered" role="document"> 1736 <div class="modal-content"> 1737 <div class="modal-header"> 1738 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 1739 <i class="icon-hd-close"></i> 1740 </button> 1741 </div> 1742 <div class="modal-body"> 1743 <div class="center-block"> 1744 <h2 th:text="#{login.main.txt.welcome}">íìí©ëë¤.</h2> 1745 </div> 1746 <ul class="social-login"> 1747 <li class="col" data-sns_type="apple" style="display:none;"> 1748 <a th:href="@{/login/apple}" class="mdlogin-apple"> 1749 <div class="sr-only">ì í ê³ì ì¼ë¡ ë¡ê·¸ì¸</div> 1750 </a> 1751 </li> 1752 <li class="col" style="display:none;"> 1753 <a th:href="@{/login/facebook}" class="mdlogin-facebook"> 1754 <div th:text="#{login.main.txt.login.by.facebook}" class="sr-only">íì´ì¤ë¶ì¼ë¡ ë¡ê·¸ì¸</div> 1755 </a> 1756 </li> 1757 <li class="col"> 1758 <a th:href="@{/login/kakaotalk}" class="mdlogin-kakao"> 1759 <div th:text="#{login.main.txt.login.by.kakaotalk}" class="sr-only">ì¹´ì¹´ì¤í¡ì¼ë¡ ë¡ê·¸ì¸</div> 1760 </a> 1761 </li> 1762 <li class="col" data-sns_type="line" style="display:none;"> 1763 <a th:href="@{/login/line}" class="mdlogin-line"> 1764 <div th:text="#{login.main.txt.login.by.line}" class="sr-only">ë¼ì¸ì¼ë¡ ë¡ê·¸ì¸</div> 1765 </a> 1766 </li> 1767 <li class="col"> 1768 <a th:href="@{/login/google}" class="mdlogin-google"> 1769 <div th:text="#{login.main.txt.login.by.google}" class="sr-only">구ê¸ë¡ ë¡ê·¸ì¸</div> 1770 </a> 1771 </li> 1772 </ul> 1773 <div class="center-block" th:text="#{login.main.txt.or}">ëë</div> 1774 <div class="buttons-group"> 1775 <a th:href="@{/emailJoin}" th:text="#{login.main.txt.join.email}" class="btn btn-block btn-outline-muted">ì´ë©ì¼ë¡ íìê°ì </a> 1776 </div> 1777 <div class="d-flex justify-content-between align-items-center"> 1778 <span th:text="#{login.main.txt.already.member}">ì´ë¯¸ íìì´ì ê°ì?</span> 1779 <a th:href="@{/emailLogin}" th:text="#{login.main.txt.login.by.email}">ì´ë©ì¼ë¡ ë¡ê·¸ì¸</a> 1780 </div> 1781 </div> 1782 </div> 1783 </div> 1784 1785 </div> --> 1786 <!-- //ë¡ê·¸ì¸ --> 1787 1788 1789 <div class="modal sheet center bg targetCloseProtect autoHieght" data-ele-name="selectSingleModal"> 1790 <div class="modal-inner"> 1791 <span class="sheet-bar"><!-- Xìë íì ê³µíµì¼ë¡ ì¶ê° --></span> 1792 <div class="modal-body"> 1793 <div class="selectbox single"> 1794 <div> 1795 <ul data-ele-name="selectSingleUl"> 1796 </ul> 1797 </div> 1798 </div> 1799 </div> 1800 </div> 1801 <div class="modal-dim closeInner" data-ele-name="selectSingleModalDim"></div> 1802 </div>
1803<script> 1804 /*<![CDATA[*/ 1805 var selectSingleModal = (function(){ 1806 1807 var _$p = $('[data-ele-name="selectSingleModal"]'); 1808 var _selectSingleModal = { 1809 $el: { 1810 modalDiv: $('[data-ele-name="selectSingleModal"]'), 1811 modalDim: $('[data-ele-name="selectSingleModalDim"]',_$p), 1812 swiperSelect: [] 1813 }, 1814 set: { 1815 time: 300 1816 }, 1817 callback: null, 1818 selectObj: null 1819 }; 1820 1821 var init = function(selectObj, callback, _selInx) { 1822 if(!_selInx) { 1823 _selInx = 0; 1824 } 1825 btnEvent(); 1826 _selectSingleModal.callback = callback; 1827 _selectSingleModal.selectObj = selectObj; 1828 1829 //select box ì´ê¸°í 1830 $('.selectbox.single').empty(); 1831 if(selectObj != null && selectObj.length > 0){ 1832 var _html = ''; 1833 for(var index in selectObj){ 1834 _html += '<div id="select_'+index+'">'; 1835 _html += '<ul>'; 1836 for(var subIdx in selectObj[index]){ 1837 _html += `<li class="swiper-slide ${_selInx == subIdx ? 'active' : ''}" data-v="${selectObj[index][subIdx].val}" data-t="${selectObj[index][subIdx].text}">`; 1838 if(selectObj[index][subIdx].val == 'report'){ 1839 _html += '<span data-v="'+ selectObj[index][subIdx].val +'" data-t="'+ selectObj[index][subIdx].text +'"><a href="javascript:void(0)"><em class="red">' + selectObj[index][subIdx].text + '</em></a></span>'; 1840 }else{ 1841 _html += '<span data-v="'+ selectObj[index][subIdx].val +'" data-t="'+ selectObj[index][subIdx].text +'"><a href="javascript:void(0)">' + selectObj[index][subIdx].text + '</a></span>'; 1842 } 1843 _html += '</li>'; 1844 } 1845 _html += '</ul>'; 1846 _html += '</div>'; 1847 $('.selectbox.single').html(_html); 1848 } 1849 } 1850 // sts.hideAppNavi(); 1851 _selectSingleModal.$el.modalDiv.show(); 1852 _selectSingleModal.$el.modalDim.show(); 1853 _selectSingleModal.$el.modalDiv.addClass('on'); 1854 setTimeout(function() { 1855 _selectSingleModal.$el.modalDim.addClass('on'); 1856 }, _selectSingleModal.set.time); 1857 _selectSingleModal.$el.modalDiv.css('zIndex', 3001); 1858 1859 $('.swiper-slide', _$p).off().on('click',function() { 1860 var rtnVal = []; 1861 var selectText = $(this).data('t'); 1862 rtnVal.push($(this).data('v')); 1863 _selectSingleModal.callback(rtnVal); 1864 _selectSingleModal.$el.modalDim.removeClass('on'); 1865 _selectSingleModal.$el.modalDiv.removeClass('on'); 1866 _selectSingleModal.$el.modalDiv.hide(); 1867 _selectSingleModal.$el.modalDim.hide(); 1868 _selectSingleModal.$el.modalDiv.css('zIndex', 0); 1869 // if(sts.getShowNaviCnt() > 0 && selectText != 'ì ê³ ') { 1870 // sts.showAppNavi(); 1871 // } 1872 }); 1873 }; 1874 1875 var btnEvent = function () { 1876 $('[data-ele-name="selectSingleModalDim"]', _$p).off().on('click',function() { 1877 _selectSingleModal.$el.modalDim.removeClass('on'); 1878 _selectSingleModal.$el.modalDiv.removeClass('on'); 1879 _selectSingleModal.$el.modalDiv.hide(); 1880 _selectSingleModal.$el.modalDim.hide(); 1881 _selectSingleModal.$el.modalDiv.css('zIndex', 0); 1882 // if(sts.getShowNaviCnt() > 0) { 1883 // sts.showAppNavi(); 1884 // } 1885 }); 1886 } 1887 1888 var _interface = new List(); 1889 _interface.init = init; 1890 return _interface; 1891 })(); 1892 /*]]>*/ 1893</script>
1893 1894 1895 1896 1897<div id="wrap"> 1898 1899 <!-- header --> 1900 <header id="hd" style="display: none"> 1901 <h1><a href="/"><img src="/img/logo.svg" alt="GroomingJok"></a></h1> 1902 <h2 data-column-name="headerTitle">loading...</h2> 1903 <div class="hd-rt"> 1904 <a class="icon-hd-srch" href="/search" data-toggle="srch" data-ele-name="btnSearch">Search</a> 1905 <a class='icon-hd-basket' href="javascript:sts.loginUrlHref('/store/shoppingBasket')" data-ele-name="btnShoppingBasket">ì¥ë°êµ¬ë</a> 1906 <!-- <a class="icon-hd-home" data-ele-name="btnHome" th:href="${pathIndex}" th:text="#{common.msg.home}">í</a> --> 1907 <a class="icon-hd-user" href="/mypage" data-ele-name="btnMypage">My Page</a> 1908 </div> 1909 </header> 1910
1910<script> 1911 /*<![CDATA[*/ 1912 var headerFragment = {}; 1913 headerFragment.el = sel('#hd'); 1914 headerFragment.on = function() { 1915 headerFragment.el.style.display = ''; 1916 }; 1917 headerFragment.off = function() { 1918 headerFragment.el.style.display = 'none'; 1919 }; 1920 headerFragment.setTitle = function(text) { 1921 sel('[data-column-name="headerTitle"]', headerFragment.el).innerHTML = text; 1922 }; 1923 /*]]>*/ 1924</script>
1924 1925
1925<script> 1926 /*<![CDATA[*/ 1927 var layerHeader = (function() { 1928 var _pEle; 1929 var _el = {}; 1930 var onRight = function () { 1931 showEles(_el.headerRight); 1932 }; 1933 var offRight = function () { 1934 hideEles(_el.headerRight); 1935 }; 1936 var initEl = function(pEle) { 1937 _pEle = isEle(pEle) ? sel('[data-ele-name="layerHeaderWrapper"]', pEle) 1938 : sel('[data-ele-name="layerHeaderWrapper"]'); 1939 _el = { 1940 p: _pEle, 1941 modalBack: sel('[data-ele-name="modalBack"]', _pEle), 1942 headerRight: sel('[data-ele-name="headerRight"]', _pEle), 1943 btnSearch: sel('[data-ele-name="btnSearch"]', _pEle), 1944 btnShoppingBasket: sel('[data-ele-name="btnShoppingBasket"]', _pEle), 1945 btnHome: sel('[data-ele-name="btnHome"]', _pEle), 1946 _end: '' 1947 }; 1948 }; 1949 var initEvent = function() { 1950 _el.modalBack.onclick = function(e){ 1951 //e.preventDefault(); 1952 1953 // history ì²ë¦¬ 1954 // overlay.on(); 1955 DomUtil.goBack(); 1956 }; 1957 }; 1958 1959 var _interface = {}; 1960 _interface.onRight = function () { 1961 onRight(); 1962 }; 1963 _interface.offRight = function () { 1964 offRight(); 1965 }; 1966 _interface.getEl = function () { 1967 return _pEle; 1968 }; 1969 _interface.init = function (cfg, pEle) { 1970 initEl(pEle); 1971 initEvent(); 1972 showEles(_el.btnHome); 1973 showEles(_el.btnShoppingBasket); 1974 showEles(_el.btnSearch); 1975 onRight(); 1976 }; 1977 return _interface; 1978 })(); 1979 /*]]>*/ 1980 </script>
1980 1981 <!-- //header --> 1982 1983 1984 1985 <div class="lst-wrap" data-ele-name="templateWrapperListItems" style="display: none"> 1986 <ul class="lst-default lst-treatment" data-ele-name="templateWrapperEmptyItem" style="display: none"> 1987 <li> 1988 <a class="media" href="javascript:void(0)" data-column-name="wrapperLink"> 1989 <div class="media-body"> 1990 <h4 class="tit"><span data-column-name="title">loading...</span></h4> 1991 <div class="price">Not yet translated</div> 1992 </div> 1993 </a> 1994 </li> 1995 </ul> 1996 1997 <ul data-ele-name="templateWrapperTreatment" style="display: none"> 1998 <li> 1999 <a href="javascript:void(0)" data-column-name="wrapperLink" class="item"> 2000 <div class="info"> 2001 <div class="rep"> 2002 <div data-column-name="title">ë매 êµì </div> 2003 <span class="badge" data-column-name="surgicalType">ë¹ìì </span> 2004 </div> 2005 <div class="desc"><b data-column-name="price">110ë§ì~300ë§ì</b></div> 2006 </div> 2007 <div class="likeView" data-column-name="likeCnt">0</div> 2008 <span class="ico arrow" data-column-name="likeCnt">ìì¸</span> 2009 </a> 2010 </li> 2011 </ul> 2012 2013 <!-- <ul class="lst-default lst-treatment" data-ele-name="templateWrapperTreatment" style="display: none"> 2014 <li> 2015 <a class="media" th:href="|javascript:void(0)|" data-column-name="wrapperLink"> 2016 <div class="media-body"> 2017 <span class="surgery-mark text-secondary" data-column-name="surgicalType">loading...</span> 2018 <h4 class="tit"><span data-column-name="title">loading...</span></h4> 2019 <div class="price"> 2020 <strong data-column-name="price">loading...</strong> 2021 </div> 2022 <dl class="dl-meta"> 2023 <dt><i class="icon-like" th:text="#{common.msg.like}">ì¢ìì</i></dt> 2024 <dd data-column-name="likeCnt">loading...</dd> 2025 </dl> 2026 </div> 2027 </a> 2028 </li> 2029 </ul> --> 2030 2031 <ul data-ele-name="templateWrapperTreatmentMain" style="display: none"> 2032 <li class="swiper-slide"> 2033 <a href="javascript:void(0)" class="item" data-column-name="wrapperLink"> 2034 <img 2035 data-column-name="image" 2036 src="https://files.beautysocial.io/data.dev/txcollect/a115f5216f9c4446a7cdfc98dbee7551.png" 2037 alt=""> 2038 </a> 2039 </li> 2040 </ul> 2041 <!-- <ul class="lst-default lst-maintreatment" data-ele-name="templateWrapperTreatmentMain" style="display: none"> 2042 <li> 2043 <a class="media" th:href="|javascript:void(0)|" data-column-name="wrapperLink"> 2044 <img data-column-name="image" src="" alt="" class="img-fluid" /> 2045 </a> 2046 </li> 2047 </ul> --> 2048 2049 <ul data-ele-name="templateWrapperDoctor2" style="display: none"> 2050 <li class="swiper-slide"> 2051 <a href="javascript:void(0)" class="infobox-item" data-column-name="wrapperLink"> 2052 <div class="inner"> 2053 <ul class="cta-plus"> 2054 <li class="doctor"> 2055 <div class="item"> 2056 <div 2057 data-column-name="image" 2058 class="img"> 2059 <div class="talk-info"> 2060 <div class="desc"> 2061 <div class="score" data-column-name="evalPoint">4.9</div> 2062 </div> 2063 </div> 2064 </div> 2065 </div> 2066 </li> 2067 </ul> 2068 <div class="info"> 2069 <div class="tit" data-column-name="title">ìì ¤ë¯¸ìì</div> 2070 </div> 2071 <span class="ico arrow">ë 보기</span> 2072 </div> 2073 </a> 2074 </li> 2075 </ul> 2076 2077 <ul data-ele-name="templateWrapperDoctor" style="display: none"> 2078 <li> 2079 <a href="javascript:void(0)" class="item" data-column-name="wrapperLink"> 2080 <div class="thumbnail profile"> 2081 <img 2082 data-column-name="image" 2083 src="https://files.beautysocial.io/data.dev/doctor/7c94fc68af084459ab7c652bf2bff0bd.jpg" alt=""> 2084 <img 2085 data-column-name="image2" 2086 class="shadow" src="https://files.beautysocial.io/data.dev/doctor/7c94fc68af084459ab7c652bf2bff0bd.jpg" 2087 alt=""> 2088 </div> 2089 <div class="info"> 2090 <div class="rep"> 2091 <div data-column-name="title">ë°±ì¹ë§ ìì¥</div> 2092 </div> 2093 <div class="side"> 2094 <div class="name" data-column-name="major">ë§ì·¨ê³¼ ì 문ì</div> 2095 <div class="desc" data-column-name="hospitalNm">ìì ¤ë¯¸ìì</div> 2096 <div class="score" data-column-name="evalPoint">5.0</div> 2097 </div> 2098 <ul class="list-cte" data-ele-name="txPart"> 2099 </ul> 2100 </div> 2101 <span class="ico arrow">ìì¸</span> 2102 </a> 2103 </li> 2104 </ul> 2105 2106 <!-- <ul class="lst-default lst-people" data-ele-name="templateWrapperDoctor" style="display: none"> 2107 <li> 2108 <a class="media" th:href="|javascript:void(0)|" data-column-name="wrapperLink"> 2109 <div class="rank_wrap" data-ele-name="rank" style="display: none"> 2110 <p class="rank" data-column-name="rank">loading...</p> 2111 <p class="ranking_num" data-column-name="rankChangeWrapper"> 2112 <i class="icon-rank"></i><span data-column-name="rankChange" style="display: none">loading...</span> 2113 </p> 2114 </div> 2115 <div class="profile"> 2116 <i class="img" data-column-name="image" th:style="|background-image: url('@{/img/profile-doctor.png}');|"></i> 2117 </div> 2118 <div class="media-body"> 2119 <span class="surgery-mark" data-column-name="major">loading...</span> 2120 <h4 class="tit"><span data-column-name="title">loading...</span></h4> 2121 <div class="sub-tit" data-column-name="hospitalNm">loading...</div> 2122 <ul class="lst-site" data-ele-name="txPart"> 2123 <li>loading...</li> 2124 </ul> 2125 <div class="individual-star"> 2126 <div class="star-wrap"> 2127 <i class="icon-star"></i> 2128 <i class="icon-star"></i> 2129 <i class="icon-star"></i> 2130 <i class="icon-star"></i> 2131 <i class="icon-star"></i>
2132 <span class="star" style="width: 0" data-column-name="starWidth"> 2133 <i class="icon-star active"></i> 2134 <i class="icon-star active"></i> 2135 <i class="icon-star active"></i> 2136 <i class="icon-star active"></i> 2137 <i class="icon-star active"></i> 2138 </span> 2139 </div> 2140 </div> 2141 <span class="score-val" data-column-name="evalPoint"> 2142 loading... 2143 </span> 2144 </div> 2145 </a> 2146 </li> 2147 </ul> --> 2148 2149 <ul data-ele-name="templateWrapperHospital" style="display: none"> 2150 <li> 2151 <a href="javascript:void(0)" class="item" data-column-name="wrapperLink"> 2152 <div class="rank_wrap" data-ele-name="rank" style="display: none"> 2153 <p class="rank" data-column-name="rank">loading...</p> 2154 <p class="ranking_num" data-column-name="rankChangeWrapper"> 2155 <i class="icon-rank"></i><span data-column-name="rankChange" style="display: none">loading...</span> 2156 </p> 2157 </div> 2158 <div class="thumbnail profile"> 2159 <img 2160 data-column-name="image" 2161 src="https://files.beautysocial.io/data.dev/prov/873fb7538ea34acea91678f4be740174.png" 2162 alt=""> 2163 <img 2164 data-column-name="image2" 2165 class="shadow" 2166 src="https://files.beautysocial.io/data.dev/prov/873fb7538ea34acea91678f4be740174.png" 2167 alt=""> 2168 2169 </div> 2170 <div class="info"> 2171 <div class="rep"> 2172 <div data-column-name="title">ì ë ëXY</div> 2173 </div> 2174 <div class="side"> 2175 <!-- <div class="desc">ìì¸í¹ë³ì ê°ë¨ì</div> --> 2176 <!-- <span data-ele-name="locationInfo"> --> 2177 <div class="desc" data-column-name="address">loading...</div> 2178 <em class="loacation" data-column-name="areaNm" style="display: none">loading...</em> 2179 <!-- </span> --> 2180 <div class="score" data-column-name="evalPoint">5.0</div> 2181 </div> 2182 <ul class="list-cte" data-ele-name="txPart"> 2183 </ul> 2184 </div> 2185 <span class="ico arrow">ìì¸</span> 2186 </a> 2187 </li> 2188 </ul> 2189 2190 <!-- <ul class="lst-default lst-hospital" data-ele-name="templateWrapperHospital" style="display: none"> 2191 <li> 2192 <a class="media" th:href="|javascript:void(0)|" data-column-name="wrapperLink"> 2193 <div class="rank_wrap" data-ele-name="rank" style="display: none"> 2194 <p class="rank" data-column-name="rank">loading...</p> 2195 <p class="ranking_num" data-column-name="rankChangeWrapper"> 2196 <i class="icon-rank"></i><span data-column-name="rankChange" style="display: none">loading...</span> 2197 </p> 2198 </div> 2199 <div class="profile"> 2200 <i class="img" data-column-name="image" th:style="|background-image: url('@{/img/profile-hospital.png}');|"></i> 2201 </div> 2202 <div class="media-body" style=" 2203 word-break: break-word 2204 "> 2205 <h4 class="tit" data-column-name="title">loading...</h4> 2206 <div class="sub-tit" data-ele-name="locationInfo"><span data-column-name="address">loading...</span> <span data-column-name="areaNm" style="display: none">loading...</span></div> 2207 <ul class="lst-site" data-ele-name="txPart"> 2208 <li>loading...</li> 2209 </ul> 2210 <div class="individual-star"> 2211 <div class="star-wrap"> 2212 <i class="icon-star"></i> 2213 <i class="icon-star"></i> 2214 <i class="icon-star"></i> 2215 <i class="icon-star"></i> 2216 <i class="icon-star"></i> 2217 <span class="star" style="width: 0" data-column-name="starWidth"> 2218 <i class="icon-star active"></i> 2219 <i class="icon-star active"></i> 2220 <i class="icon-star active"></i> 2221 <i class="icon-star active"></i> 2222 <i class="icon-star active"></i> 2223 </span> 2224 </div> 2225 </div>
2226 <span class="score-val" data-column-name="evalPoint"> 2227 loading... 2228 </span> 2229 </div> 2230 </a> 2231 </li> 2232 </ul> --> 2233 2234 <ul class="lst-default lst-hospital" data-ele-name="templateCommonRankingSelected" style="display: none"> 2235 <li class="ranking_info"> 2236 <a href="javascript:void(0)" data-column-name="rankingSelected"> 2237 <span>How is GroomingJok Ranking selected?</span> <i class="xi-angle-right"></i> 2238 </a> 2239 </li> 2240 </ul> 2241 2242 <ul data-ele-name="templateWrapperEvent" style="display: none"> 2243 <li> 2244 <a href="javascript:void(0)" class="item" data-column-name="wrapperLink"> 2245 <div class="thumbnail"> 2246 <img data-column-name="image" src="https://files.beautysocial.io/data.dev/event_detail/30d73c58bc854ff2985e7e6de29b31e4.jpg" alt=""> 2247 <!-- ì´ë²¤í¸ ì¸ë¤ì¼ ì´ë¯¸ì§ë¥¼ ê°ì ¸ì¤ëë° ëìì¸ì ìí´ shadowìë íë² ë ê°ì ¸ì주ì¸ì --> 2248 <img data-column-name="image2" class="shadow" src="https://files.beautysocial.io/data.dev/event_detail/30d73c58bc854ff2985e7e6de29b31e4.jpg" 2249 alt=""> 2250 </div> 2251 <div class="info"> 2252 <div class="tit" data-column-name="title">ì íë§¥ì¤íë¡íë¬ì¤ ì 모 1í í¹ê°!</div> 2253 <div class="desc" data-column-name="subTitle"> 2254 ì¤ê³½ì£¼ì¬ë¡ ì¼êµ´íì ê°¸ë¦íê³ Vë¼ì¸ì ì°¾ê³ ë ì°¾ê³ ì°¾ìë³´ì 2255 </div> 2256 <div class="side"> 2257 <div class="name" data-column-name="name">ìì ¤ë¯¸ìì</div> 2258 <div class="score" data-column-name="evalPoint">5.0</div> 2259 <em class="loacation" data-column-name="address">ê°ë¨ì</em> 2260 </div> 2261 <div class="rep"> 2262 <span class="sale" data-column-name="discountedPercentage">46%</span> 2263 <div data-column-name="discountedPrice">6.9ë§ì</div> 2264 <span class="before" data-column-name="price">12.9ë§ì</span> 2265 </div> 2266 </div> 2267 </a> 2268 </li> 2269 2270 <!-- <li> 2271 <a class="media" th:href="|javascript:void(0)|" data-column-name="wrapperLink"> 2272 <div class="profile rect"> 2273 <i class="img" data-column-name="image" th:style="|background-image: url(@{/img/profile-hospital.png});|"></i> 2274 </div> 2275 <div class="media-body"> 2276 <h4 class="tit" data-column-name="title">loading...</h4> 2277 <div class="sub-tit" data-column-name="subTitle">loading...</div> 2278 <div class="naming-tag"><bs data-column-name="name">loading...</bs><span class="station" data-column-name="address">loading...</span></div> 2279 <div class="star-box"> 2280 <div class="individual-star"> 2281 <div class="star-wrap"> 2282 <i class="icon-star"></i> 2283 <i class="icon-star"></i> 2284 <i class="icon-star"></i> 2285 <i class="icon-star"></i> 2286 <i class="icon-star"></i> 2287 <span class="star" style="width: 0" data-column-name="starWidthMain"> 2288 <i class="icon-star active"></i> 2289 <i class="icon-star active"></i> 2290 <i class="icon-star active"></i> 2291 <i class="icon-star active"></i> 2292 <i class="icon-star active"></i> 2293 </span> 2294 </div> 2295 </div> 2296 <span class="score-val" data-column-name="evalPoint"> 2297 loading... 2298 </span> 2299 </div> 2300 2301 <strong class="text-secondary" data-column-name="discountedPercentageStrong"><span data-column-name="discountedPercentage">0%</span></strong> 2302 <strong class="text-dark"><span data-column-name="discountedPrice">loading...</span><s class="price" data-column-name="price">loading...</s></strong> 2303 </div> 2304 </a> 2305 </li> --> 2306 </ul> 2307 2308 <ul class="lst-common mt17" data-ele-name="templateWrapperEvent2" style="display: none"> 2309 <li class="hot-event"> 2310 <a class="media" href="javascript:void(0)" data-column-name="wrapperLink"> 2311 <div class="profile rect"> 2312 <i class="img" data-column-name="image" style="background-image: url(/img/profile-hospital.png);"></i> 2313 </div> 2314 <div class="media-body"> 2315 <h4 class="tit" data-column-name="title">loading...</h4> 2316 <div class="sub-tit" data-column-name="subTitle">loading...</div> 2317 <div class="naming-tag"><bs data-column-name="name">loading...</bs><span class="station" data-column-name="address">loading...</span></div> 2318 <div class="star-box"> 2319 <div class="individual-star"> 2320 <div class="star-wrap"> 2321 <i class="icon-star"></i> 2322 <i class="icon-star"></i> 2323 <i class="icon-star"></i> 2324 <i class="icon-star"></i> 2325 <i class="icon-star"></i>
2326 <span class="star" style="width: 0" data-column-name="starWidthMain"> 2327 <i class="icon-star active"></i> 2328 <i class="icon-star active"></i> 2329 <i class="icon-star active"></i> 2330 <i class="icon-star active"></i> 2331 <i class="icon-star active"></i> 2332 </span> 2333 </div> 2334 </div> 2335 <span class="score-val" data-column-name="evalPoint"> 2336 loading... 2337 </span> 2338 </div> 2339 2340 <strong class="text-secondary" data-column-name="discountedPercentageStrong"><span data-column-name="discountedPercentage">0%</span></strong> 2341 <strong class="text-dark"><span data-column-name="discountedPrice">loading...</span><s class="price" data-column-name="price">loading...</s></strong> 2342 </div> 2343 </a> 2344 </li> 2345 </ul> 2346 2347 <ul class="lst-common mt17" data-ele-name="templateWrapperEventModel" style="display: none"> 2348 <li> 2349 <a href="javascript:void(0)" class="item" data-column-name="wrapperLink"> 2350 <div class="thumbnail"> 2351 <img data-column-name="image" src="" alt=""> 2352 </div> 2353 <div class="info"> 2354 <div class="tit" data-column-name="title">ì íë§¥ì¤íë¡íë¬ì¤ ì 모 1í í¹ê°!</div> 2355 <div class="desc" data-column-name="subTitle"> 2356 ì¤ê³½ì£¼ì¬ë¡ ì¼êµ´íì ê°¸ë¦íê³ Vë¼ì¸ì ì°¾ê³ ë ì°¾ê³ ì°¾ìë³´ì 2357 </div> 2358 <div class="side"> 2359 <div class="name" data-column-name="name">ìì ¤ë¯¸ìì</div> 2360 <div class="score" data-column-name="evalPoint">5.0</div> 2361 <em class="loacation" data-column-name="address">ê°ë¨ì</em> 2362 </div> 2363 <!-- <div class="rep"> 2364 <span class="sale" data-column-name="discountedPercentage">46%</span> 2365 <div data-column-name="discountedPrice">6.9ë§ì</div> 2366 <span class="before" data-column-name="price">12.9ë§ì</span> 2367 </div> --> 2368 </div> 2369 </a> 2370 </li> 2371 2372 2373 <!-- <li class="no-price"> 2374 <a class="media" th:href="|javascript:void(0)|" data-column-name="wrapperLink"> 2375 <div class="profile rect"> 2376 <i class="img" data-column-name="image" th:style="|background-image: url(@{/img/profile-hospital.png});|"></i> 2377 </div> 2378 <div class="media-body"> 2379 <h4 class="tit" data-column-name="title">loading...</h4> 2380 <div class="sub-tit" data-column-name="subTitle">loading...</div> 2381 <div class="naming-tag"><bs data-column-name="name">loading...</bs><span class="station" data-column-name="address">loading...</span></div> 2382 <div class="star-box"> 2383 <div class="individual-star"> 2384 <div class="star-wrap"> 2385 <i class="icon-star"></i> 2386 <i class="icon-star"></i> 2387 <i class="icon-star"></i> 2388 <i class="icon-star"></i> 2389 <i class="icon-star"></i> 2390 <span class="star" style="width: 0" data-column-name="starWidthMain"> 2391 <i class="icon-star active"></i> 2392 <i class="icon-star active"></i> 2393 <i class="icon-star active"></i> 2394 <i class="icon-star active"></i> 2395 <i class="icon-star active"></i> 2396 </span> 2397 </div> 2398 </div> 2399 <span class="score-val" data-column-name="evalPoint"> 2400 loading... 2401 </span> 2402 </div> 2403 </div> 2404 </a> 2405 </li> --> 2406 </ul> 2407 2408 <ul class="lst-default" data-ele-name="templateWrapperSkinCare" style="display: none"> 2409 <li data-ele-name="templateWrapperSkinCareLi"> 2410 <a href="javascript:void(0)" data-column-name="wrapperLink1" class="ico-cart">ë´ê¸°</a> 2411 <a href="javascript:void(0)" data-column-name="wrapperLink2" class="media"> 2412 <div class="profile rect"> 2413 <i class="img" data-column-name="image" style="background-image: url(/img/profile-hospital.png);"></i> 2414 </div> 2415 <div class="media-body"> 2416 <h4 class="tit text-truncate" data-column-name="productName">loading...</h4> 2417 <div class="sub-tit" data-column-name="brandName">loading...</div> 2418 <!-- <div class="naming-tag">
2418 </div> --> 2419 <div class="star-box"> 2420 <div class="individual-star"> 2421 <div class="star-wrap"> 2422 <i class="icon-star"></i> 2423 <i class="icon-star"></i> 2424 <i class="icon-star"></i> 2425 <i class="icon-star"></i> 2426 <i class="icon-star"></i> 2427 <span class="star" style="width: 0" data-column-name="starWidthMain"> 2428 <i class="icon-star active"></i> 2429 <i class="icon-star active"></i> 2430 <i class="icon-star active"></i> 2431 <i class="icon-star active"></i> 2432 <i class="icon-star active"></i> 2433 </span> 2434 </div> 2435 </div> 2436 <span class="score-val"> 2437 <bs data-column-name="evalPoint">loading...</bs> 2438 </span> 2439 <!-- <dl class="dl-meta"> 2440 <dd><em data-column-name="evalPoint">loading...</em>(<bs data-column-name="evalCnt">loading...</bs>)</dd> 2441 </dl> --> 2442 </div> 2443 <div> 2444 <strong class="text-secondary" data-column-name="discountedPercentage">loading...%</strong> 2445 <strong class="text-dark"><span data-column-name="discountedPrice"></span> 2446 <s class="price" data-column-name="price">loading...</s> 2447 </strong> 2448 </div> 2449 2450 </div> 2451 </a> 2452 </li> 2453 </ul> 2454 2455 <ul data-ele-name="templateWrapperEvaluation" style="display: none"> 2456 <li data-ele-name="templateWrapperEvaluationLiUser"> 2457 <a href="javascript:void(0)" class="item"> 2458 <div class="grid-div"> 2459 <div class="left"> 2460 <div class="profile"> 2461 <div 2462 data-column-name="profileImg" 2463 class="img" 2464 style="background-image: url(https://files.beautysocial.io/data.dev/profile/e44150e70e864eaca0b469db02b18003.png);"> 2465 </div> 2466 <div class="name" data-column-name="name">Forest</div> 2467 <div class="date" data-column-name="date">2024.11.19</div> 2468 </div> 2469 </div> 2470 <div class="right"> 2471 <div class="score" data-column-name="point">0.0</div> 2472 </div> 2473 </div> 2474 <p class="desc normal" data-column-name="content"> 2475 </p> 2476 </a> 2477 </li> 2478 <li class="admin" data-ele-name="templateWrapperEvaluationLiProv"> 2479 <div class="comment-item" data-ele-name="templateWrapperEvaluationProv" style="display: none"> 2480 <div class="comment-head"> 2481 <div class="profile-id"> 2482 Clinic administrator 2483 <span class="date" data-column-name="provDate">loading...</span> 2484 </div> 2485 </div> 2486 <div class="comment-body-admin"> 2487 <p data-column-name="provContent"> 2488 loading... 2489 </p> 2490 </div> 2491 </div> 2492 </li> 2493 </ul> 2494 2495 <!-- <ul class="lst-default lst-evaluation" data-ele-name="templateWrapperEvaluation" style="display: none"> 2496 <li data-ele-name="templateWrapperEvaluationLiUser"> 2497 <div class="comment-item"> 2498 <div class="comment-head"> 2499 <div class="left"> 2500 <div class="profile"> 2501 <i class="img" data-column-name="profileImg" style="background-image:url('/img/profile.png');"></i> 2502 </div> 2503 <span class="profile-id" data-column-name="name">loading...</span> 2504 <div class="individual-star"> 2505 <div class="star_wrap"> 2506 <i data-column-name="star1" class="icon-star"></i> 2507 <i data-column-name="star2" class="icon-star"></i> 2508 <i data-column-name="star3" class="icon-star"></i> 2509 <i data-column-name="star4" class="icon-star"></i> 2510 <i data-column-name="star5" class="icon-star"></i> 2511 </div> 2512 </div>
2513 <span class="score-val"> 2514 <span data-column-name="point">loading...</span> 2515 </span> 2516 </div> 2517 <div class="right"> 2518 <span class="date" data-column-name="date">loading...</span> 2519 </div> 2520 <div class="txt d-flex justify-content-between" style="display: none"> 2521 <a th:href="|javascript:void(0)|" data-ele-name="reportModal" class="text-link text-muted" style="display: none">ì ê³ í기</a> 2522 </div> 2523 </div> 2524 <div class="comment-body" data-column-name="content"> 2525 loading... 2526 </div> 2527 </div> 2528 </li> 2529 <li class="admin" data-ele-name="templateWrapperEvaluationLiProv"> 2530 <div class="comment-item" data-ele-name="templateWrapperEvaluationProv" style="display: none"> 2531 <div class="comment-head"> 2532 <div class="profile-id"> 2533 <th:block th:text="#{evaluation.msg.clinic.administrator}">ë³ì ê´ë¦¬ì</th:block> 2534 <span class="date" data-column-name="provDate">loading...</span> 2535 </div> 2536 </div> 2537 <div class="comment-body-admin"> 2538 <p data-column-name="provContent"> 2539 loading... 2540 </p> 2541 </div> 2542 </div> 2543 </li> 2544 </ul> --> 2545 2546 2547 <ul data-ele-name="templateWrapperTwoEvaluation" style="display: none;"> 2548 <li class="swiper-slide" data-ele-name="templateWrapperTwoEvaluationUser" style="max-height: 158px;"> 2549 <a href="javascript:void(0)" class="item" data-column-name="templateCommentItem"> 2550 <div class="grid-div"> 2551 <div class="left"> 2552 <div class="profile"> 2553 <div 2554 data-column-name="profileImg" 2555 class="img" 2556 style="background-image: url(https://files.beautysocial.io/data.dev/profile/e44150e70e864eaca0b469db02b18003.png);"> 2557 </div> 2558 <div class="name" data-column-name="name">Forest</div> 2559 <div class="date" data-column-name="date">2024.11.19</div> 2560 </div> 2561 </div> 2562 <div class="right"> 2563 <div class="score" data-column-name="point">5.0</div> 2564 </div> 2565 </div> 2566 <!-- <div class="swiper slideReviewAttach"> 2567 <ul class="swiper-wrapper"> 2568 <li class="swiper-slide"> 2569 <div class="picture" 2570 style="background-image: url(https://files.beautysocial.io/data.dev/board/a72c9399fe884a36a5392c85661d290e.jpeg);"> 2571 </div> 2572 </li> 2573 <li class="swiper-slide"> 2574 <div class="picture" 2575 style="background-image: url(https://files.beautysocial.io/data.dev/board/99a4ba9105fa432aacb8b5f62886b74e.jpeg);"> 2576 </div> 2577 </li> 2578 </ul> 2579 <div class="swiper-pagination"></div> 2580 </div> --> 2581 <p class="desc" data-column-name="content"> 2582 ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶í¼ë¶í¼ë¶í¼ë¶ 2583 </p> 2584 </a> 2585 </li> 2586 <!-- <li data-ele-name="templateWrapperTwoEvaluationUser"> 2587 <div class="item" data-column-name="templateCommentItem"> 2588 <div class="comment-head grid-div"> 2589 <div class="left"> 2590 <div class="profile"> 2591 <div 2592 class="img" 2593 data-column-name="profileImg" 2594 style="background-image: url(https://files.beautysocial.io/data.dev/profile/e44150e70e864eaca0b469db02b18003.png);"> 2595 </div> 2596 <div class="name" data-column-name="name"></div> 2597 <div class="score" data-column-name="point">5.0</div> 2598 <div class="date" data-column-name="date"></div> 2599 </div> 2600 </div> 2601 </div> 2602 <div class="comment-body"> 2603 <p class="desc" data-column-name="content"> 2604 ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ 2605 ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶í¼ë¶í¼ë¶í¼ë¶ 2606 </p> 2607 </div> 2608 </div> 2609 </li> --> 2610 <li class="admin" data-ele-name="templateWrapperTwoEvaluationProv"> <!--ë³ì ê´ë¦¬ì--> 2611 <div class="item"> 2612 <div class="comment-head"> 2613 <span class="profile-id">Clinic administrator <span class="date" data-column-name="date">loading...</span></span> 2614 </div> 2615 <div class="comment-body">
2616 <p data-column-name="content"> 2617 loading... 2618 </p> 2619 </div> 2620 </div> 2621 </li> 2622 </ul> 2623 2624 <!-- <ul class="lst-comments" data-ele-name="templateWrapperTwoEvaluation" style="display: none"> 2625 <li data-ele-name="templateWrapperTwoEvaluationUser"> 2626 <div class="comment-item"> 2627 <div class="comment-head"> 2628 <div class="left"> 2629 <div class="profile"> 2630 <i class="img" data-column-name="profileImg" style="background-image:url('/img/profile.png');"></i> 2631 </div> 2632 <span class="profile-id"><bs data-column-name="name">loading...</bs></span> 2633 <div class="individual-star"> 2634 <div class="star_wrap"> 2635 <i data-column-name="star1" class="icon-star"></i> 2636 <i data-column-name="star2" class="icon-star"></i> 2637 <i data-column-name="star3" class="icon-star"></i> 2638 <i data-column-name="star4" class="icon-star"></i> 2639 <i data-column-name="star5" class="icon-star"></i> 2640 </div> 2641 </div> 2642 <span class="score-val"> 2643 <span data-column-name="point">loading...</span> 2644 </span> 2645 </div> 2646 <div class="right"> 2647 <span class="date" data-column-name="date">2019.11.21</span> 2648 </div> 2649 </div> 2650 <div class="comment-body"> 2651 <div class="comment-body-inner" data-column-name="comment-body-inner"> 2652 <p data-column-name="content" class="textover"> 2653 loading... 2654 </p> 2655 <a th:href="|javascript:void(0)|" class="textover-more" data-column-name="textover-more">...<th:block th:text="#{common.msg.more}">ë보기</th:block></a> 2656 </div> 2657 </div> 2658 </div> 2659 </li> 2660 <li class="admin" data-ele-name="templateWrapperTwoEvaluationProv"> 2661 <div class="comment-item"> 2662 <div class="comment-head"> 2663 <span class="profile-id"><th:block th:text="#{evaluation.msg.clinic.administrator}">ë³ì ê´ë¦¬ì</th:block> <span class="date" data-column-name="date">loading...</span></span> 2664 </div> 2665 <div class="comment-body-admin"> 2666 <p data-column-name="content"> 2667 loading... 2668 </p> 2669 </div> 2670 </div> 2671 </li> 2672 </ul> --> 2673 2674 <ul data-ele-name="templateWrapperTwoEvaluationEvent" style="display: none"> 2675 <li class="swiper-slide" data-ele-name="templateWrapperTwoEvaluationUserEvent" style="max-height: 158px;"> 2676 <a href="javascript:void(0)" class="item" data-column-name="templateCommentItem"> 2677 <div class="grid-div"> 2678 <div class="left"> 2679 <div class="profile"> 2680 <div 2681 data-column-name="profileImg" 2682 class="img" 2683 style="background-image: url(https://files.beautysocial.io/data.dev/profile/e44150e70e864eaca0b469db02b18003.png);"> 2684 </div> 2685 <div class="name" data-column-name="name">Forest</div> 2686 <div class="date" data-column-name="date">2024.11.19</div> 2687 </div> 2688 </div> 2689 <div class="right"> 2690 <div class="score" data-column-name="point">5.0</div> 2691 </div> 2692 </div> 2693 <p class="desc" data-column-name="content"> 2694 ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶í¼ë¶í¼ë¶í¼ë¶ 2695 </p> 2696 </a> 2697 </li> 2698 <li class="swiper-slide" data-ele-name="templateWrapperTwoEvaluationProvEvent" style="max-height: 158px;"> <!--ë³ì ê´ë¦¬ì--> 2699 <a href="javascript:void(0)" class="item"> 2700 <div class="grid-div"> 2701 <div class="left"> 2702 <div class="profile"> 2703 <div 2704 data-column-name="profileImg" 2705 class="img" 2706 style="display: none; background-image: url(https://files.beautysocial.io/data.dev/profile/e44150e70e864eaca0b469db02b18003.png);"> 2707 </div> 2708 <div class="name" data-column-name="name">ë³ì ê´ë¦¬ì</div> 2709 <div class="date" data-column-name="date">2024.11.19</div> 2710 </div> 2711 </div> 2712 <div class="right"> 2713 <div class="score" data-column-name="point" style="display: none;">5.0</div> 2714 </div> 2715 </div>
2716 <p class="desc" data-column-name="content"> 2717 ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶í¼ë¶í¼ë¶í¼ë¶ 2718 </p> 2719 </a> 2720 2721 <!-- <div class="item"> 2722 <div class="comment-head"> 2723 <span class="profile-id"><th:block th:text="#{evaluation.msg.clinic.administrator}">ë³ì ê´ë¦¬ì</th:block> <span class="date" data-column-name="date">loading...</span></span> 2724 </div> 2725 <div class="comment-body"> 2726 <p data-column-name="content"> 2727 loading... 2728 </p> 2729 </div> 2730 </div> --> 2731 </li> 2732 </ul> 2733 2734 <!-- <ul class="lst-comments" data-ele-name="templateWrapperTwoEvaluationEvent" style="display: none"> 2735 <li data-ele-name="templateWrapperTwoEvaluationUserEvent"> 2736 <div class="comment-item"> 2737 <div class="comment-head"> 2738 <div class="left"> 2739 <div class="profile"> 2740 <i class="img" data-column-name="profileImg" style="background-image:url('/img/profile.png');"></i> 2741 </div> 2742 <span class="profile-id"><bs data-column-name="name">loading...</bs></span> 2743 <div class="individual-star"> 2744 <div class="star_wrap"> 2745 <i data-column-name="star1" class="icon-star"></i> 2746 <i data-column-name="star2" class="icon-star"></i> 2747 <i data-column-name="star3" class="icon-star"></i> 2748 <i data-column-name="star4" class="icon-star"></i> 2749 <i data-column-name="star5" class="icon-star"></i> 2750 </div> 2751 </div> 2752 <span class="score-val"> 2753 <span data-column-name="point">loading...</span> 2754 </span> 2755 </div> 2756 <div class="right"> 2757 <span class="date" data-column-name="date">2019.11.21</span> 2758 </div> 2759 </div> 2760 <div class="comment-body"> 2761 <div class="comment-body-inner" data-column-name="comment-body-inner"> 2762 <p data-column-name="content" class="textover"> 2763 loading... 2764 </p> 2765 <a th:href="|javascript:void(0)|" class="textover-more" data-column-name="textover-more">...<th:block th:text="#{common.msg.more}">ë보기</th:block></a> 2766 </div> 2767 </div> 2768 </div> 2769 </li> 2770 <li class="admin" data-ele-name="templateWrapperTwoEvaluationProvEvent"> 2771 <div class="comment-item"> 2772 <div class="comment-head"> 2773 <span class="profile-id"><th:block th:text="#{evaluation.msg.clinic.administrator}">ë³ì ê´ë¦¬ì</th:block> <span class="date" data-column-name="date">loading...</span></span> 2774 </div> 2775 <div class="comment-body-admin"> 2776 <p data-column-name="content"> 2777 loading... 2778 </p> 2779 </div> 2780 </div> 2781 </li> 2782 </ul> --> 2783 2784 <ul data-ele-name="templateWrapperReview" style="display: none"> 2785 <li> 2786 <a href="javascript:void(0)" data-data_type="link" data-data_key="nickName" data-column-name="userWrapperLink" class="item"> 2787 <div class="grid-div"> 2788 <div class="left"> 2789 <div class="profile"> 2790 <div class="img" 2791 style="background-image: url(https://files.beautysocial.io/data.dev/profile/e44150e70e864eaca0b469db02b18003.png);" 2792 data-column-name="profileImage" 2793 > 2794 </div> 2795 <div class="name" data-data_type="text" data-data_key="nickName">Forest</div> 2796 <div class="date" data-data_type="datetime" data-data_key="regDate">2024.11.19</div> 2797 </div> 2798 </div> 2799 <div class="right" data-column-name="wrapperSatisfaction"> 2800 <div class="score" data-data_type="text" data-data_key="txLevel">5.0</div> 2801 </div> 2802 </div> 2803 <div class="swiper slideBoardAttach list-attchfile"> 2804 <ul class="swiper-wrapper" data-ele-name="imgList"> 2805 </ul> 2806 <div class="swiper-pagination"></div> 2807 </div> 2808 <ul class="swiper-wrapper" data-column-name="templateImg" style="display: none"> 2809 <li class="swiper-slide" data-ele-name="selectLink"> 2810 <div data-column-name="image" 2811 class="picture" 2812 style="background-image: url(https://files.beautysocial.io/data.dev/board/a72c9399fe884a36a5392c85661d290e.jpeg);"> 2813 <span class="status-label" data-column-name="imgBadge">í</span> 2814 <span class="plus" data-column-name="plus" style="display: none"></span> 2815 </div> 2816 </li> 2817 </ul> 2818 2819 <div class="desc-group"> 2820 <p class="desc good" data-data_type="text" data-data_key="goodPoint" data-column-name="goodPoint"> 2821 ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶í¼ë¶í¼ë¶í¼ë¶ 2822 </p> 2823 <p class="desc sad" data-data_type="text" data-data_key="weakPoint" data-column-name="weakPoint"> 2824 ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶í¼ë¶í¼ë¶í¼ë¶ 2825 </p> 2826 </div> 2827 <div class="use-service" data-ele-name="txNmTemplateWrapper" style="display: none"> 2828 <span></span> 2829 </div> 2830 <div class="use-service" data-ele-name="txInfos" style="display: none;"> 2831 <span class="cte" data-ele-name="txPart">ì¹ì</span> 2832 </div> 2833 2834 <div class="command" style="margin-top: 0px;"> 2835 <ul> 2836 <li> 2837 <span href="javascript:void(0)" class="ico like min" data-column-name="likeCnt"><span class="value" data-data_type="text" data-data_key="likeCnt" >0</span></span> 2838 </li>
2839 <li data-column-name="commentWrapperLink"> 2840 <span href="javascript:void(0)" class="ico cmt min" data-column-name="commentCnt"><span class="value" data-data_type="text" data-data_key="commentCnt" >0</span></span> 2841 </li> 2842 <li> 2843 <span href="javascript:void(0)" class="ico view min" data-column-name="viewCnt"><span class="value" data-data_type="text" data-data_key="viewCnt" >0</span></span> 2844 </li> 2845 </ul> 2846 </div> 2847 <button type="button" class="btn btn-sm btn-outline-primary btn-translate" data-ele-name="btnTranslate">See translation</button> 2848 </a> 2849 2850 </li> 2851 <!-- <li class="touch-item review"> 2852 <a th:href="|javascript:void(0)|" data-data_type="link" data-data_key="nickName" data-column-name="userWrapperLink"> 2853 <div class="media media-horize"> 2854 <div class="profile"> 2855 <i class="img" data-column-name="profileImage" th:style="|background-image: url(@{/img/profile.png});|"></i> 2856 </div> 2857 <h4 class="tit"><bs data-data_type="text" data-data_key="nickName">loading...</bs 2858 ><br><span class="date" data-data_type="datetime" data-data_key="regDate">loading...</span></h4> 2859 <div class="meta review-meta" data-column-name="wrapperSatisfaction"> 2860 <dt><i class="icon-star active" th:text="#{common.msg.customer.satisfaction}">ë§ì¡±ë</i></dt> 2861 <dd class="text-dark" data-data_type="text" data-data_key="txLevel">loading...</dd> 2862 <dd>/ 5</dd> 2863 </div> 2864 </div> 2865 2866 <ul data-ele-name="txNmTemplateWrapper" style="display: none"> 2867 <li></li> 2868 </ul> 2869 <dl class="proscons"> 2870 <dt></dt> 2871 <dd class="text-truncate" data-data_type="text" data-data_key="goodPoint" data-column-name="goodPoint">loading...</dd> 2872 <dt></dt> 2873 <dd class="text-truncate" data-data_type="text" data-data_key="weakPoint" data-column-name="weakPoint">loading...</dd> 2874 </dl> 2875 <ul class="lst-site" data-ele-name="txInfos" style="display: none"> 2876 <li class="tit" data-ele-name="txPart">loading...</li> 2877 </ul> 2878 2879 <div class="side-ctl-btn" data-ele-name="itemFooterWrapper"> 2880 <dl> 2881 <dt><img src="/img/ico-likes.png" th:alt="#{common.msg.like}"></dt> 2882 <dd data-data_type="text" data-data_key="likeCnt" data-column-name="likeCnt">0</dd> 2883 </dl> 2884 <dl data-data_type="link" data-column-name="commentWrapperLink"> 2885 <dt><img src="/img/ico-comments.png" th:alt="#{common.msg.comment}"></dt> 2886 <dd data-data_type="text" data-data_key="commentCnt" data-column-name="commentCnt">0</dd> 2887 </dl> 2888 <dl class="lookup"> 2889 <dt><img src="/img/ico-view.png" alt="ì¡°íì"></dt> 2890 <dd data-data_type="text" data-data_key="viewCnt" data-column-name="viewCnt">0</dd> 2891 </dl> 2892 </div> 2893 </a> 2894 <button type="button" class="btn btn-sm btn-outline-primary btn-translate" data-ele-name="btnTranslate" th:text="#{common.msg.see.translation}">ë²ì보기</button> 2895 <ul class="lst-tmb overflow-auto type-board imgPosition" data-ele-name="imgList" style="display: none"> 2896 </ul> 2897 <ul class="lst-tmb overflow-auto type-board imgPosition" data-column-name="templateImg" style="display: none"> 2898 <li> 2899 <figure class="badge" data-column-name="imgBadge">ì /í</figure> 2900 <a th:href="|javascript:void(0)|" data-ele-name="selectLink" 2901 ><img class="img-fluid" th:src="@{/img/profile.png}" alt="" data-column-name="image" 2902 ><span class="plus" data-column-name="plus" style="display: none"></span> 2903 </a> 2904 </li> 2905 </ul> 2906 </li> --> 2907 </ul> 2908 2909 <!-- 그루ë°TV ìì--> 2910 <ul data-ele-name="templateWrapperVideo" style="display: none"> 2911 <li> 2912 <a href="javascript:void(0)" data-column-name="wrapperLink" class="item"> 2913 <div class="thumbnail full"> 2914 <img 2915 data-column-name="videoImage" 2916 src="https://files.beautysocial.io/data.dev/banner_mobile/823529ed4aed492ab36cc52cfa0a8d44.png" 2917 alt=""> 2918 <img 2919 data-column-name="videoImage2" 2920 class="shadow" 2921 src="https://files.beautysocial.io/data.dev/banner_mobile/823529ed4aed492ab36cc52cfa0a8d44.png" 2922 alt=""> 2923 </div> 2924 <div class="info"> 2925 <div class="tit" data-column-name="videoTitle">ì±í í 모ë¸ì ì ë°ì ì°</div> 2926 <div class="desc" data-column-name="videoTitle">ì¡°íì <span data-column-name="videoViewCount">loading...</span>í · <span data-column-name="videoRegDate">2ì¼ ì </span></div> 2927 </div> 2928 </a> 2929 </li> 2930 </ul> 2931 2932 <!-- <ul class="lst-default lst-maintreatment banner-view" data-ele-name="templateWrapperVideo" style="display: none"> 2933 <li> 2934 <a class="media" th:href="|javascript:void(0)|" data-column-name="wrapperLink"> 2935 <img src="/img/treatment_thumb01_ko.png" alt="" class="img-fluid" data-column-name="videoImage" /> 2936 </a> 2937 <div class="media-body video-info"> 2938 <h4 class="tit" data-column-name="videoTitle">loading...</h4> 2939 <div class="sub-tit">ì¡°íì <bs data-column-name="videoViewCount">loading...</bs>í · <bs data-column-name="videoRegDate">2ì¼ ì </bs></div> 2940 </div> 2941 </li> 2942 </ul> --> 2943 <!-- 그루ë°TV ë --> 2944 2945 <!-- ì§ì리뷰 --> 2946 <ul class="lst-default lst-review" data-ele-name="templateWrapperEpReview" style="display: none"> 2947 <li class="touch-item not-file"> 2948 <a href="javascript:void(0)" data-column-name="wrapperEpReviewLink"> 2949 <div class="media media-horize"> 2950 <div class="profile"> 2951 <i class="img" data-column-name="profileImage" style="background-image: url(/img/anonymous-writer.png);" ></i> 2952 </div> 2953 <h4 class="tit"><bs data-column-name="epNickName">loading...</bs><br>
2954 <span class="date" data-data_type="datetime" data-data_key="regDate" style="display: none">loading...</span> 2955 </h4> 2956 <div class="meta review-meta" style="display: none"> 2957 <dt><i class="icon-star active">ë§ì¡±ë</i></dt> 2958 <dd class="text-dark" data-column-name="pDoctorLevel">loading...</dd> 2959 <dd>/ 5</dd> 2960 </div> 2961 </div> 2962 <p class="board-desc employee"><span class="hot" style="display: none" data-column-name="hotIcon">BEST</span> <bs data-column-name="epTitle">loading...</bs></p> 2963 <dl class="proscons"> 2964 <dt class="like"></dt> 2965 <dd class="text-truncate" data-data_type="text" data-data_key="goodPoint" data-column-name="goodPoint">loading...</dd> 2966 <dt class="bad"></dt> 2967 <dd class="text-truncate" data-data_type="text" data-data_key="weakPoint" data-column-name="weakPoint">loading...</dd> 2968 <!-- <dt></dt> 2969 <dd class="text-truncate" data-data_type="text" data-data_key="wishingPoint" data-column-name="wishingPoint">loading...</dd> --> 2970 </dl> 2971 2972 2973 <div class="side-ctl-btn"> 2974 <dl> 2975 <dt><img src="/img/ico-likes.png" alt="#{common.msg.like}"></dt> 2976 <dd data-data_type="text" data-data_key="likeCnt" data-column-name="likeCnt">0</dd> 2977 </dl> 2978 <dl> 2979 <dt><img src="/img/ico-comments.png" alt="#{common.msg.comment}"></dt> 2980 <dd data-data_type="text" data-data_key="commentCnt" data-column-name="commentCnt">0</dd> 2981 </dl> 2982 <dl class="lookup"> 2983 <dt><img src="/img/ico-view.png" alt="ì¡°íì"></dt> 2984 <dd data-data_type="text" data-data_key="viewCnt" data-column-name="viewCnt">0</dd> 2985 </dl> 2986 </div> 2987 </a> 2988 </li> 2989 </ul> 2990 <!-- ì§ì리뷰 --> 2991 2992 <!-- 빡침주ì 리ì¤í¸ --> 2993 <ul class="lst-default lst-review" data-ele-name="templateWrapperComplainReview" style="display: none"> 2994 <li class="touch-item not-file"> 2995 <a href="javascript:void(0)" data-column-name="wrapperComplainReviewLink"> 2996 <div class="media media-horize"> 2997 <div class="profile"> 2998 <i class="img" data-column-name="profileImage" style="background-image: url(/img/anonymous-writer.png);" ></i> 2999 </div> 3000 <h4 class="tit"><bs data-column-name="complainNickName">loading...</bs><br> 3001 <span class="date" data-data_type="datetime" data-data_key="regDate">loading...</span> 3002 </div> 3003 <!-- <p class="board-desc employee" data-column-name="complainTitle"></p> --> 3004 <p class="board-desc employee"><span class="hot" style="display: none" data-column-name="hotIcon">BEST</span> <bs data-column-name="complainTitle">loading...</bs></p> 3005 <dl class="proscons"> 3006 <dt class="angry"></dt> 3007 <dd class="text-truncate" data-data_key="complainPoint" data-column-name="complainPoint">loading...</dd> 3008 <dt class="normal"></dt> 3009 <dd class="text-truncate" data-data_key="goodPoint" data-column-name="goodPoint">loading...</dd> 3010 </dl> 3011 <div class="side-ctl-btn"> 3012 <dl> 3013 <dt><img src="/img/ico-likes.png" alt="#{common.msg.like}"></dt> 3014 <dd data-data_type="text" data-data_key="likeCnt" data-column-name="likeCnt">0</dd> 3015 </dl> 3016 <dl> 3017 <dt><img src="/img/ico-comments.png" alt="#{common.msg.comment}"></dt> 3018 <dd data-data_type="text" data-data_key="commentCnt" data-column-name="
3018commentCnt">0</dd> 3019 </dl> 3020 <dl class="lookup"> 3021 <dt><img src="/img/ico-view.png" alt="ì¡°íì"></dt> 3022 <dd data-data_type="text" data-data_key="viewCnt" data-column-name="viewCnt">0</dd> 3023 </dl> 3024 </div> 3025 </a> 3026 </li> 3027 </ul> 3028 <!-- 빡침주ì 리ì¤í¸ ë--> 3029 3030 <!-- /ê²ìí --> 3031 <ul data-ele-name="templateWrapperBoard" style="display: none"> 3032 <li data-column-name="touchItem"> 3033 <a href="javascript:void(0)" class="item" data-column-name="wrapperLink"> 3034 <div class="grid-div"> 3035 <div class="left"> 3036 <div class="profile"> 3037 <div class="img" data-column-name="profileImage" 3038 style="background-image: url(https://files.beautysocial.io/data.dev/profile/e44150e70e864eaca0b469db02b18003.png);"> 3039 </div> 3040 <div class="name" data-data_type="text" data-data_key="nickName">Forest</div> 3041 <div class="date" data-data_type="datetime" data-data_key="regDate">2024.11.19</div> 3042 </div> 3043 </div> 3044 <!-- <div class="right"> 3045 <div class="score">5.0</div> 3046 </div> --> 3047 </div> 3048 <div class="swiper slideBoardAttach list-attchfile" data-column-name="templateImgDiv"> 3049 <ul class="swiper-wrapper" data-column-name="templateImg"> 3050 </ul> 3051 <ul data-ele-name="templateWrapperBoardImg" style="display: none"> 3052 <li class="swiper-slide" data-ele-name="selectLink"> 3053 <div class="picture" data-column-name="image" 3054 style="background-image: url(https://files.beautysocial.io/data.dev/board/a72c9399fe884a36a5392c85661d290e.jpeg);"> 3055 <!-- <span class="status-label">í</span> --> 3056 </div> 3057 </li> 3058 </ul> 3059 <div class="swiper-pagination"></div> 3060 </div> 3061 <p class="desc best" data-column-name="boardContents"> 3062 ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶í¼ë¶í¼ë¶í¼ë¶ 3063 </p> 3064 <div class="command" style="margin-top: 0px;"> 3065 <ul> 3066 <li> 3067 <span href="javascript:void(0)" class="ico like min" data-data_type="text" data-data_key="likeCnt" data-column-name="likeCnt"><span class="value">0</span></span> 3068 </li> 3069 <li> 3070 <span href="javascript:void(0)" class="ico cmt min" data-data_type="text" data-data_key="commentCnt" data-column-name="commentCnt"><span class="value">0</span></span> 3071 </li> 3072 <li> 3073 <span href="javascript:void(0)" class="ico view min" data-data_type="text" data-data_key="viewCnt" data-column-name="viewCnt"><span class="value">0</span></span> 3074 </li> 3075 </dl> 3076 </div> 3077 </a> 3078 </li> 3079 </ul> 3080 3081 <!-- <ul class="lst-default lst-review" data-ele-name="templateWrapperBoard" style="display: none"> 3082 <li class="touch-item" data-column-name="touchItem" > 3083 <a th:href="|javascript:void(0)|" data-column-name="wrapperLink"> 3084 <div class="media media-horize"> 3085 <div class="profile"> 3086 <i class="img" data-column-name="profileImage" th:style="|background-image: url(@{/img/profile.png});|" ></i> 3087 </div> 3088 <h4 class="tit"> 3089 <span data-data_type="text" data-data_key="nickName">loading...</span> 3090 <br> 3091 <span class="date" data-data_type="datetime" data-data_key="regDate">loading...</span> 3092 </h4> 3093 </div> 3094 <p class="board-desc" data-column-name="boardContentsP"> 3095 <span class="hot" style="display: none" data-column-name="boardHotIcon">BEST</span> 3096 <bs data-column-name="boardContents"> 3097 loading... 3098 </bs> 3099 </p> 3100 <div class="side-ctl-btn"> 3101 <dl> 3102 <dt><img src="/img/ico-likes.png" alt="#{common.msg.like}"></dt> 3103 <dd data-data_type="text" data-data_key="likeCnt" data-column-name="likeCnt">0</dd> 3104 </dl> 3105 <dl> 3106 <dt><img src="/img/ico-comments.png" alt="#{common.msg.comment}"></dt> 3107 <dd data-data_type="text" data-data_key="commentCnt" data-column-name="
3107commentCnt">0</dd> 3108 </dl> 3109 <dl class="lookup"> 3110 <dt><img src="/img/ico-view.png" alt="ì¡°íì"></dt> 3111 <dd data-data_type="text" data-data_key="viewCnt" data-column-name="viewCnt">0</dd> 3112 </dl> 3113 </div> 3114 </a> 3115 <ul class="lst-tmb overflow-auto type-board" data-column-name="templateImg" > 3116 </ul> 3117 <ul data-ele-name="templateWrapperBoardImg" style="display: none"> 3118 <li> 3119 <a th:href="|javascript:void(0)|" data-ele-name="selectLink"><img class="img-fluid" th:src="@{/img/profile.png}" alt="" data-column-name="image"></a> 3120 </li> 3121 </ul> 3122 3123 3124 </li> 3125 </ul> --> 3126 <!-- ê²ìí/ --> 3127 <!-- / ê²ìí ëê¸ --> 3128 <ul data-ele-name="templateWrapperBoardComment" style="display: none;"> 3129 <li data-column-name="templatcomment"> 3130 <div class="item" data-column-name="templateCommentItem"> 3131 <div class="comment-head grid-div"> 3132 <div class="left"> 3133 <div class="profile"> 3134 <div class="img" data-column-name="profileImage" 3135 style="background-image: url(https://files.beautysocial.io/data.dev/profile/e44150e70e864eaca0b469db02b18003.png);"> 3136 </div> 3137 <div class="name" data-data_key="nickName">Forest</div> 3138 <a href="javascript:void(0)" class="board-siren-img" style="width: 20px; opacity: 0.6; position: relative; bottom: 2px;" data-ele-name="btnBoardViewSiren"><img src="/img/icon-hd-siren.png" alt=""></a> 3139 <div class="date" data-data_type="datetime" data-data_key="regDate">2024.11.19</div> 3140 </div> 3141 </div> 3142 <div class="right"> 3143 <a class="ico more" style="cursor: pointer;" data-ele-name="btnMore">ë 보기</a> 3144 </div> 3145 </div> 3146 <div class="comment-body"> 3147 <p class="desc" data-column-name="commentContents"> 3148 ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ 3149 ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶í¼ë¶í¼ë¶í¼ë¶ 3150 </p> 3151 <div class="command" data-column-name="commentCrud" style="cursor: pointer;"> 3152 <a href="javascript:void(0)" class="ico cmt"> 3153 <span class="value">ëµê¸ì°ê¸°</span> 3154 </a> 3155 </div> 3156 </div> 3157 </div> 3158 </li> 3159 </ul> 3160 3161 <!-- <ul class="lst-comments" data-ele-name="templateWrapperBoardComment" > 3162 <li data-column-name="templatcomment"> 3163 <div class="comment-item" data-column-name="templateCommentItem"> 3164 <div class="comment-head"> 3165 <div class="left"> 3166 <div class="profile"> 3167 <i class="img" data-column-name="profileImage" th:style="|background-image: url(@{/img/profile.png});|"></i> 3168 </div> 3169 <span class="profile-id"> 3170 <bs data-data_type="text" data-data_key="nickName">jack99880</bs> 3171 <a th:href="|javascript:void(0)|" class="board-siren-img"><img src="/img/icon-hd-siren.png" alt=""></a> 3172 <span class="date" data-data_type="datetime" data-data_key="regDate" >2019.11.21</span> 3173 </span> 3174 </div> 3175 3176 <div class="right"> 3177 <a th:href="|javascript:void(0)|" data-ele-name="deleteCommentModal" class="ico-more" style="display: none"><img src="/img/ico-more.png" alt="ìì "></a> 3178 <a th:href="|javascript:void(0)|" data-ele-name="reportModal" class="text-link text-muted">ì ê³ í기</a> 3179 </div> 3180 </div> 3181 <div class="comment-body" > 3182 <p data-column-name="commentContents"> 3183 loading... 3184 </p> 3185 <a th:href="|javascript:void(0)|" class="comment-crud" data-column-name="commentCrud" style="display: none">ëê¸ì°ê¸°</a> 3186 </div> 3187 </div> 3188 3189 </li> 3190 </ul> --> 3191 <!-- ê²ìí ëê¸ / --> 3192 3193 <!-- / ì§ì리뷰 ëê¸ --> 3194 <ul class="lst-comments" data-ele-name="templateWrapperEpReviewComment" > 3195 <li data-column-name="templatcomment"> 3196 <div class="comment-item" data-column-name="templateCommentItem"> 3197 <!-- <div class="comment-item reply"> ëëê¸--> 3198 <div class="comment-head"> 3199 <div class="left"> 3200 <div class="profile"> 3201 <i class="img" data-column-name="profileImage" style="background-image: url(/img/profile.png);"></i> 3202 </div>
3203 <span class="profile-id"><bs data-data_type="text" data-data_key="nickName">jack99880</bs><span class="date" data-data_type="datetime" data-data_key="regDate" >2019.11.21</span></span> 3204 </div> 3205 <div class="right"> 3206 <a href="javascript:void(0)" data-ele-name="reportModal" class="text-link text-muted">ì ê³ í기</a> 3207 <a href="javascript:void(0)" data-ele-name="deleteCommentModal" class="ico-more" style="display: none"><img src="/img/ico-more.png" alt="ìì "></a> 3208 </div> 3209 </div> 3210 <div class="comment-body" > 3211 <p data-column-name="commentContents"> 3212 loading... 3213 </p> 3214 <a href="javascript:void(0)" class="comment-crud" data-column-name="commentCrud" style="display: none">ëê¸ì°ê¸°</a> 3215 </div> 3216 </div> 3217 </li> 3218 </ul> 3219 <!-- ê²ìí ëê¸ / --> 3220 3221 3222 <!-- / ë§ì´íì´ì§ ê²ìí 리ì¤í¸ --> 3223 <ul data-ele-name="templateWrapperMyBoard" style="display: none"> 3224 <li data-column-name="touchItem"> 3225 <a href="javascript:void(0)" class="item" data-column-name="wrapperLink"> 3226 <div class="grid-div"> 3227 <div class="left"> 3228 <div class="profile"> 3229 <div class="img" data-column-name="profileImage" 3230 style="display: none; background-image: url(https://files.beautysocial.io/data.dev/profile/e44150e70e864eaca0b469db02b18003.png);" 3231 > 3232 </div> 3233 <div style="display: none;" class="name" data-data_type="text" data-data_key="nickName">Forest</div> 3234 <div class="date" data-data_type="datetime" data-data_key="regDate">2024.11.19</div> 3235 </div> 3236 </div> 3237 <div class="right"> 3238 <span href="javascript:void(0)" class="red" data-column-name="deleteBt" style="display: none;">ìì </span> 3239 </div> 3240 </div> 3241 3242 <div class="swiper slideBoardAttach list-attchfile" data-column-name="templateImgDiv"> 3243 <ul class="swiper-wrapper" data-column-name="templateImg"> 3244 </ul> 3245 <ul data-ele-name="templateWrapperBoardImg" style="display: none"> 3246 <li class="swiper-slide" data-ele-name="selectLink"> 3247 <div class="picture" data-column-name="image" 3248 style="background-image: url();"> 3249 </div> 3250 </li> 3251 </ul> 3252 <div class="swiper-pagination"></div> 3253 </div> 3254 3255 <p class="desc" data-column-name="boardContents"> 3256 ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶í¼ë¶í¼ë¶í¼ë¶ 3257 </p> 3258 3259 <div class="command" style="margin-top: 0px;"> 3260 <ul> 3261 <li> 3262 <span href="javascript:void(0)" class="ico like min" data-data_type="text" data-data_key="likeCnt" data-column-name="likeCnt"><span class="value">0</span></span> 3263 </li> 3264 <li> 3265 <span href="javascript:void(0)" class="ico cmt min" data-data_type="text" data-data_key="commentCnt" data-column-name="commentCnt"><span class="value">0</span></span> 3266 </li> 3267 <li> 3268 <span href="javascript:void(0)" class="ico view min" data-data_type="text" data-data_key="viewCnt" data-column-name="viewCnt" style="display: none;"><span class="value">0</span></span> 3269 </li> 3270 </dl> 3271 </div> 3272 </a> 3273 <span href="javascript:void(0)" data-column-name="wrapperLinkSecond" class="comment-crud" style="display: none;">ì문보기</span> 3274 </li> 3275 </ul> 3276 3277 <!-- <ul class="lst-default lst-review" data-ele-name="templateWrapperMyBoard" style="display: none"> 3278 <li> 3279 <div class="hd-meta d-flex justify-content-between align-items-center"> 3280 <dl class="meta"> 3281 <dt class="date" data-data_type="datetime" data-data_key="regDate" >loading...</dt> 3282 </dl> 3283 <div class="side"> 3284 <a th:href="|javascript:void(0)|" class="btn btn-sm btn-outline-muted rounded" data-column-name="deleteBt">ìì </a> 3285 </div> 3286 </div> 3287 <a th:href="|javascript:void(0)|" data-column-name="wrapperLink"> 3288 <p class="board-desc" data-column-name="boardContents"> 3289 loading... 3290 </p> 3291 </a> 3292 <ul class="lst-tmb overflow-auto type-board" data-column-name="templateImg"> 3293 </ul> 3294 3295 <ul data-ele-name="templateWrapperBoardImg" style="display: none"> 3296 <li> 3297 <a th:href="|javascript:void(0)|" data-ele-name="selectLink"><img class="img-fluid" th:src="@{/img/profile.png}" alt="" data-column-name="image"></a> 3298 </li> 3299 </ul> 3300 <div class="side-ctl-btn" data-ele-name="itemFooterWrapper" > 3301 <dl> 3302 <dt><img src="/img/ico-likes.png" alt="#{common.msg.like}"></dt> 3303 <dd data-data_type="text" data-data_key="likeCnt" data-column-name="likeCnt">0</dd> 3304 </dl> 3305 <dl> 3306 <dt><img src="/img/ico-comments.png" alt="#{common.msg.comment}"></dt> 3307 <dd data-data_type="text" data-data_key="commentCnt" data-column-name="
3307commentCnt">0</dd> 3308 </dl> 3309 </div> 3310 <a th:href="|javascript:void(0)|" data-column-name="wrapperLinkSecond" class="comment-crud">ì문보기</a> 3311 </li> 3312 </ul> --> 3313 3314 <!-- ë§ì´íì´ì§ ê²ìí 리ì¤í¸ / --> 3315 3316 <!-- / ë§ì´íì´ì§ ëê¸ ë¦¬ì¤í¸ --> 3317 <ul data-ele-name="templateWrapperMyComment" style="display: none;"> 3318 <li data-column-name="templatcomment"> 3319 <a href="javascript:void(0)" class="item" data-column-name="wrapperLink"> 3320 <div class="item" data-column-name="templateCommentItem"> 3321 <div class="comment-head grid-div"> 3322 <div class="left"> 3323 <div class="profile"> 3324 <div class="date" data-data_type="datetime" data-data_key="regDate">2024.11.19</div> 3325 </div> 3326 </div> 3327 <div class="right"> 3328 <span href="javascript:void(0)" class="" style="display: none;" data-column-name="deleteBt">ìì </span> 3329 </div> 3330 </div> 3331 <div class="comment-body"> 3332 <p class="desc" data-column-name="boardContents"> 3333 ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¶ê´ì± ê´ì±í¼ë¶ì¼êµ´ ì ì²´ 3334 ì 모, í¬ë¼ì´ì¤ ì§ì ê´ë¦¬, íì¤í í¤ í¼ë¶í¼ë¶í¼ë¶í¼ë¶ 3335 </p> 3336 </div> 3337 </div> 3338 </a> 3339 <span href="javascript:void(0)" data-column-name="wrapperLinkSecond" class="comment-crud" style="display: none;">ì문보기</span> 3340 </li> 3341 </ul> 3342 3343 <!-- <ul class="lst-default lst-review" data-ele-name="templateWrapperMyComment" style="display: none"> 3344 <li> 3345 <div class="hd-meta d-flex justify-content-between align-items-center"> 3346 <dl class="meta"> 3347 <dt class="date" data-data_type="datetime" data-data_key="regDate" >loading...</dt> 3348 </dl> 3349 <div class="side"> 3350 <a th:href="|javascript:void(0)|" class="btn btn-sm btn-outline-muted rounded" data-column-name="deleteBt">ìì </a> 3351 </div> 3352 </div> 3353 <div class="comment-item"> 3354 3355 <div class="comment-body"> 3356 <p class="board-desc" data-column-name="boardContents"> 3357 loading... 3358 </p> 3359 <a th:href="|javascript:void(0)|" data-column-name="wrapperLink" class="comment-crud">ì문보기</a> 3360 </div> 3361 </div> 3362 </li> 3363 </ul> --> 3364 3365 <!-- ë§ì´íì´ì§ ëê¸ ë¦¬ì¤í¸ /--> 3366 3367 3368 3369 <ul class="lst-site" data-ele-name="templateWrapperEllipsis" style="display: none"> 3370 <!-- <li data-ele-name="ellipsis"><i class="icon-dots"></i></li> --> 3371 <li data-ele-name="ellipsis" class="more"><i class="icon-dots"></i></li> 3372 <!-- ìµë 5ê° ì´í dots icon íì --> 3373 </ul> 3374 </div> 3375
3375<script> 3376 /*<![CDATA[*/ 3377 var listItems = (function() {var ListItems = function() { 3378 var _this = this; 3379 _this.ns = 'listItems'; 3380 3381 var _p = sel('[data-ele-name="templateWrapperListItems"]'); 3382 var _ele = { 3383 p: _p, 3384 templateWrapperEllipsis: sel('[data-ele-name="templateWrapperEllipsis"]', _p) 3385 }; 3386 var DELIM_ARR = ','; 3387 3388 var SET = { 3389 //ELLIPSIS_SITE_CNT: 5 3390 ELLIPSIS_SITE_CNT: 3 //ìì ë¶ì ë ¸ì¶ 5->3 3391 }; 3392 var _isEllipsis = function(idx) { 3393 return SET.ELLIPSIS_SITE_CNT < idx + 2; 3394 }; 3395 var _getFilteredSiteList = function (txList, txParts) { 3396 return txParts.reduce(function(res, item){ 3397 var temp; 3398 var _item; 3399 for (var i = 0, len = txList.length; i < len; i++) { 3400 _item = txList[i]; 3401 if (_item.txPartCd == item.txPartCd) { 3402 temp = item; 3403 break; 3404 } 3405 } 3406 if (temp) { 3407 res.push(temp); 3408 } 3409 return res; 3410 }, []); 3411 }; 3412 var _getNewVerFilteredSiteList = function (txList, txParts) { 3413 return txParts.reduce(function(res, item){ 3414 var temp; 3415 var _item; 3416 for (var i = 0, len = txList.length; i < len; i++) { 3417 _item = txList[i]; 3418 if (_item == item.txPartCd) { 3419 temp = item; 3420 break; 3421 } 3422 } 3423 if (temp) { 3424 res.push(temp); 3425 } 3426 return res; 3427 }, []); 3428 }; 3429 var _renderTxPartList = function(dataList, dataListEle) { 3430 var addedEllipsis = false; 3431 dataListEle.innerHTML = ''; 3432 for (var i = 0, len = dataList.length; i < len; i++) { 3433 var item = dataList[i]; 3434 var _li = document.createElement('li'); 3435 _li.innerHTML = item.partNm; 3436 _li.dataset.txPartCd = item.txPartCd; 3437 //_li.classList.add('active'); 3438 dataListEle.appendChild(_li); 3439 3440 if (_isEllipsis(i)) { 3441 if (!addedEllipsis) { 3442 if (i == len - 1) { 3443 continue; 3444 } 3445 var ellipsisEle = cloneEle(_ele.templateWrapperEllipsis, 0); 3446 ellipsisEle.onclick = function (event) { 3447 event.preventDefault(); 3448 hideEles(ellipsisEle); 3449 showEles(selAll('[data-ellipsis="Y"]', dataListEle)); 3450 }; 3451 dataListEle.appendChild(ellipsisEle); 3452 addedEllipsis = true; 3453 } else { 3454 _li.dataset.ellipsis = "Y"; 3455 _li.style.display = 'none'; 3456 } 3457 // break; 3458 } 3459 } 3460 }; 3461 var _getsAreaInfo = DomUtil.LazyExecuteFactory(bts.getsTagAreaInfo, bts.readyTagAreaInfos); 3462 3463 _this.renderRowEmpty = function(_data, dataListEle) { 3464 var _el = cloneEle(sel('[data-ele-name=templateWrapperEmptyItem]', _ele.p)); 3465 sel('[data-column-name="title"]', _el).innerHTML = (_data.data && _data.data.name) ? _data.data.name : bts.text.noData; 3466 3467 dataListEle.append(_el); 3468 }; 3469 _this.renderTwoRowEvaluation = function(_data, dataListEle, callbackItemClick, callback) { 3470 // console.log(">>>_data = ", _data); 3471 var evalContent = ""; 3472 var _elU = cloneEleP(sel('[data-ele-name="templateWrapperTwoEvaluationUser"]', _ele.p)); 3473 var _elP = cloneEleP(sel('[data-ele-name="templateWrapperTwoEvaluationProv"]', _ele.p)); 3474 3475 sel('[data-column-name="name"]', _elU).innerHTML = _data.nickName; 3476 sel('[data-column-name="point"]', _elU).innerHTML = parseFloat(_data.evaluationLevel).toFixed(1); 3477 //sel('[data-column-name="date"]', _elU).innerHTML = new Date(_data.regDate).format("yy.MM.dd"); 3478 sel('[data-column-name="date"]', _elU).innerHTML = _data.regDate; 3479 3480 //ë보기 ìì 3481 if(_data.content.length > 50){ 3482 $(sel('[data-column-name="textover-more"]', _elU)).show(); 3483 }else{ 3484 $(sel('[data-column-name="textover-more"]', _elU)).hide();
3485 $(sel('[data-column-name="content"]', _elU)).attr('class', ''); 3486 }; 3487 3488 // sel('[data-column-name="comment-body-inner"]', _elU).onclick = function(event) { 3489 // if($(sel('[data-column-name="content"]', _elU)).hasClass('textover') == true){ 3490 // $(sel('[data-column-name="content"]', _elU)).attr('class', ''); 3491 // $(sel('[data-column-name="textover-more"]', _elU)).attr('class', 'textover-more fold'); 3492 // $(sel('[data-column-name="textover-more"]', _elU)).html(/*"Fold"*/); 3493 // }else{ 3494 // $(sel('[data-column-name="content"]', _elU)).attr('class', 'textover'); 3495 // $(sel('[data-column-name="textover-more"]', _elU)).attr('class', 'textover-more'); 3496 // $(sel('[data-column-name="textover-more"]', _elU)).html('...'+/*"More"*/); 3497 // } 3498 // }; 3499 //ë보기 ë 3500 3501 if(_data.evaluationType == "D"){ 3502 evalContent = "[" + _data.name + " ìì¥] " + _data.content 3503 }else{ 3504 evalContent = _data.content; 3505 } 3506 sel('[data-column-name="content"]', _elU).innerHTML = evalContent; 3507 //sel('[data-column-name="content"]', _elU).innerHTML = _data.content; 3508 3509 if (_data.fileKey && _data.fileNm) { 3510 var _imageEle = sel('[data-column-name="profileImg"]', _elU); 3511 var _url = bts.url.getCdnImg(_data.fileKey, _data.fileNm); 3512 3513 // if (_this.isLazyTarget(dataListEle)) { 3514 // _imageEle.dataset.backgroundImage = 'url(' + _url + ')'; 3515 // _imageEle.classList.add('lazy'); 3516 // } else { 3517 // _imageEle.style.backgroundImage = 'url(' + _url + ')'; 3518 // } 3519 _imageEle.style.backgroundImage = 'url(' + _url + ')'; 3520 }; 3521 3522 // for(i=1; i<= _data.evaluationLevel; i++){ 3523 // sel('[data-column-name="star'+i+'"]', _elU).classList.add('active'); 3524 // } 3525 3526 //isFunction(callback) && callback(_elU) && callback(_elP); 3527 dataListEle.appendChild(_elU); 3528 3529 // if (typeof _data.pid != "undefined") { 3530 // sel('[data-column-name="date"]', _elP).innerHTML = _data.pregDate; 3531 // sel('[data-column-name="content"]', _elP).innerHTML = _data.pcontent; 3532 // dataListEle.appendChild(_elP); 3533 // } 3534 }; 3535 _this.renderTwoRowEvaluationEvent = function(_data, dataListEle, callbackItemClick, callback) { 3536 //console.log(">>>_data = ", _data); 3537 var _elU = cloneEleP(sel('[data-ele-name="templateWrapperTwoEvaluationUserEvent"]', _ele.p)); 3538 var _elP = cloneEleP(sel('[data-ele-name="templateWrapperTwoEvaluationProvEvent"]', _ele.p)); 3539 3540 sel('[data-column-name="name"]', _elU).innerHTML = _data.nickName; 3541 sel('[data-column-name="point"]', _elU).innerHTML = parseFloat(_data.evaluationLevel).toFixed(1); 3542 //sel('[data-column-name="date"]', _elU).innerHTML = new Date(_data.regDate).format("yy.MM.dd"); 3543 //sel('[data-column-name="date"]', _elU).innerHTML = new Date(_data.regDate).format("yyyy.MM.dd"); 3544 sel('[data-column-name="date"]', _elU).innerHTML = _data.regDate; 3545 sel('[data-column-name="content"]', _elU).innerHTML = _data.content; 3546 3547 //ë보기 ìì 3548 if(_data.content.length > 50){ 3549 $(sel('[data-column-name="textover-more"]', _elU)).show(); 3550 }else{ 3551 $(sel('[data-column-name="textover-more"]', _elU)).hide(); 3552 $(sel('[data-column-name="content"]', _elU)).attr('class', ''); 3553 }; 3554 3555 // sel('[data-column-name="comment-body-inner"]', _elU).onclick = function(event) { 3556 // if($(sel('[data-column-name="content"]', _elU)).hasClass('textover') == true){ 3557 // $(sel('[data-column-name="content"]', _elU)).attr('class', ''); 3558 // $(sel('[data-column-name="textover-more"]', _elU)).attr('class', 'textover-more fold'); 3559 // $(sel('[data-column-name="textover-more"]', _elU)).html(/*"Fold"*/); 3560 // }else{
3561 // $(sel('[data-column-name="content"]', _elU)).attr('class', 'textover'); 3562 // $(sel('[data-column-name="textover-more"]', _elU)).attr('class', 'textover-more'); 3563 // $(sel('[data-column-name="textover-more"]', _elU)).html('...'+/*"More"*/); 3564 // } 3565 // }; 3566 //ë보기 ë 3567 3568 if (_data.fileKey && _data.fileNm) { 3569 var _imageEle = sel('[data-column-name="profileImg"]', _elU); 3570 var _url = bts.url.getCdnImg(_data.fileKey, _data.fileNm); 3571 3572 if (_this.isLazyTarget(dataListEle)) { 3573 _imageEle.dataset.backgroundImage = 'url(' + _url + ')'; 3574 _imageEle.classList.add('lazy'); 3575 } else { 3576 _imageEle.style.backgroundImage = 'url(' + _url + ')'; 3577 } 3578 }; 3579 3580 // for(i=1; i<= _data.evaluationLevel; i++){ 3581 // sel('[data-column-name="star'+i+'"]', _elU).classList.add('active'); 3582 // } 3583 3584 //isFunction(callback) && callback(_elU) && callback(_elP); 3585 dataListEle.appendChild(_elU); 3586 3587 if (typeof _data.pid != "undefined") { 3588 sel('[data-column-name="date"]', _elP).innerHTML = _data.pregDate; 3589 sel('[data-column-name="content"]', _elP).innerHTML = _data.pcontent; 3590 dataListEle.appendChild(_elP); 3591 } 3592 }; 3593 _this.renderRowEvaluation = function(_data, dataListEle, callbackItemClick, callback) { 3594 var evalContent = ""; 3595 var _el = cloneEleP(sel('[data-ele-name="templateWrapperEvaluationLiUser"]', _ele.p)); 3596 var _elP = cloneEleP(sel('[data-ele-name="templateWrapperEvaluationLiProv"]', _ele.p)); 3597 sel('[data-column-name="name"]', _el).innerHTML = _data.nickName; 3598 3599 // for(i=1; i<= _data.evaluationLevel; i++){ 3600 // sel('[data-column-name="star'+i+'"]', _el).classList.add('active'); 3601 // } 3602 sel('[data-column-name="point"]', _el).innerHTML = parseFloat(_data.evaluationLevel).toFixed(1); 3603 //sel('[data-column-name="date"]', _el).innerHTML = new Date(_data.regDate).format("yy.MM.dd"); 3604 //sel('[data-column-name="date"]', _el).innerHTML = new Date(_data.regDate).format("yyyy.MM.dd"); 3605 sel('[data-column-name="date"]', _el).innerHTML = _data.regDate; 3606 if(_data.evaluationType == "D"){ 3607 evalContent = "[" + _data.name + " ìì¥] " + _data.content 3608 }else{ 3609 evalContent = _data.content; 3610 } 3611 //sel('[data-column-name="content"]', _el).innerHTML = _data.content; 3612 sel('[data-column-name="content"]', _el).innerHTML = evalContent; 3613 3614 if (_data.fileKey && _data.fileNm) { 3615 var _imageEle = sel('[data-column-name="profileImg"]', _el); 3616 var _url = bts.url.getCdnImg(_data.fileKey, _data.fileNm); 3617 3618 if (_this.isLazyTarget(dataListEle)) { 3619 //_imageEle.dataset.backgroundImage = 'url(' + _url + ')'; 3620 _imageEle.style.backgroundImage = 'url(' + _url + ')'; 3621 _imageEle.classList.add('lazy'); 3622 } else { 3623 _imageEle.style.backgroundImage = 'url(' + _url + ')'; 3624 } 3625 }; 3626 3627 // var _reportModal = sel('[data-ele-name="reportModal"]', _el); 3628 // _reportModal.onclick = function (event) { 3629 // event.preventDefault(); 3630 // if(!bts.requiredLoginModal()) { 3631 // return false; 3632 // } 3633 // reportModal.init(_data.id); 3634 // } 3635 // if(__userNo == _data.userNo){ 3636 // hideEles(_reportModal); 3637 // } 3638 console.log(_el); 3639 dataListEle.appendChild(_el); 3640 3641 if (typeof _data.pid != "undefined") { 3642 sel('[data-column-name="provDate"]', _elP).innerHTML = _data.pregDate; 3643 sel('[data-column-name="provContent"]', _elP).innerHTML = _data.pcontent; 3644 showEles(sel('[data-ele-name="templateWrapperEvaluationProv"]', _elP)); 3645 dataListEle.appendChild(_elP); 3646 } 3647 }; 3648 3649 _this.renderRowStore = function(_data, dataListEle, callbackItemClick, callback) { 3650 var _el = cloneEle(sel('[data-ele-name="templateWrapperSkinCare"]', _ele.p)); 3651 var _wrapperLink1Ele = sel('[data-column-name="wrapperLink1"]' , _el); 3652 var _wrapperLink2Ele = sel('[data-column-name="wrapperLink2"]' , _el); 3653 var fileNmArry = _data.pfileNm.split(','); 3654 var discountedPercentage = Math.floor((_data.price - _data.discountPrice)/_data.price * 100); 3655 3656 sel('[data-column-name="brandName"]', _el).innerHTML = _data.brandName; 3657 sel('[data-column-name="productName"]', _el).innerHTML = _data.productName; 3658 sel('[data-column-name="price"]', _el).innerHTML = numberToLocale(_data.price); //bts.i18n.decorateCurrencyUnitVer2(StringUtil.numberWithCommas(_data.price),bts.text.unit_currency, locale); 3659 sel('[data-column-name="discountedPrice"]', _el).innerHTML = numberToLocale(_data.discountPrice); //bts.i18n.decorateCurrencyUnitVer2(StringUtil.numberWithCommas(_data.discountPrice), bts.text.unit_currency, locale); 3660 sel('[data-column-name="discountedPercentage"]', _el).innerHTML = discountedPercentage + "%"; 3661 3662 if (0.01 < discountedPercentage) { 3663 showEles(sel('[data-column-name="discountedPercentage"]', _el)); 3664 showEles(sel('[data-column-name="price"]', _el)); 3665 } else { 3666 hideEles(sel('[data-column-name="discountedPercentage"]', _el)); 3667 hideEles(sel('[data-column-name="price"]', _el)); 3668 } 3669 3670 _wrapperLink1Ele.onclick = function(event) { 3671 //console.log(_data.mno); 3672 if(!bts.requiredLoginModal()) { 3673 return false;
3674 } 3675 if(_data.optionYn == 'N'){ 3676 scriptAddToCart(_data.mno); 3677 }else{ 3678 bts.toast("ìµì ì´ ìë ìíì ëë¤. ìì¸ íì´ì§ë¥¼ íì¸íì¸ì."); 3679 } 3680 }; 3681 3682 _wrapperLink2Ele.href = bts.seo.parseDetailPath(bts.path.storeDetail, _data.mno, _data.productName); 3683 3684 if (_data.pfileKey && fileNmArry[0]) { 3685 var _imageEle = sel('[data-column-name="image"]', _el); 3686 var _url = bts.url.getCdnImg(_data.pfileKey, fileNmArry[0]); 3687 // ì´ë¯¸ì§ ì§ì° ë¡ë© 3688 if (_this.isLazyTarget(dataListEle)) { 3689 _imageEle.dataset.backgroundImage = 'url(' + _url + ')'; 3690 _imageEle.classList.add('lazy'); 3691 } else { 3692 _imageEle.style.backgroundImage = 'url(' + _url + ')'; 3693 } 3694 } 3695 3696 if(_data.evalInfo){ 3697 var evalArr = _data.evalInfo.split(","); 3698 sel('[data-column-name="evalPoint"]', _el).innerHTML = parseFloat(evalArr[0]).toFixed(1); 3699 3700 var _startWidth = (parseFloat(evalArr[0]) / 5) * 100; 3701 sel('[data-column-name="starWidthMain"]', _el).style.width=_startWidth+"%"; 3702 //sel('[data-column-name="evalCnt"]', _el).innerHTML = evalArr[1]; 3703 }else{ 3704 sel('[data-column-name="evalPoint"]', _el).innerHTML = "0.0"; 3705 //sel('[data-column-name="evalCnt"]', _el).innerHTML = 0; 3706 } 3707 3708 //console.log(_data); 3709 3710 dataListEle.appendChild(_el); 3711 }; 3712 3713 _this.renderRowEvent = function(_data, dataListEle, callbackItemClick, callback) { 3714 // console.log(">>>_data = ", _data); 3715 // console.log(">>>dataListEle = ", dataListEle); 3716 var _el = ""; 3717 if(_data.title == "ë¨ì ë매êµì 69" || 3718 _data.title == "#idë¨ìì½ì±íð149ë§" || 3719 _data.title == "ìì´ì° ë¨ìë ì¢ í©ì 물ì¸í¸" || 3720 _data.title == "íë¦¬ë¯¸ì´ ë¨ìë매êµì "){ 3721 // _el = cloneEle(sel('[data-ele-name="templateWrapperEvent2"]', _ele.p)); 3722 _el = cloneEle(sel('[data-ele-name="templateWrapperEvent"]', _ele.p)); 3723 }else{ 3724 _el = cloneEle(sel('[data-ele-name="templateWrapperEvent"]', _ele.p)); 3725 } 3726 var _wrapperLinkEle = sel('[data-column-name="wrapperLink"]' , _el); 3727 var _name = _data.name || ''; 3728 var _title = _data.title || ''; 3729 if (_data.fileKey && _data.fileNm) { 3730 var _imageEle = sel('[data-column-name="image"]', _el); 3731 var _imageEle2 = sel('[data-column-name="image2"]', _el); 3732 var _url = bts.url.getCdnImg(_data.fileKey, _data.fileNm); 3733 3734 // ì´ë¯¸ì§ ì§ì° ë¡ë© 3735 // if (_this.isLazyTarget(dataListEle)) { 3736 // _imageEle.dataset.backgroundImage = 'url(' + _url + ')'; 3737 // _imageEle.classList.add('lazy'); 3738 // } else { 3739 // _imageEle.style.backgroundImage = 'url(' + _url + ')'; 3740 // } 3741 _imageEle.src = _url; 3742 _imageEle2.src = _url; 3743 } 3744 sel('[data-column-name="name"]' , _el).innerHTML = _name; 3745 //var _addr = bts.getShortAddr(_data.addr || ''); 3746 var _addr = _data.station; 3747 var _addrEl = sel('[data-column-name="address"]', _el); 3748 _addrEl.innerHTML = _addr; 3749 if (isEn()) { 3750 hideEles(_addrEl); 3751 } else { 3752 showEles(_addrEl); 3753 } 3754 3755 if(_data.evalInfo){ 3756 var evalArr = _data.evalInfo.split(","); 3757 sel('[data-column-name="evalPoint"]', _el).innerHTML = parseFloat(evalArr[0]).toFixed(1); 3758 3759 // var _startWidth = (parseFloat(evalArr[0]) / 5) * 100; 3760 // sel('[data-column-name="starWidthMain"]', _el).style.width=_startWidth+"%"; 3761 }else{ 3762 sel('[data-column-name="evalPoint"]', _el).innerHTML = "0.0"; 3763 } 3764 sel('[data-column-name="title"]', _el).innerHTML = _title; 3765 sel('[data-column-name="subTitle"]', _el).innerHTML = _data.stitle || ''; 3766 sel('[data-column-name="price"]', _el).innerHTML = numberToLocale(_data.price) || ''; 3767 var discountedPercentage = Math.floor((_data.price - _data.dprice)/_data.price * 100); 3768 var _discountedPercentageEl = sel('[data-column-name="discountedPercentage"]', _el); 3769 //_discountedPercentageEl.innerHTML = discountedPercentage ? discountedPercentage + "%" : ''; 3770 /* if (0.01 < discountedPercentage) { 3771 showEles(_discountedPercentageEl); 3772 } else { 3773 hideEles(_discountedPercentageEl); 3774 } */ 3775 _discountedPercentageEl.innerHTML = discountedPercentage + "%"; 3776 if(discountedPercentage == 0){ 3777 hideEles(_discountedPercentageEl); 3778 hideEles(sel('[data-column-name="price"]', _el)); 3779 // sel('[data-column-name="discountedPercentageStrong"]', _el).remove(); 3780 }else{ 3781 showEles(_discountedPercentageEl); 3782 } 3783 sel('[data-column-name="discountedPrice"]', _el).innerHTML = numberToLocale(_data.dprice); 3784 3785 if(_data.eventType == "M"){ 3786 hideEles(sel('[data-column-name="discountedPrice"]', _el)); 3787 } 3788 3789 _wrapperLinkEle.dataset.bedtId = _data.bedtId; 3790 _wrapperLinkEle.dataset.title = _title; 3791 _wrapperLinkEle.href = bts.seo.parseDetailPath(bts.path.eventDetail, _data.bedtId, _title); 3792 _wrapperLinkEle.onclick = function(event) { 3793 console.log('row click'); 3794 var __this = this; 3795 callbackItemClick(event, __this); 3796 }; 3797 isFunction(callback) && callback(_el); 3798 dataListEle.appendChild(_el); 3799 }; 3800 3801 _this.renderRowEventModel = function(_data, dataListEle, callbackItemClick, callback) { 3802 var _el = cloneEle(sel('[data-ele-name="templateWrapperEventModel"]', _ele.p)); 3803 var _wrapperLinkEle = sel('[data-column-name="wrapperLink"]' , _el); 3804 var _name = _data.name || ''; 3805 var _title = _data.title || ''; 3806 if (_data.fileKey && _data.fileNm) { 3807 var _imageEle = sel('[data-column-name="image"]', _el); 3808 var _url = bts.url.getCdnImg(_data.fileKey, _data.fileNm); 3809 3810 // ì´ë¯¸ì§ ì§ì° ë¡ë© 3811 // if (_this.isLazyTarget(dataListEle)) { 3812 // _imageEle.dataset.backgroundImage = 'url(' + _url + ')'; 3813 // _imageEle.classList.add('lazy'); 3814 // } else { 3815 // _imageEle.style.backgroundImage = 'url(' + _url + ')'; 3816 // } 3817 _imageEle.src = _url; 3818 } 3819 3820 try{ 3821 if(_data.title.indexOf("ë¨ì ì½ì±í 리ì¼ëª¨ë¸ëª¨ì§") >= 0 ){ 3822 _el.classList.add('hot-event'); 3823 }; 3824 }catch(e){ 3825 }; 3826 3827 sel('[data-column-name="name"]' , _el).innerHTML = _name; 3828 //var _addr = bts.getShortAddr(_data.addr || ''); 3829 var _addr = _data.station; 3830 var _addrEl = sel('[data-column-name="address"]', _el); 3831 _addrEl.innerHTML = _addr; 3832 if (isEn()) { 3833 hideEles(_addrEl); 3834 } else { 3835 showEles(_addrEl); 3836 } 3837 3838 if(_data.evalInfo){ 3839 var evalArr = _data.evalInfo.split(","); 3840 sel('[data-column-name="evalPoint"]', _el).innerHTML = parseFloat(evalArr[0]).toFixed(1); 3841 3842 var _startWidth = (parseFloat(evalArr[0]) / 5) * 100; 3843 // sel('[data-column-name="starWidthMain"]', _el).style.width=_startWidth+"%"; 3844 }else{ 3845 sel('[data-column-name="evalPoint"]', _el).innerHTML = "0.0"; 3846 } 3847 sel('[data-column-name="title"]', _el).innerHTML = _title; 3848 sel('[data-column-name="subTitle"]', _el).innerHTML = _data.stitle || ''; 3849 _wrapperLinkEle.dataset.bedtId = _data.bedtId; 3850 _wrapperLinkEle.dataset.title = _title; 3851 _wrapperLinkEle.href = bts.seo.parseDetailPath(bts.path.eventDetail, _data.bedtId, _title); 3852 _wrapperLinkEle.onclick = function(event) { 3853 console.log('row click'); 3854 var __this = this; 3855 callbackItemClick(event, __this); 3856 }; 3857 isFunction(callback) && callback(_el); 3858 dataListEle.appendChild(_el); 3859 }; 3860 3861 _this.renderRowTreatment = function(_data, dataListEle, callbackItemClick) { 3862 3863 // shield 3864 //if (_data.data == null || $rsea.isEmpty(_data.data.intro)) { 3865 //} 3866 if (_data.data == null) { 3867 3868 bts.isDebug() && console.log(_this.ns + '.renderRowTreatment :: Skip this data. Cause, no data. lang:', locale, 'no: ', _data.no); 3869 _this.renderRowEmpty(_data, dataListEle); 3870 return false;
3871 } 3872 3873 // render row [s] 3874 var _el = cloneEle(sel('[data-ele-name="templateWrapperTreatment"]' , _ele.p), 0); 3875 var _priceEle = sel('[data-column-name="price"]' , _el); 3876 var _wrapperLinkEle = sel('[data-column-name="wrapperLink"]' , _el); 3877 3878 var _surgicalTypeNm = (_data.surgicalType == bts.consts.surgicalType.y ? bts.text.word_surgicalTypeY : bts.text.word_surgicalTypeN); 3879 3880 var _priceStr = ''; 3881 if ((_data.data.costMin == null || _data.data.costMin == 0) && (_data.data.costMax == null || _data.data.costMax == 0)) { 3882 3883 hideEles(_priceEle); 3884 } else { 3885 3886 showEles(_priceEle); 3887 _priceStr = bts.i18n.decorateMultipleCurrencyUnitValue(StringUtil.numberWithCommas(_data.data.costMin), StringUtil.numberWithCommas(_data.data.costMax), bts.text.unit_currency, locale); 3888 } 3889 3890 sel('[data-column-name="title"]' , _el).innerHTML = _data.data.name || ''; 3891 _priceEle .innerHTML = _priceStr; 3892 sel('[data-column-name="surgicalType"]' , _el).innerHTML = _surgicalTypeNm; 3893 // sel('[data-column-name="reviewCnt"]' , _el).innerHTML = _data.reviewCnt; 3894 // sel('[data-column-name="satisfaction"]' , _el).innerHTML = _data. 3895 sel('[data-column-name="likeCnt"]' , _el).innerHTML = `<span class="value">${_data.likeCnt}</span>`; 3896 _wrapperLinkEle.dataset.no = _data.no; 3897 _wrapperLinkEle.dataset.name = _data.data.name; 3898 _wrapperLinkEle.href = bts.seo.parseDetailPath(bts.path.treatmentDetail, _data.no, _data.data.name); 3899 _wrapperLinkEle.onclick = function(event) { 3900 console.log('row click'); 3901 var __this = this; 3902 callbackItemClick(event, __this); 3903 }; 3904 3905 dataListEle.appendChild(_el); 3906 // render row [e] 3907 }; 3908 _this.renderRowTreatmentMain = function(_data, dataListEle, callbackItemClick) { 3909 if (_data.id == null) { 3910 3911 bts.isDebug() && console.log(_this.ns + '.renderRowTreatment :: Skip this data. Cause, no data. lang:', locale, 'no: ', _data.no); 3912 _this.renderRowEmpty(_data, dataListEle); 3913 return false; 3914 } 3915 3916 // render row [s] 3917 var _el = cloneEle(sel('[data-ele-name="templateWrapperTreatmentMain"]' , _ele.p), 0); 3918 3919 var _wrapperLinkEle = sel('[data-column-name="wrapperLink"]' , _el); 3920 if (_data.fileNm && _data.fileKey) { 3921 var _imageEle = sel('[data-column-name="image"]', _el); 3922 var _url = bts.url.getCdnImg(_data.fileKey, _data.fileNm); 3923 // ì´ë¯¸ì§ ì§ì° ë¡ë© 3924 if (_this.isLazyTarget(dataListEle)) { 3925 _imageEle.src = _url; 3926 _imageEle.classList.add('lazy'); 3927 } else { 3928 _imageEle.src = _url; 3929 } 3930 } 3931 //sel('[data-column-name="image"]' , _el).innerHTML = bts.url.getCdnImg(_data.fileKey, _data.fileNm); 3932 _wrapperLinkEle.dataset.id = _data.id; 3933 /* _wrapperLinkEle.href = bts.seo.parseDetailPath(bts.path.treatmentMainDetail, _data.id, ''); 3934 _wrapperLinkEle.onclick = function(event) { 3935 console.log('row click'); 3936 var __this = this; 3937 callbackItemClick(event, __this); 3938 }; */ 3939 3940 _wrapperLinkEle.href = "javascript:void(0)"; 3941 _wrapperLinkEle.onclick = function(event) { 3942 event.preventDefault(); 3943 bts.setListData(bts.dataKeys.selTxParts, [_data.txPartCd]); 3944 location.href = bts.path.treatment; 3945 }; 3946 3947 dataListEle.appendChild(_el); 3948 // render row [e] 3949 }; 3950 _this.renderAddRank = function(_data, _el) { 3951 var _changeOrder = Number(_data.changeOrder); 3952 var _rankChangeClassNm; 3953 if (_changeOrder == 0) { 3954 _rankChangeClassNm = ''; 3955 } else if (0 < _changeOrder) { 3956 _rankChangeClassNm = 'up'; 3957 } else if (0 > _changeOrder) { 3958 _rankChangeClassNm = 'down'; 3959 } else { 3960 _rankChangeClassNm = ''; 3961 } 3962 var wrapperRankEle = sel('[data-ele-name="rank"]', _el); 3963 sel('[data-column-name="rank"]', wrapperRankEle).innerHTML = _data.rankOrder; 3964 addClass(sel('[data-column-name="rankChangeWrapper"]', wrapperRankEle), _rankChangeClassNm); 3965 var _rankChangeEl = sel('[data-column-name="rankChange"]', wrapperRankEle); 3966 if (_changeOrder == 0) { 3967 _rankChangeEl.innerHTML = ''; 3968 hideEles(_rankChangeEl); 3969 } else { 3970 _rankChangeEl.innerHTML = _changeOrder; 3971 showEles(_rankChangeEl); 3972 } 3973 showEles(wrapperRankEle); 3974 }; 3975 3976 _this.renderRowDoctor2 = function(_data, dataListEle, callbackItemClick) { 3977 //console.log(">>>_data = ", _data); 3978 // shield 3979 if (_data.data == null) { 3980 3981 bts.isDebug() && console.log(_this.ns + '.renderRowDoctor :: Skip this data. Cause, no data. lang:', locale, 'no: ', _data.no); 3982 _this.renderRowEmpty(_data, dataListEle); 3983 return false;
3984 } 3985 3986 // render row [s] 3987 var _el = cloneEle(sel('[data-ele-name="templateWrapperDoctor2"]' , _ele.p), 0); 3988 var _wrapperLinkEle = sel('[data-column-name="wrapperLink"]' , _el); 3989 var _name = _data.data.name || ''; 3990 // if (_data.rank) { 3991 // _this.renderAddRank(_data.rank, _el); 3992 // _data = _data.data; 3993 // _name = _data.data.name || ''; 3994 // } 3995 3996 if(_data.evalInfo){ 3997 var evalArr = _data.evalInfo.split(","); 3998 sel('[data-column-name="evalPoint"]', _el).innerHTML = parseFloat(evalArr[0]).toFixed(1); 3999 //sel('[data-column-name="evalCnt"]', _el).innerHTML = evalArr[1]; 4000 // var _startWidth = (parseFloat(evalArr[0]) / 5) * 100; 4001 // sel('[data-column-name="starWidth"]', _el).style.width=_startWidth+"%"; 4002 }else{ 4003 sel('[data-column-name="evalPoint"]', _el).innerHTML = "0.0"; 4004 //sel('[data-column-name="evalCnt"]', _el).innerHTML = "0"; 4005 } 4006 4007 if (_data.profile && _data.profile.fileKey && _data.profile.fileNm) { 4008 var _imageEle = sel('[data-column-name="image"]', _el); 4009 var _url = bts.url.getCdnImg(_data.profile.fileKey, _data.profile.fileNm); 4010 4011 _imageEle.style.backgroundImage = 'url(' + _url + ')'; 4012 } 4013 var nameCall = "Dr."; 4014 // switch(locale) { 4015 // case "ko" : sel('[data-column-name="title"]' , _el).innerHTML = _name + " " + nameCall; break; 4016 // case "en" : sel('[data-column-name="title"]' , _el).innerHTML = nameCall + " " + _name; break; 4017 // default : sel('[data-column-name="title"]' , _el).innerHTML = _name; 4018 // } 4019 sel('[data-column-name="title"]' , _el).innerHTML = _name; 4020 // sel('[data-column-name="major"]' , _el).innerHTML = _data.majorName || ''; 4021 /* if(_data.majorName == null){ 4022 hideEles(sel('[data-column-name="br"]' , _el)); 4023 } */ 4024 // sel('[data-column-name="hospitalNm"]' , _el).innerHTML = (_data.prov && _data.prov.data) ? _data.prov.data.name : ''; 4025 // bts.lazy.getsTxPart.run(function(txParts) { 4026 // _renderTxPartList(_getFilteredSiteList(_data.tx, txParts), sel('[data-ele-name="txPart"]', _el)); 4027 // }); 4028// sel('[data-column-name="reviewCnt"]' , _el).innerHTML = _data.reviewCnt; 4029// sel('[data-column-name="satisfaction"]' , _el).innerHTML = _data. 4030// sel('[data-column-name="likeCnt"]' , _el).innerHTML = _data.likeCnt; 4031 _wrapperLinkEle.dataset.no = _data.no; 4032 _wrapperLinkEle.dataset.name = _name; 4033 _wrapperLinkEle.href = bts.seo.parseDetailPath(bts.path.doctorDetail, _data.no, _name); 4034 _wrapperLinkEle.onclick = function(event) { 4035 console.log('row click'); 4036 var __this = this; 4037 callbackItemClick(event, __this); 4038 }; 4039 4040 dataListEle.appendChild(_el); 4041 // render row [e] 4042 }; 4043 4044 _this.renderRowDoctor = function(_data, dataListEle, callbackItemClick) { 4045 // console.log(">>>_data = ", _data); 4046 // shield 4047 if (_data.data == null) { 4048 4049 bts.isDebug() && console.log(_this.ns + '.renderRowDoctor :: Skip this data. Cause, no data. lang:', locale, 'no: ', _data.no); 4050 _this.renderRowEmpty(_data, dataListEle); 4051 return false; 4052 } 4053 4054 // render row [s] 4055 var _el = cloneEle(sel('[data-ele-name="templateWrapperDoctor"]' , _ele.p), 0); 4056 var _wrapperLinkEle = sel('[data-column-name="wrapperLink"]' , _el); 4057 var _name = _data.data.name || ''; 4058 // if (_data.rank) { 4059 // _this.renderAddRank(_data.rank, _el); 4060 // _data = _data.data; 4061 // _name = _data.data.name || ''; 4062 // } 4063 4064 if(_data.evalInfo){ 4065 var evalArr = _data.evalInfo.split(","); 4066 sel('[data-column-name="evalPoint"]', _el).innerHTML = parseFloat(evalArr[0]).toFixed(1); 4067 //sel('[data-column-name="evalCnt"]', _el).innerHTML = evalArr[1]; 4068 // var _startWidth = (parseFloat(evalArr[0]) / 5) * 100; 4069 // sel('[data-column-name="starWidth"]', _el).style.width=_startWidth+"%"; 4070 }else{ 4071 sel('[data-column-name="evalPoint"]', _el).innerHTML = "0.0"; 4072 //sel('[data-column-name="evalCnt"]', _el).innerHTML = "0"; 4073 } 4074 4075 if (_data.profile && _data.profile.fileKey && _data.profile.fileNm) { 4076 4077 var _imageEle = sel('[data-column-name="image"]', _el); 4078 var _imageEle2 = sel('[data-column-name="image2"]', _el); 4079 var _url = bts.url.getCdnImg(_data.profile.fileKey, _data.profile.fileNm); 4080 4081 // ì´ë¯¸ì§ ì§ì° ë¡ë© 4082 // if (_this.isLazyTarget(dataListEle)) { 4083 4084 // _imageEle.dataset.backgroundImage = 'url(' + _url + ')'; 4085 // _imageEle.classList.add('lazy'); 4086 // } else { 4087 4088 // _imageEle.style.backgroundImage = 'url(' + _url + ')'; 4089 // } 4090 // _imageEle.style.backgroundImage = 'url(' + _url + ')'; 4091 _imageEle.src = _url; 4092 _imageEle2.src = _url; 4093 } 4094 var nameCall = "Dr."; 4095 // switch(locale) { 4096 // case "ko" : sel('[data-column-name="title"]' , _el).innerHTML = _name + " " + nameCall; break; 4097 // case "en" : sel('[data-column-name="title"]' , _el).innerHTML = nameCall + " " + _name; break; 4098 // default : sel('[data-column-name="title"]' , _el).innerHTML = _name; 4099 // } 4100 sel('[data-column-name="title"]' , _el).innerHTML = _name; 4101 sel('[data-column-name="major"]' , _el).innerHTML = _data.majorName || ''; 4102 /* if(_data.majorName == null){ 4103 hideEles(sel('[data-column-name="br"]' , _el)); 4104 } */ 4105 sel('[data-column-name="hospitalNm"]' , _el).innerHTML = (_data.prov && _data.prov.data) ? _data.prov.data.name : ''; 4106 bts.lazy.getsTxPart.run(function(txParts) { 4107 _renderTxPartList(_getFilteredSiteList(_data.tx, txParts), sel('[data-ele-name="txPart"]', _el)); 4108 }); 4109// sel('[data-column-name="reviewCnt"]' , _el).innerHTML = _data.reviewCnt; 4110// sel('[data-column-name="satisfaction"]' , _el).innerHTML = _data. 4111// sel('[data-column-name="likeCnt"]' , _el).innerHTML = _data.likeCnt; 4112 _wrapperLinkEle.dataset.no = _data.no; 4113 _wrapperLinkEle.dataset.name = _name; 4114 _wrapperLinkEle.href = bts.seo.parseDetailPath(bts.path.doctorDetail, _data.no, _name); 4115 _wrapperLinkEle.onclick = function(event) { 4116 console.log('row click'); 4117 var __this = this; 4118 callbackItemClick(event, __this); 4119 }; 4120 4121 dataListEle.appendChild(_el); 4122 // render row [e] 4123 }; 4124 _this.isLazyTarget = function(pEle) { 4125 var isLazy = false;
4126 if (typeof paginator == "undefined") { 4127 4128 } else { 4129 if (pEle.children.length < (paginator.getPageSize() / 2 + 1)) { 4130 4131 } else { 4132 4133 isLazy = true; 4134 } 4135 } 4136 return isLazy; 4137 }; 4138 4139 _this.renderCommonRankingSelected = function(_data, dataListEle, callbackItemClick, callback) { 4140 var _el = cloneEle(sel('[data-ele-name="templateCommonRankingSelected"]' , _ele.p), 0); 4141 var _wrapperLinkEle = sel('[data-column-name="rankingSelected"]' , _el); 4142 _wrapperLinkEle.onclick = function(event) { 4143 bts.isDebug() && console.log(_this.ns + '.renderRowCommonRankingSelected :: row click'); 4144 var __this = this; 4145 callbackItemClick(event, __this); 4146 }; 4147 dataListEle.appendChild(_el); 4148 isFunction(callback) && callback(_el); 4149 }; 4150 4151 _this.renderRowHospital = function(_data, dataListEle, callbackItemClick, callback) { 4152 // shield 4153 //if (_data.data == null || $rsea.isEmpty(_data.data.addr)) { 4154 //} 4155 if (_data.data == null) { 4156 4157 bts.isDebug() && console.log(_this.ns + '.renderRowDoctor :: Skip this data. Cause, no data. lang:', locale, 'no: ', _data.no); 4158 _this.renderRowEmpty(_data, dataListEle); 4159 return false; 4160 } 4161 var _addr = bts.getShortAddr(_data.data.addr || ''); 4162 4163 // render row [s] 4164 var _el = cloneEle(sel('[data-ele-name="templateWrapperHospital"]' , _ele.p), 0); 4165 var _wrapperLinkEle = sel('[data-column-name="wrapperLink"]' , _el); 4166 var _name = _data.data.name || ''; 4167 if (_data.rank) { 4168 _this.renderAddRank(_data.rank, _el); 4169 _data = _data.data; 4170 _name = _data.data.name || ''; 4171 } 4172 console.log(_data); 4173 if(_data.evalInfo){ 4174 var evalArr = _data.evalInfo.split(","); 4175 sel('[data-column-name="evalPoint"]', _el).innerHTML = parseFloat(evalArr[0]).toFixed(1); 4176 //sel('[data-column-name="evalCnt"]', _el).innerHTML = evalArr[1]; 4177 var _startWidth = (parseFloat(evalArr[0]) / 5) * 100; 4178 // sel('[data-column-name="starWidth"]', _el).style.width=_startWidth+"%"; 4179 }else{ 4180 sel('[data-column-name="evalPoint"]', _el).innerHTML = "0.0"; 4181 //sel('[data-column-name="evalCnt"]', _el).innerHTML = "0"; 4182 } 4183 4184 if (_data.profile && _data.profile.fileKey && _data.profile.fileNm) { 4185 4186 var _imageEle = sel('[data-column-name="image"]', _el); 4187 var _imageEle2 = sel('[data-column-name="image2"]', _el); 4188 var _url = bts.url.getCdnImg(_data.profile.fileKey, _data.profile.fileNm); 4189 4190 // ì´ë¯¸ì§ ì§ì° ë¡ë© 4191 // if (_this.isLazyTarget(dataListEle)) { 4192 4193 // _imageEle.dataset.backgroundImage = 'url(' + _url + ')'; 4194 // _imageEle.classList.add('lazy'); 4195 // } else { 4196 4197 // _imageEle.style.backgroundImage = 'url(' + _url + ')'; 4198 // } 4199 _imageEle.src = _url; 4200 _imageEle2.src = _url; 4201 } 4202 sel('[data-column-name="title"]' , _el).innerHTML = _name; 4203 //var _locationInfoEle = sel('[data-ele-name="locationInfo"]' , _el); 4204 var _addrEle = sel('[data-column-name="address"]' , _el); 4205 var _areaNmEle = sel('[data-column-name="areaNm"]' , _el); 4206 _addrEle.innerHTML = _addr; 4207 4208 _getsAreaInfo.run(function() { 4209 var _areaNm = bts.getAreaNm(_data.areaCd, ''); 4210 _areaNmEle.innerHTML = _areaNm; 4211 if (isEmpty(_areaNm)) { 4212 hideEles(_areaNmEle); 4213 } else { 4214 showEles(_areaNmEle); 4215 } 4216 /* if (isEmpty(_addr)) { 4217 if (isEmpty(_areaNm)) { 4218 hideEles(_locationInfoEle); 4219 } else { 4220 _locationInfoEle.insertBefore(_areaNmEle, _addrEle); 4221 } 4222 } */ 4223 }); 4224 4225 if (isEmpty(_addr)) { 4226 hideEles(_addrEle); 4227 } else { 4228 showEles(_addrEle); 4229 } 4230 bts.lazy.getsTxPart.run(function(txParts) { 4231 try{ 4232 let arr = _data.tx[0].txPartCd.split(',') 4233 let setArr = new Set(arr); 4234 _renderTxPartList(_getNewVerFilteredSiteList(Array.from(setArr), txParts), sel('[data-ele-name="txPart"]', _el)); 4235 }catch(e){ 4236 hideEles(sel('[data-ele-name="txPart"]', _el)); 4237 } 4238 //_renderTxPartList(_getFilteredSiteList(_data.tx, txParts), sel('[data-ele-name="txPart"]', _el)); 4239 }); 4240// sel('[data-column-name="reviewCnt"]' , _el).innerHTML = _data.reviewCnt; 4241// sel('[data-column-name="satisfaction"]' , _el).innerHTML = _data. 4242// sel('[data-column-name="likeCnt"]' , _el).innerHTML = _data.likeCnt; 4243 _wrapperLinkEle.dataset.no = _data.no; 4244 _wrapperLinkEle.dataset.name = _name; 4245 _wrapperLinkEle.href = bts.seo.parseDetailPath(bts.path.hospitalDetail, _data.no, _name); 4246 _wrapperLinkEle.onclick = function(event) { 4247 console.log('row click'); 4248 var __this = this; 4249 callbackItemClick(event, __this); 4250 }; 4251 4252 dataListEle.appendChild(_el); 4253 isFunction(callback) && callback(_el);
4254 // dataListEle.prepend(_el); 4255 // render row [e] 4256 }; 4257 var setImages = (function () { 4258 var _el = cloneEle(sel('[data-ele-name="templateWrapperReview"]', _ele.p)); 4259 var VIEW_PLUS = '+'; 4260 var VIEW_IMG_LENGTH = 3; 4261 var _templateImg = sel('[data-column-name="templateImg"]', _el); 4262 var _renderedImgCnt = 0; 4263 var _imgListEl; 4264 var setImages = function (imgNamesStr, fileKey, imgBadge) { 4265 if (!(imgNamesStr && isNotEmptyList(imgNamesStr.split(',')))) { 4266 bts.isDebug() && console.log(_this.ns + '.setImages :: skip'); 4267 return false; 4268 } 4269 imgNamesStr.split(',').forEach(function (imgName, idx) { 4270 4271 var _url = bts.url.getCdnImg(fileKey, imgName); 4272 // console.log(">>>_url = ", _url); 4273 4274 var _imgLi = cloneEle(_templateImg); 4275 var _imgBadgeEle = sel('[data-column-name="imgBadge"]', _imgLi); 4276 var _selectLinkEle = sel('[data-ele-name="selectLink"]', _imgLi); 4277 var _imageEle = sel('[data-column-name="image"]', _imgLi); 4278 _imgBadgeEle.innerHTML = imgBadge; 4279 // _selectLinkEle.href = _url; 4280 // _selectLinkEle.dataset.index = _renderedImgCnt; 4281 /*if (_this.isLazyTarget(dataListEle)) { 4282 // ì´ë¯¸ì§ ì§ì° ë¡ë© 4283 _imageEle.dataset.backgroundImage = 'url(' + _url + ')'; 4284 _imageEle.classList.add('lazy'); 4285 } else { 4286 _imageEle.style.backgroundImage = 'url(' + _url + ')'; 4287 }*/ 4288 _imageEle.style.backgroundImage = "url(" + _url + ")"; 4289 _imageEle.alt = imgBadge + (_renderedImgCnt + 1); 4290 4291 // _renderedImgCnt++; 4292 // if (VIEW_IMG_LENGTH + 1 == _renderedImgCnt) { 4293 // var _plusEl = sel('[data-column-name="plus"]', _imgLi); 4294 // _plusEl.innerHTML = VIEW_PLUS + _renderedImgCnt - VIEW_IMG_LENGTH; 4295 // showEles(_plusEl); 4296 // } else if (VIEW_IMG_LENGTH + 1 < _renderedImgCnt) { 4297 // hideEles(_imgLi); 4298 // var _plusEl = sel('[data-column-name="plus"]', _imgLi); 4299 // _plusEl.innerHTML = VIEW_PLUS + _renderedImgCnt - VIEW_IMG_LENGTH; 4300 // } else { 4301 // //console.log(_this.ns + '.setImages :: skip ', _renderedImgCnt); 4302 // } 4303 _imgListEl.appendChild(_imgLi); 4304 }); 4305 }; 4306 var setAllImages = function ( 4307 beforeFileNmArr, 4308 beforeFileKey, 4309 beforeBadge, 4310 afterFileNmArr, 4311 afterFileKey, 4312 afterBadge 4313 ) { 4314 var maxLen = Math.max( 4315 Array.isArray(beforeFileNmArr) ? beforeFileNmArr.length : 0, 4316 Array.isArray(afterFileNmArr) ? afterFileNmArr.length : 0 4317 ); 4318 4319 for (var i = 0; i < maxLen; i++) { 4320 if (beforeFileNmArr && beforeFileNmArr[i]) { 4321 var beforeUrl = bts.url.getCdnImg(beforeFileKey, beforeFileNmArr[i]); 4322 var beforeLi = cloneEle(_templateImg); 4323 var beforeBadgeEl = sel('[data-column-name="imgBadge"]', beforeLi); 4324 var beforeImageEl = sel('[data-column-name="image"]', beforeLi); 4325 beforeBadgeEl.innerHTML = beforeBadge; 4326 beforeImageEl.style.backgroundImage = "url(" + beforeUrl + ")"; 4327 beforeImageEl.alt = beforeBadge + (_renderedImgCnt + 1); 4328 _imgListEl.appendChild(beforeLi); 4329 _renderedImgCnt++; 4330 } 4331 4332 if (afterFileNmArr && afterFileNmArr[i]) { 4333 var afterUrl = bts.url.getCdnImg(afterFileKey, afterFileNmArr[i]); 4334 var afterLi = cloneEle(_templateImg); 4335 var afterBadgeEl = sel('[data-column-name="imgBadge"]', afterLi); 4336 var afterImageEl = sel('[data-column-name="image"]', afterLi); 4337 afterBadgeEl.innerHTML = afterBadge; 4338 afterImageEl.style.backgroundImage = "url(" + afterUrl + ")"; 4339 afterImageEl.alt = afterBadge + (_renderedImgCnt + 1); 4340 _imgListEl.appendChild(afterLi); 4341 _renderedImgCnt++; 4342 } 4343 } 4344 }; 4345 return { 4346 init: function(imgListEl) { 4347 _renderedImgCnt = 0; 4348 _imgListEl = imgListEl; 4349 }, 4350 run: function(fileNmArr, fileKey, badge) { 4351 if (!_imgListEl) { 4352 bts.err(_this.ns + '.setImages :: setImages.run :: You must "setImages.init" first'); 4353 } 4354 setImages(fileNmArr, fileKey, badge); 4355 },
4356 all: function(beforeFileNmArr, beforeFileKey, beforeBadge, afterFileNmArr, afterFileKey, afterBadge) { 4357 if (!_imgListEl) { 4358 bts.err(_this.ns + '.setImages :: setImages.run :: You must "setImages.init" first'); 4359 } 4360 setAllImages(beforeFileNmArr.split(','), beforeFileKey.split(','), beforeBadge.split(','), afterFileNmArr.split(','), afterFileKey.split(','), afterBadge.split(',')); 4361 }, 4362 done: function () { 4363 return 0 < _renderedImgCnt; 4364 } 4365 }; 4366 })(); 4367 var renderTxInfos = function (txPartCds, _txNos, wrapperEl) { 4368 bts.lazy.getsTxPart.run(function(txParts) { bts.lazy.getsTxName.run(function(txNames) { 4369 var _txInfosEl = sel('[data-ele-name="txInfos"]', wrapperEl); 4370 var _txNmTemplateWrapperEl = sel('[data-ele-name="txNmTemplateWrapper"]', wrapperEl); 4371 txPartCds.forEach(function (txPartCd, i) { 4372 var txInfosEl = showEles(cloneEleP(_txInfosEl)); 4373 wrapperEl.insertBefore(txInfosEl, _txInfosEl); 4374 _renderTxNames(txParts, txNames, txPartCd, _txNos, txInfosEl, _txNmTemplateWrapperEl); 4375 }) 4376 }); }); 4377 }; 4378 var _renderTxNames = function (txParts, txNames, txPartCd, _txNos, _txInfosEl, txNmTemplateEl) { 4379 var siteList = _getFilteredSiteList([{txPartCd: txPartCd}], txParts); 4380 if (isEmptyList(siteList) || siteList[0] == null || isEmpty(siteList[0].partNm) || isEmpty(siteList[0].txPartCd)) { 4381 bts.isDebug() && console.log(_this.ns + ' :: _renderTxNames :: Invalid txPart data', siteList); 4382 return false; 4383 } 4384 var item = siteList[0]; 4385 var _li = sel('[data-ele-name="txPart"]', _txInfosEl); 4386 _li.innerHTML = item.partNm; 4387 _li.dataset.txPartCd = item.txPartCd; 4388 /*_txNames.forEach(function(txNm) { 4389 var _li = cloneEle(txNmTemplateEl); 4390 _li.innerHTML = txNm; 4391 _txInfosEl.appendChild(_li); 4392 });*/ 4393 _txNos.forEach(function(txNo) { 4394 var _li = cloneEle(txNmTemplateEl); 4395 txNames.forEach(function(txNameItem) { 4396 if (txNameItem && txNameItem.listPartCd && txNameItem.no && txNameItem.data && txNameItem.data.name) { 4397 if (txNameItem.listPartCd.includes(txPartCd) && txNameItem.no == txNo) { 4398 bts.isDebug() && console.log(_this.ns + ' :: _renderTxNames :: ', txPartCd, txNameItem.listPartCd.includes(txPartCd), txNameItem.no); 4399 _li.innerHTML = txNameItem.data.name; 4400 _txInfosEl.appendChild(_li); 4401 } 4402 } 4403 }); 4404 }); 4405 }; 4406 _this.renderTxInfos = renderTxInfos; 4407 _this.renderRowReview = function(_data, dataListEle, callbackItemClick, callback, params) { 4408 // shield 4409 if (_data == null) { 4410 bts.isDebug() && console.log(_this.ns + '.renderRowReview :: Skip this data. Cause, no data. lang:', locale, 'no: ', _data.no); 4411 _this.renderRowEmpty(_data, dataListEle); 4412 return false; 4413 } 4414 4415 var callbackUserClick = (isObj(params) && isFunction(params.user)) ? params.user : null; 4416 var callbackCommentClick = (isObj(params) && isFunction(params.comment)) ? params.comment : null; 4417 var callbackTranslateClick = (isObj(params) && isFunction(params.translate)) ? params.translate : function(event, _this, rowEl, callback) { 4418 bts.svc.translate([_this.dataset.goodPoint, _this.dataset.weakPoint], _this.dataset.fr, _this.dataset.to, function (res) { 4419 bts.isDebug() && console.log(_this.ns + '.renderListMain :: translate click :: succ', res); 4420 var data = res.body.data; 4421 data.forEach(function (item) { 4422 if (item.fr == _this.dataset.goodPoint) sel('[data-column-name="goodPoint"]', rowEl).innerHTML = item.to; 4423 if (item.fr == _this.dataset.weakPoint) sel('[data-column-name="weakPoint"]', rowEl).innerHTML = item.to; 4424 }); 4425 //sel('[data-column-name="wrapperLink"]', rowEl).href = sel('[data-column-name="wrapperLink"]', rowEl).href + '?' + bts.consts.review.params.translated + '=' + bts.consts.yn.y; 4426 isFunction(callback) && callback(); 4427 }, function (e) { 4428 bts.isDebug() && console.log(_this.ns + '.renderListMain :: translate click :: err', e); 4429 }, bts.main.review, _data.no); 4430 }; 4431 4432 var _txNos = isNotEmpty(_data.txNos) ? _data.txNos.split(DELIM_ARR) : []; 4433 var _txNames = isNotEmpty(_data.txNm) ? _data.txNm.split(DELIM_ARR) : []; 4434 var _title = bts.seo.getReviewTitle(_txNames); 4435 4436 // render row [s] 4437 var _el = cloneEle(sel('[data-ele-name="templateWrapperReview"]', _ele.p));
4438 setViewData(_el, _data, bts.isDebug()); 4439 /* if(_data.likeCnt > 0){ 4440 sel('[data-column-name="likeCnt"]', _el).classList.add('on'); 4441 } */ 4442 var _userWrapperLinkEle = sel('[data-column-name="userWrapperLink"]', _el); 4443 // setVal(_userWrapperLinkEle, bts.path.userDetail + '/' + _data.nickName); //FIXME ì ì íë¡í ëì¤ë©´ ìì 4444 setVal(_userWrapperLinkEle, bts.seo.parseDetailPath(bts.path.reviewDetail, _data.no, _title)); 4445 _userWrapperLinkEle.onclick = function (event) { 4446 bts.isDebug() && console.log(_this.ns + '.renderRowReview :: user click'); 4447 var btn = this; 4448 isFunction(callbackUserClick) && callbackUserClick(event, btn); 4449 }; 4450 4451 4452 if (_data.profile) { 4453 var _imageEle = sel('[data-column-name="profileImage"]', _el); 4454 var _url = bts.url.getCdnImg(_data.profile.profileFileKey, _data.profile.profileFileNm); 4455 // ì´ë¯¸ì§ ì§ì° ë¡ë© 4456 // if (_this.isLazyTarget(dataListEle)) { 4457 4458 // _imageEle.dataset.backgroundImage = 'url(' + _url + ')'; 4459 // _imageEle.classList.add('lazy'); 4460 // } else { 4461 4462 // _imageEle.style.backgroundImage = 'url(' + _url + ')'; 4463 // } 4464 _imageEle.style.backgroundImage = 'url(' + _url + ')'; 4465 } 4466 4467 4468 //var _wrapperLinkEle = sel('[data-column-name="wrapperLink"]', _el); 4469 setVal(_userWrapperLinkEle, bts.seo.parseDetailPath(bts.path.reviewDetail, _data.no, _title)); 4470 _userWrapperLinkEle.dataset.no = _data.no; 4471 _userWrapperLinkEle.dataset.title = _title; 4472 _userWrapperLinkEle.onclick = function(event) { 4473 bts.isDebug() && console.log(_this.ns + '.renderRowReview :: row click'); 4474 var __this = this; 4475 isFunction(callbackItemClick) && callbackItemClick(event, __this); 4476 }; 4477 // sel('[data-column-name="title"]' , _el).innerHTML = _data.name || ''; 4478 var txPartCds = isNotEmpty(_data.txPartCd) ? _data.txPartCd.split(DELIM_ARR) : []; 4479 isNotEmptyList(txPartCds) && renderTxInfos(txPartCds, _txNos, _userWrapperLinkEle); 4480 4481 var _btnTranslateEl = sel('[data-ele-name="btnTranslate"]', _el); 4482 if (_data.langType == getLanguage()) { 4483 hideEles(_btnTranslateEl); 4484 } else { 4485 if (isEmpty(_btnTranslateEl.dataset.translated) || _btnTranslateEl.dataset.translated == bts.consts.yn.n) { 4486 _btnTranslateEl.dataset.translated = bts.consts.yn.n; 4487 _btnTranslateEl.dataset.fr = _data.langType; 4488 _btnTranslateEl.dataset.to = getLanguage(); 4489 _btnTranslateEl.innerHTML = bts.text.common_msg_see_translation; 4490 } else { 4491 _btnTranslateEl.dataset.translated = bts.consts.yn.y; 4492 _btnTranslateEl.dataset.fr = getLanguage(); 4493 _btnTranslateEl.dataset.to = _data.langType; 4494 _btnTranslateEl.innerHTML = bts.text.common_msg_see_original; 4495 } 4496 _btnTranslateEl.dataset.no = _data.no; 4497 _btnTranslateEl.dataset.langType = _data.langType; 4498 _btnTranslateEl.dataset.goodPoint = isEmpty(_data.goodPoint) ? '' : _data.goodPoint.trim(); 4499 _btnTranslateEl.dataset.weakPoint = isEmpty(_data.weakPoint) ? '' : _data.weakPoint.trim(); 4500 _btnTranslateEl.onclick = function (event) { 4501 bts.isDebug() && console.log(_this.ns + '.renderRowReview :: row click :: translate'); 4502 var __this = this; 4503 isFunction(callbackTranslateClick) && callbackTranslateClick(event, __this, _el, function () { 4504 if (isEmpty(__this.dataset.translated) || __this.dataset.translated == bts.consts.yn.n) { 4505 __this.dataset.translated = bts.consts.yn.y; 4506 __this.dataset.fr = getLanguage(); 4507 __this.dataset.to = __this.dataset.langType; 4508 __this.innerHTML = bts.text.common_msg_see_original; 4509 } else { 4510 __this.dataset.translated = bts.consts.yn.n; 4511 __this.dataset.fr = __this.dataset.langType; 4512 __this.dataset.to = getLanguage(); 4513 __this.innerHTML = bts.text.common_msg_see_translation; 4514 } 4515 }); 4516 }; 4517 } 4518 4519 var _imgListEl = sel('[data-ele-name="imgList"]', _el); 4520 4521 /* setImages.run(_data.afterFileNmArry, _data.afterFileKey, bts.text.word_after); 4522 setImages.run(_data.beforeFileNmArry, _data.beforeFileKe
4522y, bts.text.word_before); */ 4523 try{ 4524 setImages.init(_imgListEl); 4525 4526 try{ 4527 setImages.all(_data.beforeFileNmArry, _data.beforeFileKey, bts.text.word_before, _data.afterFileNmArry, _data.afterFileKey, bts.text.word_after); 4528 }catch(e){ 4529 setImages.run(_data.afterFileNmArry, _data.afterFileKey, bts.text.word_after); 4530 setImages.run(_data.beforeFileNmArry, _data.beforeFileKey, bts.text.word_before); 4531 } 4532 if (setImages.done()) { 4533 showEles(_imgListEl); 4534 } 4535 }catch(e){ 4536 4537 } 4538 4539 4540 const slideBoardAttach = new Swiper('.slideBoardAttach', { 4541 slidesPerView: 2, 4542 pagination: { 4543 el: '.swiper-pagination', 4544 type: 'custom', 4545 renderCustom: function (swiper, current, total) { 4546 return ` 4547 <div class="num"> 4548 <span class="status">${current}</span> 4549 <span class="page">/ ${total}</span> 4550 </div> 4551 `; 4552 }, 4553 clickable: true, 4554 }, 4555 }); 4556 4557 4558 // var _commentWrapperLinkEle = sel('[data-column-name="commentWrapperLink"]', _el); 4559 // setVal(_commentWrapperLinkEle, bts.seo.parseDetailPath(bts.path.reviewDetail, _data.no, _title, 'review-comment')); 4560 // _commentWrapperLinkEle.dataset.no = _data.no; 4561 // _commentWrapperLinkEle.dataset.title = _title; 4562 // _commentWrapperLinkEle.onclick = function(event) { 4563 // bts.isDebug() && console.log(_this.ns + '.renderRowReview :: row click'); 4564 // var __this = this; 4565 // isFunction(callbackCommentClick) && callbackCommentClick(event, __this); 4566 // }; 4567 4568 //ëì¤ì ìë ê°ì´ ë ¹ì¸ë¤ 빨리íë걸 ìíì ì ì´ë ê² ì²ë¦¬ 4569 if(_data.hoursAgo >= 24){ 4570 sel('[data-data_key="regDate"]', _userWrapperLinkEle).innerHTML = new Date(_data.regDate).format("yyyy.MM.dd"); 4571 }else if(_data.hoursAgo > 0){ 4572 sel('[data-data_key="regDate"]', _userWrapperLinkEle).innerHTML = _data.hoursAgo + "ìê° ì "; 4573 }else{ 4574 if(_data.minutesAgo == 0){ 4575 sel('[data-data_key="regDate"]', _userWrapperLinkEle).innerHTML = "ë°©ê¸ ì "; 4576 }else{ 4577 sel('[data-data_key="regDate"]', _userWrapperLinkEle).innerHTML = _data.minutesAgo + "ë¶ ì "; 4578 } 4579 } 4580 4581 // ë±ì§ í ì¤í¸ ê°ì ¸ì¤ê¸° 4582 /* var _imgSbWrapperEle = sel('[data-ele-name="selectLink"]', _el); 4583 _imgSbWrapperEle.onclick = function (event) { 4584 console.log(sel('[data-column-name="image"]',_imgSbWrapperEle).alt.substring(0,1)); 4585 var badgeText = sel('[data-column-name="image"]',_imgSbWrapperEle).alt.substring(0,1); 4586 setTimeout(function() { 4587 $('.pswp__scroll-wrap .pswp__img').each(function(){ 4588 $(this).after('<span class="photo-badge">'+ badgeText +'</span>'); 4589 }); 4590 }, 100); 4591 }; */ 4592 4593 isFunction(callback) && callback(_el); 4594 dataListEle.appendChild(_el); 4595 // render row [e] 4596 }; 4597 4598 /* 그루ë°TV */ 4599 _this.renderRowVideo = function(_data, dataListEle, callbackItemClick, callback) { 4600 var _el = cloneEle(sel('[data-ele-name="templateWrapperVideo"]', _ele.p)); 4601 var _wrapperLinkEle = sel('[data-column-name="wrapperLink"]', _el); 4602 4603 _wrapperLinkEle.href = bts.seo.parseDetailPath(bts.path.videoDetail, _data.no, ""); 4604 4605 var _url = bts.url.getCdnImg(_data.mfileKey, _data.mfileNm); 4606 sel('[data-column-name="videoImage"]',_el).src = _url; 4607 sel('[data-column-name="videoTitle"]',_el).innerHTML = _data.title; 4608 sel('[data-column-name="videoViewCount"]',_el).innerHTML = StringUtil.numberWithCommas(_data.hit); 4609 4610 if(_data.hoursAgo >= 24){ 4611 sel('[data-column-name="videoRegDate"]', _el).innerHTML = new Date(_data.regDate).format("yyyy.MM.dd"); 4612 }else if(_data.hoursAgo > 0){ 4613 sel('[data-column-name="videoRegDate"]', _el).innerHTML = _data.hoursAgo + "ìê° ì "; 4614 }else{ 4615 if(_data.minutesAgo == 0){ 4616 sel('[data-column-name="videoRegDate"]', _el).innerHTML = "ë°©ê¸ ì "; 4617 }else{ 4618 sel('[data-column-name="videoRegDate"]', _el).innerHTML = _data.minutesAgo + "ë¶ ì "; 4619 } 4620 } 4621 //sel('[data-column-name="videoOpenDate"]',_el).innerHTML = new Date(_data.openStart).format("MM.dd") + " ~ " + new Date(_data.openEnd).format("MM.dd"); 4622 4623 dataListEle.appendChild(_el); 4624 isFunction(callback) && callback(_el); 4625 }; 4626 4627 /* ì§ì리뷰 */ 4628 _this.renderRowEpReview = function(_data, dataListEle, callbackItemClick, callback) { 4629 //console.log(_data); 4630 var _el = cloneEle(sel('[data-ele-name="templateWrapperEpReview"]', _ele.p)); 4631 var _wrapperLinkEle = sel('[data-column-name="wrapperEpReviewLink"]' , _el); 4632 4633 _wrapperLinkEle.href = bts.seo.parseDetailPath(bts.path.employeeReviewDetail, _data.no, ""); 4634 _wrapperLinkEle.onclick = function(event) { 4635 console.log('row click'); 4636 var __this = this; 4637 callbackItemClick(event, __this); 4638 }; 4639 4640 if(_data.epReviewType == "P"){ 4641 sel('[data-column-name="epNickName"]', _wrapperLinkEle).innerHTML = "â"+_data.provName+"â" + "ìì 근무í ì§ì"; 4642 if(_data.provLevel){ 4643 sel('[data-column-name="pDoctorLevel"]', _wrapperLinkEle).innerHTML = _data.provLevel; 4644 } 4645 }else{ 4646 if(_data.provName){ 4647 sel('[data-column-name="epNickName"]', _wrapperLinkEle).innerHTML = "â"+_data.doctorName + " ìì¥âê³¼ ì¼í ì§ì"
4647+ " (" + _data.provName +")"; 4648 }else{ 4649 sel('[data-column-name="epNickName"]', _wrapperLinkEle).innerHTML = "â"+_data.doctorName + " ìì¥âê³¼ ì¼í ì§ì"; 4650 } 4651 if(_data.doctorLevel){ 4652 sel('[data-column-name="pDoctorLevel"]', _wrapperLinkEle).innerHTML = _data.doctorLevel; 4653 } 4654 } 4655 4656 4657 if(_data.hoursAgo >= 24){ 4658 sel('[data-data_type="datetime"]', _wrapperLinkEle).innerHTML = new Date(_data.regDate).format("yy.MM.dd"); 4659 }else if(_data.hoursAgo > 0){ 4660 sel('[data-data_type="datetime"]', _wrapperLinkEle).innerHTML = _data.hoursAgo + "ìê° ì "; 4661 }else{ 4662 if(_data.minutesAgo == 0){ 4663 sel('[data-data_type="datetime"]', _wrapperLinkEle).innerHTML = "ë°©ê¸ ì "; 4664 }else{ 4665 sel('[data-data_type="datetime"]', _wrapperLinkEle).innerHTML = _data.minutesAgo + "ë¶ ì "; 4666 } 4667 } 4668 4669 /* if(_data.bestOrderNo > 0){ 4670 showEles(sel('[data-column-name="hotIcon"]', _el)); 4671 }else{ 4672 if(bts.getData(bts.dataKeys.currEpReviewType) == "best"){ 4673 showEles(sel('[data-column-name="hotIcon"]', _el)); 4674 }else{ 4675 hideEles(sel('[data-column-name="hotIcon"]', _el)); 4676 } 4677 } */ 4678 4679 sel('[data-column-name="epTitle"]', _el).innerHTML = _data.title; 4680 sel('[data-column-name="goodPoint"]', _el).innerHTML = _data.goodPoint; 4681 sel('[data-column-name="weakPoint"]', _el).innerHTML = _data.weakPoint; 4682 /* sel('[data-column-name="wishingPoint"]', _el).innerHTML = _data.wishingPoint; */ 4683 4684 sel('[data-column-name="likeCnt"]', _el).innerHTML = `<span class="value">${_data.likeCnt}</span>`; 4685 sel('[data-column-name="commentCnt"]', _el).innerHTML = `<span class="value">${_data.commentCnt}</span>`; 4686 sel('[data-column-name="viewCnt"]', _el).innerHTML = `<span class="value">${_data.viewCnt}</span>`; 4687 4688 dataListEle.appendChild(_el); 4689 isFunction(callback) && callback(_el); 4690 }; 4691 /* ì§ì리뷰 */ 4692 4693 /* 빡침주ì */ 4694 _this.renderRowComplainReview = function(_data, dataListEle, callbackItemClick, callback) { 4695 var _el = cloneEle(sel('[data-ele-name="templateWrapperComplainReview"]', _ele.p)); 4696 var _wrapperLinkEle = sel('[data-column-name="wrapperComplainReviewLink"]' , _el); 4697 4698 _wrapperLinkEle.href = bts.seo.parseDetailPath(bts.path.complainReviewDetail, _data.no, ""); 4699 _wrapperLinkEle.onclick = function(event) { 4700 console.log('row click'); 4701 var __this = this; 4702 callbackItemClick(event, __this); 4703 }; 4704 4705 if(_data.complainReviewType == "P"){ 4706 sel('[data-column-name="complainNickName"]', _wrapperLinkEle).innerHTML = "â"+_data.provName+"â" + " ê³ ê°"; 4707 }else{ 4708 if(_data.provName){ 4709 sel('[data-column-name="complainNickName"]', _wrapperLinkEle).innerHTML = "â"+_data.doctorName + " ìì¥â ê³ ê°" + " (" + _data.provName +")"; 4710 }else{ 4711 sel('[data-column-name="complainNickName"]', _wrapperLinkEle).innerHTML = "â"+_data.doctorName + " ìì¥â ê³ ê°"; 4712 } 4713 } 4714 4715 if(_data.hoursAgo >= 24){ 4716 sel('[data-data_type="datetime"]', _wrapperLinkEle).innerHTML = new Date(_data.regDate).format("yy.MM.dd"); 4717 }else if(_data.hoursAgo > 0){ 4718 sel('[data-data_type="datetime"]', _wrapperLinkEle).innerHTML = _data.hoursAgo + "ìê° ì "; 4719 }else{ 4720 if(_data.minutesAgo == 0){ 4721 sel('[data-data_type="datetime"]', _wrapperLinkEle).innerHTML = "ë°©ê¸ ì "; 4722 }else{ 4723 sel('[data-data_type="datetime"]', _wrapperLinkEle).innerHTML = _data.minutesAgo + "ë¶ ì "; 4724 } 4725 } 4726 4727 /* if(_data.bestOrderNo > 0){ 4728 showEles(sel('[data-column-name="hotIcon"]', _el)); 4729 }else{ 4730 if(bts.getData(bts.dataKeys.currComplainReviewType) == "best"){ 4731 showEles(sel('[data-column-name="hotIcon"]', _el)); 4732 }else{ 4733 hideEles(sel('[data-column-name="hotIcon"]', _el));
4734 } 4735 } */ 4736 4737 sel('[data-column-name="complainTitle"]', _el).innerHTML = _data.title; 4738 sel('[data-column-name="complainPoint"]', _el).innerHTML = _data.complainPoint; 4739 sel('[data-column-name="goodPoint"]', _el).innerHTML = _data.goodPoint; 4740 /* sel('[data-column-name="wishingPoint"]', _el).innerHTML = _data.wishingPoint; */ 4741 4742 sel('[data-column-name="likeCnt"]', _el).innerHTML = `<span class="value">${_data.likeCnt}</span>`; 4743 sel('[data-column-name="commentCnt"]', _el).innerHTML = `<span class="value">${_data.commentCnt}</span>`; 4744 sel('[data-column-name="viewCnt"]', _el).innerHTML = `<span class="value">${_data.viewCnt}</span>`; 4745 4746 dataListEle.appendChild(_el); 4747 isFunction(callback) && callback(_el); 4748 }; 4749 /* 빡침주ì */ 4750 4751 /* /ê²ìí */ 4752 _this.renderRowBoard = function(_data, dataListEle, callbackItemClick, callback) { 4753 var _el = cloneEle(sel('[data-ele-name="templateWrapperBoard"]', _ele.p)); 4754 var _wrapperLinkEle = sel('[data-column-name="wrapperLink"]' , _el); 4755 var _touchItem = _wrapperLinkEle.parentNode; 4756 4757 /* _wrapperLinkEle.onclick = function(event) { 4758 bts.isDebug() && console.log(_this.ns + '.renderRowBoard :: row click'); 4759 var __this = this; 4760 isFunction(callbackCommentClick) && callbackCommentClick(event, __this); 4761 }; */ 4762 4763 4764 if(_data.hoursAgo >= 24){ 4765 sel('[data-data_type="datetime"]', _wrapperLinkEle).innerHTML = new Date(_data.regDate).format("yyyy.MM.dd"); 4766 }else if(_data.hoursAgo > 0){ 4767 sel('[data-data_type="datetime"]', _wrapperLinkEle).innerHTML = _data.hoursAgo + "ìê° ì "; 4768 }else{ 4769 if(_data.minutesAgo == 0){ 4770 sel('[data-data_type="datetime"]', _wrapperLinkEle).innerHTML = "ë°©ê¸ ì "; 4771 }else{ 4772 sel('[data-data_type="datetime"]', _wrapperLinkEle).innerHTML = _data.minutesAgo + "ë¶ ì "; 4773 } 4774 } 4775 4776 if(_data.bbhsOrderNo > 0){ 4777 // showEles(sel('[data-column-name="boardHotIcon"]', _wrapperLinkEle)); 4778 $('[data-column-name="boardContents"]', _wrapperLinkEle).addClass('best'); 4779 }else{ 4780 if(bts.getData(bts.dataKeys.currBoardType) == "best"){ 4781 $('[data-column-name="boardContents"]', _wrapperLinkEle).addClass('best'); 4782 }else{ 4783 $('[data-column-name="boardContents"]', _wrapperLinkEle).removeClass('best'); 4784 } 4785 } 4786 4787 /* if(_data.likeCnt > 0){ 4788 sel('[data-column-name="likeCnt"]', _el).classList.add('on'); 4789 } */ 4790 sel('[data-column-name="likeCnt"]', _el).innerHTML = `<span class="value">${_data.likeCnt}</span>`; 4791 sel('[data-column-name="commentCnt"]', _el).innerHTML = `<span class="value">${_data.commentCnt}</span>`; 4792 sel('[data-column-name="viewCnt"]', _el).innerHTML = `<span class="value">${_data.viewCnt}</span>`; 4793 4794 sel('[data-column-name="boardContents"]', _wrapperLinkEle).innerHTML = _data.title ; 4795 4796 var _imageEle = sel('[data-column-name="profileImage"]' , _wrapperLinkEle); 4797 if(_data.boardTypeCd == "anon"){ 4798 sel('[data-data_key="nickName"]' , _wrapperLinkEle).innerHTML = "ê¸ì´ì´"; 4799 // ì´ë¯¸ì§ ì§ì° ë¡ë© 4800 // if (_this.isLazyTarget(dataListEle)) { 4801 // _imageEle.dataset.backgroundImage = 'url(/img/anonymous-writer.png)'; 4802 // _imageEle.classList.add('lazy'); 4803 // } else { 4804 // _imageEle.style.backgroundImage = 'url(/img/anonymous-writer.png)'; 4805 // } 4806 _imageEle.style.backgroundImage = 'url(/img/anonymous-writer.png)'; 4807 }else{ 4808 sel('[data-data_key="nickName"]' , _wrapperLinkEle).innerHTML = _data.nickName; 4809 //if (_data.profileImgKey && _data.profileFileNm) { 4810 if (_data.profileFileNm) { 4811 //var _imageEle = sel('[data-column-name="profileImage"]' , _wrapperLinkEle); 4812 var _url = bts.url.getCdnImg('profile', _data.profileFileNm); 4813 4814 // ì´ë¯¸ì§ ì§ì° ë¡ë© 4815 // if (_this.isLazyTarget(dataListEle)) { 4816 // _imageEle.dataset.backgroundImage = 'url(' + _url + ')'; 4817 // _imageEle.classList.add('lazy'); 4818 // } else { 4819 // _imageEle.style.backgroundImage = 'url(' + _url + ')'; 4820 // } 4821 _imageEle.style.backgroundImage = 'url(' + _url + ')'; 4822 } 4823 } 4824 4825 if (typeof _data.fileNmArry != "undefined") { 4826 var pFileNmArry = _data.fileNmArry.split(','); 4827 for(i=0; i<pFileNmArry.length; i++){ 4828 var _url = bts.url.getCdnImg('board', pFileNmArry[i]); 4829 var _elImgLi = cloneEle(sel('[data-ele-name="templateWrapperBoardImg"]', _el)); 4830 sel('[data-column-name="image"]',_elImgLi).style.backgroundImage = 'url(' + _url + ')'; 4831 sel('[data-column-name="image"]',_elImgLi).style.backgroundSize = "cover"; 4832 sel('[data-column-name="image"]',_elImgLi).style.backgroundPosition = "center"; 4833 sel('[data-column-name="templateImg"]', _el).appendChild(_elImgLi); 4834 } 4835 // if(pFileNmArry.length == 5){ 4836 // sel('[data-column-name="templateImg"]', _el).style.width = "100%"; 4837 // } 4838 }else{ 4839 // _touchItem.classList.add('not-file'); 4840 $('[data-column-name="templateImgDiv"]', _el).hide(); 4841 } 4842 if(_data.boardTypeCd == "anon"){ 4843 _wrapperLinkEle.onclick = function(event) { 4844 console.log('row click'); 4845 sts.loginUrlHref(bts.seo.parseDetailPath(bts.path.boadDetail, _data.no, "")); 4846 }; 4847 }else{ 4848 _wrapperLinkEle.href = bts.seo.parseDetailPath(bts.path.boadDetail, _data.no, ""); 4849 _wrapperLinkEle.onclick = function(event) { 4850 console.log('row click'); 4851 var __this = this; 4852 callbackItemClick(event, __this); 4853 }; 4854 } 4855 4856 //_wrapperLinkEle.href = bts.seo.parseDetailPath(bts.path.boadDetail, _data.no, ""); 4857 //_wrapperLinkEle.onclick = function(event) { 4858 //console.log('row click'); 4859 //sts.loginUrlHref(bts.seo.parseDetailPath(bts.path.boadDetail, _data.no, "")); 4860 //var __this = this; 4861 //callbackItemClick(event, __this); 4862 //}; 4863 dataListEle.appendChild(_el); 4864 isFunction(callback) && callback(_el); 4865 }; 4866 /* ê²ìí /*/ 4867 4868 /* ê²ìí ëê¸/*/ 4869 _this.renderRowBoardComment = function(_data, dataListEle, callbackItemClick, callback) { 4870 var _el = cloneEle(sel('[data-ele-name="templateWrapperBoardComment"]', _ele.p)); 4871 var _templatcomment = sel('[data-column-name="templatcomment"]' , _el); 4872 4873 if(_data.parentNo){ 4874 sel('[data-column-name="templateCommentItem"]', _el).classList.add('reply'); 4875 } 4876 //if(!_data.parentNo){
4877 showEles(sel('[data-column-name="commentCrud"]',_el)); 4878 //} 4879 var _imageEle = sel('[data-column-name="profileImage"]' , _el); 4880 if(_data.boardTypeCd == "anon"){ 4881 sel('[data-data_key="nickName"]' , _el).innerHTML = "ìµëª "; 4882 4883 // if (_this.isLazyTarget(dataListEle)) { 4884 // _imageEle.dataset.backgroundImage = 'url(/img/anonymous-commenter.png)'; 4885 // _imageEle.classList.add('lazy'); 4886 // } else { 4887 // _imageEle.style.backgroundImage = 'url(/img/anonymous-commenter.png)'; 4888 // } 4889 _imageEle.style.backgroundImage = 'url(/img/anonymous-commenter.png)'; 4890 }else{ 4891 sel('[data-data_key="nickName"]' , _el).innerHTML = _data.nickName; 4892 //if (_data.profileImgKey && _data.profileFileNm) { 4893 if (_data.profileFileNm) { 4894 var _url = bts.url.getCdnImg('profile', _data.profileFileNm); 4895 4896 // ì´ë¯¸ì§ ì§ì° ë¡ë© 4897 // if (_this.isLazyTarget(dataListEle)) { 4898 // _imageEle.dataset.backgroundImage = 'url(' + _url + ')'; 4899 // _imageEle.classList.add('lazy'); 4900 // } else { 4901 // _imageEle.style.backgroundImage = 'url(' + _url + ')'; 4902 // } 4903 _imageEle.style.backgroundImage = 'url(' + _url + ')'; 4904 } 4905 } 4906 4907 if(_data.hoursAgo >= 24){ 4908 sel('[data-data_type="datetime"]', _el).innerHTML = _data.regDate; 4909 }else if(_data.hoursAgo > 0){ 4910 sel('[data-data_type="datetime"]', _el).innerHTML = _data.hoursAgo + "ìê° ì "; 4911 }else{ 4912 if(_data.minutesAgo == 0){ 4913 sel('[data-data_type="datetime"]', _el).innerHTML = "ë°©ê¸ ì "; 4914 }else{ 4915 sel('[data-data_type="datetime"]', _el).innerHTML = _data.minutesAgo + "ë¶ ì "; 4916 } 4917 4918 } 4919 4920 $('[data-ele-name="btnMore"]', _el).off().on('click', function(e) { 4921 e.preventDefault(); 4922 var selectObj = []; 4923 if(__userNo == _data.userNo){ 4924 selectObj = [ 4925 [ 4926 {'text':'ìì ', 'val':'delete'}, 4927 ] 4928 ] 4929 } else { 4930 selectObj = [ 4931 [ 4932 {'text':'ì ê³ í기', 'val':'report'}, 4933 ] 4934 ] 4935 } 4936 selectSingleModal.init( 4937 selectObj 4938 ,function(selectVal){ 4939 if(selectVal[0] == 'delete'){ 4940 if(!bts.requiredLoginModal()) { 4941 return false; 4942 } 4943 deleteBoardCommentModal.init(_data.boardCommentNo); 4944 }else if(selectVal[0] == 'report'){ 4945 if(!bts.requiredLoginModal()) { 4946 return false; 4947 } 4948 reportModal.init(_data.boardCommentNo); 4949 } 4950 } 4951 ); 4952 }); 4953 4954 // ì ê³ í기 íë¨íì 4955 $('.board-siren-img', _el).off().on('click',function(e){ 4956 e.preventDefault(); 4957 // console.log(">>>>board-siren-img........"); 4958 // $('.impleSlidingBtmMd').addClass('on'); 4959 // $('body').append('<div class="modal-backdrop fade show"></div>'); 4960 var selectObj = []; 4961 selectObj = [ 4962 [ 4963 {'text':'리뷰 ì ê³ ', 'val':'report'}, 4964 {'text':'íì ì°¨ë¨', 'val':'memberBlock'}, 4965 ] 4966 ]; 4967 selectSingleModal.init( 4968 selectObj 4969 ,function(selectVal){ 4970 if(selectVal[0] == 'report'){ 4971 reportUserModal.init(_data.boardCommentNo); 4972 }else if(selectVal[0] == 'memberBlock'){ 4973 bts.toast("ì°¨ë¨ëììµëë¤."); 4974 } 4975 } 4976 ); 4977 }); 4978 4979 sel('[data-data_type="datetime"]', _el).innerHTML = _data.regDate; 4980 4981 // var _deleteCommentModal = sel('[data-ele-name="deleteCommentModal"]', _el); 4982 // _deleteCommentModal.onclick = function (event) { 4983 // event.preventDefault(); 4984 4985 // if(!bts.requiredLoginModal()) { 4986 // return false; 4987 // } 4988 // deleteBoardCommentModal.init(_data.boardCommentNo); 4989 // }; 4990 // var _reportModal = sel('[data-ele-name="reportModal"]', _el); 4991 // _reportModal.onclick = function (event) { 4992 // event.preventDefault(); 4993 4994 // if(!bts.requiredLoginModal()) { 4995 // return false;
4996 // } 4997 // reportModal.init(_data.boardCommentNo); 4998 // }; 4999 // if(__userNo == _data.userNo){ 5000 // showEles(_deleteCommentModal); 5001 // hideEles(_reportModal); 5002 // }else{ 5003 // hideEles(_deleteCommentModal); 5004 // showEles(_reportModal); 5005 // } 5006 5007 $('[data-column-name="commentCrud"]', _el).off().on('click', function(event) { 5008 if(!bts.requiredLoginModal()) { 5009 bts.setData(bts.dataKeys.cachedModalYn, bts.consts.yn.y); //[ê°ì ] ë¹íì ì 견ì /ì´ë²¤í¸ì ì²/리뷰 ìì± íë¡ì° 5010 return false; 5011 } 5012 $('[data-column-name="commentContentsText"]').text(""); 5013 $("#parentNo").val(_data.no); 5014 $("#parentName").val(_data.nickName); 5015 $("#tagUserNo").val(_data.userNo); 5016 5017 if(_data.boardTypeCd == "anon"){ 5018 $('[data-column-name="commentContentsText"]').val("@ìµëª "); 5019 }else{ 5020 $('[data-column-name="commentContentsText"]').val("@"+$("#parentName").val()+" "); 5021 } 5022 var len = $('[data-column-name="commentContentsText"]').val().length; 5023 $('[data-column-name="commentContentsText"]').focus(); 5024 $('[data-column-name="commentContentsText"]')[0].setSelectionRange(len, len); 5025 5026 }); 5027 5028 sel('[data-column-name="commentContents"]', _el).innerHTML = _data.contents; 5029 dataListEle.appendChild(_el); 5030 isFunction(callback) && callback(_el); 5031 }; 5032 /* ê²ìí ëê¸/*/ 5033 5034 5035 /* ì§ì리뷰 ëê¸/*/ 5036 _this.renderRowEpReviewComment = function(_data, dataListEle, callbackItemClick, callback) { 5037 var _el = cloneEle(sel('[data-ele-name="templateWrapperEpReviewComment"]', _ele.p)); 5038 var _templatcomment = sel('[data-column-name="templatcomment"]' , _el); 5039 if(_data.parentNo){ 5040 sel('[data-column-name="templateCommentItem"]', _el).classList.add('reply'); 5041 } 5042 //if(!_data.parentNo){ 5043 showEles(sel('[data-column-name="commentCrud"]',_el)); 5044 //} 5045 var _imageEle = sel('[data-column-name="profileImage"]' , _el); 5046 //if(_data.boardTypeCd == "anon"){ 5047 sel('[data-data_key="nickName"]' , _el).innerHTML = "ìµëª "; 5048 5049 if (_this.isLazyTarget(dataListEle)) { 5050 _imageEle.dataset.backgroundImage = 'url(/img/anonymous-commenter.png)'; 5051 _imageEle.classList.add('lazy'); 5052 } else { 5053 _imageEle.style.backgroundImage = 'url(/img/anonymous-commenter.png)'; 5054 } 5055 /* }else{ 5056 sel('[data-data_key="nickName"]' , _el).innerHTML = _data.nickName; 5057 if (_data.profileImgKey && _data.profileFileNm) { 5058 5059 var _url = bts.url.getCdnImg('profile', _data.profileFileNm); 5060 5061 // ì´ë¯¸ì§ ì§ì° ë¡ë© 5062 if (_this.isLazyTarget(dataListEle)) { 5063 _imageEle.dataset.backgroundImage = 'url(' + _url + ')'; 5064 _imageEle.classList.add('lazy'); 5065 } else { 5066 _imageEle.style.backgroundImage = 'url(' + _url + ')'; 5067 } 5068 } 5069 } */ 5070 5071 if(_data.hoursAgo >= 24){ 5072 sel('[data-data_type="datetime"]', _el).innerHTML = new Date(_data.regDate).format("yy.MM.dd"); 5073 }else if(_data.hoursAgo > 0){ 5074 sel('[data-data_type="datetime"]', _el).innerHTML = _data.hoursAgo + "ìê° ì "; 5075 }else{ 5076 if(_data.minutesAgo == 0){ 5077 sel('[data-data_type="datetime"]', _el).innerHTML = "ë°©ê¸ ì "; 5078 }else{ 5079 sel('[data-data_type="datetime"]', _el).innerHTML = _data.minutesAgo + "ë¶ ì "; 5080 } 5081 5082 } 5083 //console.log(_data); 5084 //sel('[data-data_type="datetime"]', _el).innerHTML = _data.regDate; 5085 var _deleteCommentModal = sel('[data-ele-name="deleteCommentModal"]', _el);
5086 _deleteCommentModal.onclick = function (event) { 5087 event.preventDefault(); 5088 5089 if(!bts.requiredLoginModal()) { 5090 return false; 5091 } 5092 deleteEpReviewModal.init(_data.no); 5093 }; 5094 5095 var _reportModal = sel('[data-ele-name="reportModal"]', _el); 5096 _reportModal.onclick = function (event) { 5097 event.preventDefault(); 5098 5099 if(!bts.requiredLoginModal()) { 5100 return false; 5101 } 5102 reportModal.init(_data.no); 5103 }; 5104 if(__userNo == _data.userNo){ 5105 showEles(_deleteCommentModal); 5106 hideEles(_reportModal); 5107 }else{ 5108 hideEles(_deleteCommentModal); 5109 showEles(_reportModal); 5110 } 5111 5112 sel('[data-column-name="commentCrud"]', _el).onclick = function(event) { 5113 if(!bts.requiredLoginModal()) { 5114 bts.setData(bts.dataKeys.cachedModalYn, bts.consts.yn.y); //[ê°ì ] ë¹íì ì 견ì /ì´ë²¤í¸ì ì²/리뷰 ìì± íë¡ì° 5115 return false; 5116 } 5117 $('[data-column-name="commentContentsText"]').text(""); 5118 $("#parentNo").val(_data.no); 5119 $("#parentName").val(_data.nickName); 5120 $("#tagUserNo").val(_data.userNo); 5121 5122 //if(_data.boardTypeCd == "anon"){ 5123 $('[data-column-name="commentContentsText"]').val("@ìµëª "); 5124 /* }else{ 5125 $('[data-column-name="commentContentsText"]').val("@"+$("#parentName").val()+" "); 5126 } */ 5127 var len = $('[data-column-name="commentContentsText"]').val().length; 5128 $('[data-column-name="commentContentsText"]').focus(); 5129 $('[data-column-name="commentContentsText"]')[0].setSelectionRange(len, len); 5130 5131 }; 5132 sel('[data-column-name="commentContents"]', _el).innerHTML = _data.contents; 5133 dataListEle.appendChild(_el); 5134 isFunction(callback) && callback(_el); 5135 }; 5136 /* ì§ì리뷰 ëê¸/*/ 5137 5138 /* 빡침주ì ëê¸/*/ 5139 _this.renderRowComplainReviewComment = function(_data, dataListEle, callbackItemClick, callback) { 5140 console.log(_data); 5141 var _el = cloneEle(sel('[data-ele-name="templateWrapperEpReviewComment"]', _ele.p)); 5142 var _reportModal = sel('[data-ele-name="reportModal"]', _el); 5143 var _templatcomment = sel('[data-column-name="templatcomment"]' , _el); 5144 var _imageEle = sel('[data-column-name="profileImage"]' , _el); 5145 5146 if(_data.parentNo){ 5147 sel('[data-column-name="templateCommentItem"]', _el).classList.add('reply'); 5148 } 5149 if(_data.complainReviewType != "M"){ 5150 showEles(sel('[data-column-name="commentCrud"]',_el)); 5151 sel('[data-data_key="nickName"]' , _el).innerHTML = "ìµëª "; 5152 5153 if (_this.isLazyTarget(dataListEle)) { 5154 _imageEle.dataset.backgroundImage = 'url(/img/anonymous-commenter.png)'; 5155 _imageEle.classList.add('lazy'); 5156 } else { 5157 _imageEle.style.backgroundImage = 'url(/img/anonymous-commenter.png)'; 5158 } 5159 }else{ 5160 _el.classList.add('admin'); 5161 sel('[data-data_key="nickName"]' , _el).innerHTML = "ë³ìë´ë¹ì"; 5162 hideEles(_reportModal); 5163 5164 if (_data.profileImgKey && _data.profileFileNm) { 5165 var _url = bts.url.getCdnImg(_data.profileImgKey, _data.profileFileNm); 5166 5167 if (_this.isLazyTarget(dataListEle)) { 5168 _imageEle.dataset.backgroundImage = 'url(' + _url + ')'; 5169 _imageEle.classList.add('lazy'); 5170 } else { 5171 _imageEle.style.backgroundImage = 'url(' + _url + ')'; 5172 } 5173 }; 5174 } 5175 5176 5177 5178 5179 if(_data.hoursAgo >= 24){ 5180 //sel('[data-data_type="datetime"]', _el).innerHTML = _data.regDate; 5181 sel('[data-data_type="datetime"]', _el).innerHTML = new Date(_data.regDate).format("yy.MM.dd"); 5182 }else if(_data.hoursAgo > 0){ 5183 sel('[data-data_type="datetime"]', _el).innerHTML = _data.hoursAgo + "hour ago"; //ìê° ì 5184 }else{ 5185 if(_data.minutesAgo == 0){ 5186 sel('[data-data_type="datetime"]', _el).innerHTML = "a few seconds ago"; //ë°©ê¸ ì 5187 }else{ 5188 sel('[data-data_type="datetime"]', _el).innerHTML = _data.minutesAgo + "minute ago"; //ë¶ ì 5189 } 5190 5191 } 5192
5193 var _deleteCommentModal = sel('[data-ele-name="deleteCommentModal"]', _el); 5194 _deleteCommentModal.onclick = function (event) { 5195 event.preventDefault(); 5196 5197 if(!bts.requiredLoginModal()) { 5198 return false; 5199 } 5200 deleteCpReviewModal.init(_data.no); 5201 }; 5202 5203 var _reportModal = sel('[data-ele-name="reportModal"]', _el); 5204 _reportModal.onclick = function (event) { 5205 event.preventDefault(); 5206 5207 if(!bts.requiredLoginModal()) { 5208 return false; 5209 } 5210 reportModal.init(_data.no); 5211 }; 5212 if(__userNo == _data.userNo){ 5213 showEles(_deleteCommentModal); 5214 hideEles(_reportModal); 5215 }else{ 5216 hideEles(_deleteCommentModal); 5217 showEles(_reportModal); 5218 } 5219 5220 /* _reportModal.onclick = function (event) { 5221 event.preventDefault(); 5222 5223 if(!bts.requiredLoginModal()) { 5224 return false; 5225 } 5226 reportModal.init(_data.no); 5227 }; 5228 if(__userNo == _data.userNo){ 5229 hideEles(_reportModal); 5230 } */ 5231 5232 sel('[data-column-name="commentCrud"]', _el).onclick = function(event) { 5233 if(!bts.requiredLoginModal()) { 5234 bts.setData(bts.dataKeys.cachedModalYn, bts.consts.yn.y); //[ê°ì ] ë¹íì ì 견ì /ì´ë²¤í¸ì ì²/리뷰 ìì± íë¡ì° 5235 return false; 5236 } 5237 $('[data-column-name="commentContentsText"]').text(""); 5238 $("#parentNo").val(_data.no); 5239 $("#parentName").val(_data.nickName); 5240 $("#tagUserNo").val(_data.userNo); 5241 5242 //if(_data.boardTypeCd == "anon"){ 5243 $('[data-column-name="commentContentsText"]').val("@ìµëª "); 5244 /* }else{ 5245 $('[data-column-name="commentContentsText"]').val("@"+$("#parentName").val()+" "); 5246 } */ 5247 var len = $('[data-column-name="commentContentsText"]').val().length; 5248 $('[data-column-name="commentContentsText"]').focus(); 5249 $('[data-column-name="commentContentsText"]')[0].setSelectionRange(len, len); 5250 5251 }; 5252 sel('[data-column-name="commentContents"]', _el).innerHTML = _data.contents; 5253 dataListEle.appendChild(_el); 5254 isFunction(callback) && callback(_el); 5255 }; 5256 /* 빡침주ì ëê¸/*/ 5257 5258 /* /ë§ì´ íì´ì§ ê²ìí */ 5259 _this.renderRowMyBoard = function(_data, dataListEle, callbackItemClick, callback) { 5260 var _el = cloneEle(sel('[data-ele-name="templateWrapperMyBoard"]', _ele.p)); 5261 var _wrapperLinkEle = sel('[data-column-name="wrapperLink"]' , _el); 5262 var _wrapperLinkSecondEle = sel('[data-column-name="wrapperLinkSecond"]', _el); 5263 5264 _wrapperLinkEle.onclick = function(event) { 5265 bts.isDebug() && console.log(_this.ns + '.renderRowBoard :: row click'); 5266 var __this = this; 5267 // isFunction(callbackCommentClick) && callbackCommentClick(event, __this); 5268 }; 5269 _wrapperLinkSecondEle.onclick = function(event) { 5270 bts.isDebug() && console.log(_this.ns + '.renderRowBoard :: row click'); 5271 var __this = this; 5272 isFunction(callbackCommentClick) && callbackCommentClick(event, __this); 5273 }; 5274 _wrapperLinkEle.href = bts.seo.parseDetailPath(bts.path.boadDetail, _data.no, ""); 5275 _wrapperLinkSecondEle.href = bts.seo.parseDetailPath(bts.path.boadDetail, _data.no, ""); 5276 sel('[data-data_type="datetime"]', _el).innerHTML = new Date(_data.regDate).format("yyyy.MM.dd"); 5277 sel('[data-column-name="likeCnt"]', _el).innerHTML = `<span class="value">${_data.likeCnt}</span>`; 5278 sel('[data-column-name="commentCnt"]', _el).innerHTML = `<span class="value">${_data.commentCnt}</span>`; 5279 sel('[data-column-name="boardContents"]', _el).innerHTML = _data.title; 5280 if (typeof _data.fileNmArry != "undefined") { 5281 var pFileNmArry = _data.fileNmArry.split(','); 5282 for(i=0; i<pFileNmArry.length; i++){ 5283 var _url = bts.url.getCdnImg('board', pFileNmArry[i]); 5284 var _elImgLi = cloneEle(sel('[data-ele-name="templateWrapperBoardImg"]', _el)); 5285 sel('[data-column-name="image"]',_elImgLi).style.backgroundImage = "url(" + _url + ")"; 5286 sel('[data-column-name="templateImg"]', _el).appendChild(_elImgLi); 5287 } 5288 } 5289 sel('[data-column-name="deleteBt"]', _el).onclick = function(event) { 5290 bts.confirm("ê²ìê¸ì ìì íìê² ìµëê¹?", function() { 5291 reqBoardDelete(_data.no, function () { 5292 location.reload(); 5293 }); 5294 }, function() { 5295 }, "ì림", "ìì ", "ì·¨ì"); 5296 } 5297 5298 dataListEle.appendChild(_el); 5299 isFunction(callback) && callback(_el); 5300 }; 5301 /* ë§ì´ íì´ì§ ê²ìí /*/ 5302 5303 5304 5305 /* /ë§ì´ íì´ì§ ëê¸ */ 5306 _this.renderRowMyComment = function(_data, dataListEle, callbackItemClick, callback) { 5307 var _el = cloneEle(sel('[data-ele-name="templateWrapperMyComment"]', _ele.p)); 5308 var _wrapperLinkEle = sel('[data-column-name="wrapperLink"]' , _el); 5309 5310 _wrapperLinkEle.onclick = function(event) { 5311 bts.isDebug() && console.log(_this.ns + '.renderRowBoard :: row click'); 5312 var __this = this; 5313 // isFunction(callbackCommentClick) && callbackCommentClick(event, __this); 5314 }; 5315 5316 _wrapperLinkEle.href = bts.seo.parseDetailPath(bts.path.boadDetail, _data.boardNo, ""); 5317 sel('[data-data_type="datetime"]', _el).innerHTML = new Date(_data.regDate).format("yyyy.MM.dd"); 5318 sel('[data-column-name="boardContents"]', _el).innerHTML =_data.contents; 5319 sel('[data-column-name="deleteBt"]', _el).onclick = function(event) { 5320 bts.confirm(bts.text.common_msg_do_you_want_to_delete, function() { 5321 reqBoardCommentDelete(_data.boardCommentNo, function () { 5322 location.reload(); 5323 }); 5324 }, function() { 5325 }, "ì림", "ìì ", "ì·¨ì"); 5326 } 5327 5328 dataListEle.appendChild(_el); 5329 isFunction(callback) && callback(_el); 5330 }; 5331 /* ë§ì´ íì´ì§ ëê¸ /*/ 5332 5333 var reqBoardDelete = function (boardNo, returnFnc, errorFnc) { 5334 var params = {boardNo: boardNo}; 5335 ajax({ 5336 url: bts.url.getRapi() + "/board/delete", 5337 type: 'post', 5338 data: params, 5339 alertManual: true, 5340 success: function(res){ 5341 var body = res.body; 5342 returnFnc(res); 5343 }, error: function(e) { 5344 5345 isFunction(errorFnc) && errorFnc(e); 5346 bts.err(ns + '.svc.reqReview :: ', e); 5347 } 5348 }); 5349 }; 5350 var reqBoardCommentDelete = function (boardCommentNo, returnFnc, errorFnc) { 5351 var params = {boardCommentNo: boardCommentNo}; 5352 ajax({ 5353 url: bts.url.getRapi() + "/board/comment/delete", 5354 type: 'post', 5355 data: params, 5356 alertManual: true, 5357 success: function(res){ 5358 var body = res.body; 5359 returnFnc(res); 5360 }, error: function(e) { 5361 5362 isFunction(errorFnc) && errorFnc(e); 5363 bts.err(ns + '.svc.reqReview :: ', e); 5364 } 5365 }); 5366 }; 5367 5368 5369 return _this; 5370 }; return new ListItems;})(); 5371 /*]]>*/ 5372 </script>
5372 5373 5374 5375<div data-ele-name="templateWrapperDetailItems" style="display: none"> 5376 <div data-ele-name="templateWrapperMoreToggleBtn"> 5377 <!--<a href="#" data-toggle="folding"> 5378 <span th:data-text-folding="#{common.msg.folding}" th:data-text-more="#{common.msg.more}" 5379 data-column-name="foldState" 5380 th:text="#{common.msg.more}"> 5381 </span> <i class="xi-angle-down"></i> 5382 </a>--> 5383 <a href="#" data-toggle="folding" data-line="2"> 5384 <p class="box-shadow"></p><span data-text-folding="Fold" data-text-more="More" 5385 data-column-name="foldState">More</span> 5386 </a> 5387 </div> 5388</div>
5389<script> 5390 /*<![CDATA[*/ 5391 var detailItems = (function() { 5392 5393 var ns = 'detailItems'; 5394 5395 var _pEle = sel('[data-ele-name="templateWrapperDetailItems"]'); 5396 var _di = { 5397 el: { 5398 p: _pEle 5399 ,moreToggleBtn: sel('[data-ele-name="templateWrapperMoreToggleBtn"]', _pEle) 5400 ,_end: null 5401 } 5402 }; 5403 5404 var init = function() { 5405 }; 5406 init(); 5407 _di.getMoreToggleBtn = function(line) { 5408 var btn = cloneEle(_di.el.moreToggleBtn); 5409 btn.dataset.line = line; 5410 return btn; 5411 }; 5412 return _di; 5413 })(); 5414 /*]]>*/ 5415</script>
5415 5416 5417 5418 <!-- container --> 5419 <!-- <div id="ct"> --> 5420 5421 <!-- íì´ì§ ìì --> 5422 <div id="contents" style="display: none"> 5423 <div class="container"> 5424 <input type="hidden" name="main_pg" value="1"/> 5425 <input type="hidden" name="main_limit" value="10"/> 5426 <input type="hidden" name="main_ordrBy" value=""/> 5427 5428 <!-- S : ì¤í¨ì¼ì´ --> 5429 <section class="view-skincare"> 5430 5431 <section class="view-skincare" data-ele-name="eventBannerWrapper"> 5432 <div class="view"> 5433 <div class="swiper-container view-swiper bnr-board"> 5434 <ul class="swiper-wrapper" data-ele-name="eventBannerList"> 5435 </ul> 5436 <div class="swiper-pagination swiper-pagination-view"></div> 5437 </div> 5438 </div> 5439 </section> 5440 <section data-ele-name="templateEventBannerWrapper" style="display: none"> 5441 <ul class="swiper-wrapper" data-ele-name="templateeventBannerList"> 5442 <li class="swiper-slide"><a data-column-name="templateeventBannerTagA" class="view-img" href="/img/_temp/slide1.jpg" style="background-image:url(/img/_temp/slide1.jpg)"><img data-column-name="templateeventBannerTagImg" src="/img/_temp/slide1.jpg" alt=""></a></li> 5443 </ul> 5444 </section> 5445
5445<script src="https://cdnjs.cloudflare.com/ajax/libs/Swiper/4.5.0/js/swiper.min.js"></script>
5445 5446
5446<script> 5447 /*<![CDATA[*/ 5448 var subBanner = (function() { 5449 var subBannerInit = function() { 5450 getListBanner(function(bannerBody){ 5451 viewEventBannerList(bannerBody); 5452 // ë·°ì´ì¬ë¼ì´ë 5453 new Swiper('.view-swiper', { 5454 loop: true, 5455 autoplay: { 5456 delay: bts.set.mainSwiperDelay, 5457 }, 5458 pagination: { 5459 el: '.swiper-pagination-view', 5460 clickable:true 5461 }, 5462 }); 5463 }); 5464 }; 5465 5466 var viewEventBannerList = function(result) { 5467 if(result.body.bannerlist.length > 0) { 5468 result.body.bannerlist.forEach(function (item) { 5469 var _url = bts.url.getCdnImg(item.viewImg.fileKey, item.viewImg.fileNm); 5470 var _el = cloneEle(sel('[data-ele-name="templateeventBannerList"]','[data-ele-name="templateEventBannerWrapper"]')); 5471 sel('[data-column-name="templateeventBannerTagA"]', _el).style.backgroundImage = 'url(' + _url + ')'; 5472 sel('[data-column-name="templateeventBannerTagA"]', _el).href = item.viewLink; 5473 sel('[data-column-name="templateeventBannerTagImg"]', _el).src = _url; 5474 sel('[data-ele-name="eventBannerList"]').appendChild(_el); 5475 }); 5476 } 5477 } 5478 5479 var getListBanner = function(callback) { 5480 var data = { 5481 bannerLocation: "S" 5482 }; 5483 ajax({ 5484 url: bts.url.getAapi() + '/banner/getBannerList', 5485 data: data, 5486 overlayManual: true, 5487 success: function(body) { 5488 callback(body); 5489 }, error: function(e) { 5490 overlay.off(); 5491 } 5492 }); 5493 }; 5494 subBannerInit(); 5495 })(); 5496 /*]]>*/ 5497 </script>
5497 5498 5499 <div class="position-relative"> 5500 <html> 5501 <div class="view-tab swiper-view-tab"> 5502 <nav class="slide-ui"> 5503 <div class="swiper-container slide-1depth"> 5504 <ul class="swiper-wrapper width-fix" data-ele-name="tabTypeList"> 5505 </ul> 5506 </div> 5507 </nav> 5508 </div> 5509 <ul class="view-tab nav" data-ele-name="templateWrapperTabItem" style="display: none"> 5510 <li class="swiper-slide"><a href="javascript:void(0)" class="active" data-column-name="selectLink">loading...</a></li> 5511 </ul> 5512
5512<script> 5513 /*<![CDATA[*/ 5514 var viewTabProduct = (function() { 5515 var ns = 'viewTabStore'; 5516 5517 var selectItem = function(parentElement, selectedEl) { 5518 if(selectedEl == null){ 5519 selectedEl = sel('[data-tab-type=""]', parentElement); 5520 } 5521 5522 selAll('li', parentElement).forEach(function(_ele, idx){ 5523 sel('a', _ele).classList.remove('active'); 5524 }); 5525 sel('a', selectedEl) && sel('a', selectedEl).classList.add('active'); 5526 }; 5527 5528 var _renderTabList = function(datas, callback) { 5529 var _listEle = sel('[data-ele-name="tabTypeList"]'); 5530 5531 _listEle.innerHTML = ''; 5532 5533 var _selectedLi = null; 5534 var _oldTabType = bts.getData(bts.dataKeys.currProductType); 5535 5536 datas.forEach(function(item){ 5537 5538 var _li = cloneEle(sel('[data-ele-name="templateWrapperTabItem"]')); 5539 _li.dataset.tabType = item[0]; 5540 5541 sel('[data-column-name="selectLink"]', _li).innerHTML = item[1]; 5542 sel('[data-column-name="selectLink"]', _li).onclick = function(e) { 5543 var _p = this.parentElement; 5544 var _oldTabType = bts.getData(bts.dataKeys.currProductType); 5545 var _currTabType = _p.dataset.tabType; 5546 5547 if (_oldTabType == _currTabType) { 5548 return false; 5549 } 5550 bts.setData(bts.dataKeys.currProductType, _currTabType); 5551 5552 //ì´ê¸°í 5553 subCategoryProduct.setCurrProductPurpose(); 5554 5555 selectItem(_listEle, _p); 5556 5557 MainChild.sendMsg('pgInit'); 5558 MainChild.sendMsg('render'); 5559 }; 5560 5561 if (_oldTabType == item[0]) { 5562 5563 _selectedLi = _li; 5564 } 5565 5566 _listEle.append(_li); 5567 }); 5568 5569 selectItem(_listEle, _selectedLi); 5570 5571 callback(); 5572 }; 5573 5574 var storeTypeNavSwiper = null; 5575 var _viewTab = {}; 5576 _viewTab.init = function() { 5577 _renderTabList([ 5578 ['', bts.text.word_surgicalTypeA] 5579 , [bts.consts.productType.skin, bts.text.word_productTypeSkin] 5580 , [bts.consts.productType.hue, bts.text.word_productTypeHue] 5581 , [bts.consts.productType.teeth, bts.text.word_productTypeTeeth] 5582 , [bts.consts.productType.hair, bts.text.word_productTypeHair] 5583 /* , [bts.consts.productType.body, bts.text.word_productTypeBody] */ 5584 ], function(){ 5585 storeTypeNavSwiper = new Swiper('.slide-1depth', { 5586 slidesPerView: 'auto', 5587 spaceBetween: 35, 5588 freeMode: true 5589 }); 5590 }); 5591 }; 5592 return _viewTab; 5593 })(); 5594 5595 /*]]>*/ 5596 </script>
5596 5597</html> 5598 <div class="tab-content"> 5599 <!-- ì ì²´ --> 5600 <div id="viewTab" class="tab-pane active"> 5601 <!-- <h3 class="sr-only">ì ì²´</h3> --> 5602 <div class="view-body"> 5603 <div class="view-sect-full"> 5604 5605 <nav class="nav-category2 swiper-container" data-ele-name="categoryWrapper" style="padding: 32px 16px 12px;"> 5606 <ul class="swiper-wrapper" data-ele-name="purposeList" style="display: none"> 5607 </ul> 5608 </nav> 5609 <nav data-ele-name="templateCategoryWrapper" style="display: none"> 5610 <ul class="swiper-wrapper" data-ele-name="templateWrapperTxItem" style="display: none"> 5611 <li class="swiper-slide"><i class="hex"></i><a href="javascript:void(0)" data-column-name="selectLink">loading...</a></li> 5612 </ul> 5613 <ul class="swiper-wrapper" data-ele-name="templateWrapperTxItemAll" style="display: none"> 5614 <li class="swiper-slide no-puopose"><i class="hex"></i><a href="javascript:void(0)" data-column-name="selectLink">All</a></li> 5615 </ul> 5616 </nav> 5617
5617<script src="https://cdnjs.cloudflare.com/ajax/libs/Swiper/4.5.0/js/swiper.min.js"></script>
5617 5618
5618<script> 5619 var subCategoryProduct = (function() { 5620 var ns = 'subCategoryProduct'; 5621 var status = { 5622 currProductPurpose: '', 5623 ProductPurposes: undefined 5624 }; 5625 var getTargetProductPurposes = function() { 5626 if (!status.ProductPurposes){ 5627 bts.err(ns + '.getTargetProductPurposes :: status.ProductPurposes is null', status.ProductPurposes); 5628 } 5629 return status.ProductPurposes; 5630 }; 5631 var setCurrProductPurpose = function (ProductPurposeCd) { 5632 if (isList(ProductPurposeCd)) { 5633 if (isEmptyList(ProductPurposeCd)) { 5634 status.currProductPurpose = undefined; 5635 } else { 5636 status.currProductPurpose = ProductPurposeCd[0]; 5637 } 5638 bts.setListData(bts.dataKeys.selProductPurposes, ProductPurposeCd); 5639 return; 5640 } 5641 status.currProductPurpose = ProductPurposeCd; 5642 if (isEmptyList(ProductPurposeCd)) { 5643 bts.setListData(bts.dataKeys.selProductPurposes, []); 5644 } else { 5645 bts.setListData(bts.dataKeys.selProductPurposes, [status.currProductPurpose]); 5646 } 5647 }; 5648 5649 var _pEle = sel('[data-ele-name="categoryWrapper"]'); 5650 var _pEle2 = sel('[data-ele-name="templateCategoryWrapper"]'); 5651 5652 /** 5653 * ìì ë¶ì ì í 5654 */ 5655 var selectSite = function(parentElement, selectedEl) { 5656 selAll('li', parentElement).forEach(function(_ele, idx){ 5657 _ele.classList.remove('active'); 5658 }); 5659 selectedEl && selectedEl.classList.add('active'); 5660 }; 5661 5662 var _renderPurposeList = function(callback) { 5663 var _listEle = sel('[data-ele-name="purposeList"]', _pEle); 5664 _listEle.innerHTML = ''; 5665 5666 var _selectedLi = null; 5667 var _currSelProductPurposes = bts.getsSelectedProductPurpose(); 5668 var _liAll = cloneEle(sel('[data-ele-name="templateWrapperTxItemAll"]', _pEle2)); 5669 5670 //ì´ê¸°í 5671 //setCurrProductPurpose([]); 5672 5673 //addClass(sel('i', _liAll), getClassNm()); 5674 sel('[data-column-name="selectLink"]', _liAll).onclick = function(e) { 5675 //bts.isDebug() && console.log(ns + ' :: _renderPurposeList all select', e, this); 5676 5677 if (isEmptyList(bts.getsSelectedProductPurpose())) { 5678 return false; 5679 } 5680 5681 MainChild.sendMsg('pgInit'); 5682 5683 setCurrProductPurpose([]); 5684 5685 selectSite(_listEle, this.parentElement); 5686 5687 MainChild.sendMsg('render'); 5688 }; 5689 5690 _listEle.append(_liAll); 5691 5692 getTargetProductPurposes().forEach(function(item){ 5693 if(bts.getData(bts.dataKeys.currProductType) != ""){ 5694 if(item.productTypeCd == bts.getData(bts.dataKeys.currProductType)){ 5695 var _li = cloneEle(sel('[data-ele-name="templateWrapperTxItem"]', _pEle2)); 5696 _li.dataset.ProductPurposeCd = item.productPurposeCd; 5697 5698 sel('[data-column-name="selectLink"]', _li).innerHTML = item.purposeNm; 5699 //addClass(sel('i', _li), getClassNm(item.txPartCd)); 5700 sel('[data-column-name="selectLink"]', _li).onclick = function(e) { 5701 // bts.isDebug() && console.log(ns + '.renderTxList select', e, this); 5702 5703 MainChild.sendMsg('pgInit'); 5704 5705 var _p = this.parentElement; 5706 var _selProductPurposes = bts.getsSelectedProductPurpose(); 5707 var _currTxPartCd = _p.dataset.ProductPurposeCd; 5708 5709 if (_selProductPurposes.includes(_currTxPartCd)) { 5710 _selProductPurposes = deleteSetItem(_selProductPurposes, _currTxPartCd); //íì¬ ì íë ìì´í ì í´ì 5711 } else { 5712 _selProductPurposes = addSetItem([], _currTxPartCd); 5713 } 5714 setCurrProductPurpose(_selProductPurposes); 5715 5716 if (isEmptyList(_selProductPurposes)) { 5717 selectSite(_listEle, _liAll); 5718 } else { 5719 selectSite(_listEle, _p); 5720 } 5721 5722 MainChild.sendMsg('render'); 5723 }; 5724 5725 if (_currSelProductPurposes.includes(item.productPurposeCd)) { 5726 5727 _selectedLi = _li; 5728 } 5729 5730 _listEle.append(_li); 5731 } 5732 }else{ 5733 var _li = cloneEle(sel('[data-ele-name="templateWrapperTxItem"]', _pEle2)); 5734 _li.dataset.ProductPurposeCd = item.productPurposeCd; 5735 5736 sel('[data-column-name="selectLink"]', _li).innerHTML = item.purposeNm; 5737 //addClass(sel('i', _li), getClassNm(item.txPartCd)); 5738 sel('[data-column-name="selectLink"]', _li).onclick = function(e) { 5739 // bts.isDebug() && console.log(ns + '.renderTxList select', e, this); 5740 5741 MainChild.sendMsg('pgInit'); 5742 5743 var _p = this.parentElement; 5744 var _selProductPurposes = bts.getsSelectedProductPurpose(); 5745 var _currTxPartCd = _p.dataset.ProductPurposeCd; 5746 5747 if (_selProductPurposes.includes(_currTxPartCd)) { 5748 _selProductPurposes = deleteSetItem(_selProductPurposes, _currTxPartCd); //íì¬ ì íë ìì´í ì í´ì 5749 } else { 5750 _selProductPurposes = addSetItem([], _currTxPartCd); 5751 } 5752 setCurrProductPurpose(_selProductPurposes); 5753 5754 if (isEmptyList(_selProductPurposes)) { 5755 selectSite(_listEle, _liAll); 5756 } else { 5757 selectSite(_listEle, _p); 5758 } 5759 5760 MainChild.sendMsg('render'); 5761 }; 5762 5763 if (_currSelProductPurposes.includes(item.productPurposeCd)) { 5764 5765 _selectedLi = _li; 5766 } 5767 5768 _listEle.append(_li); 5769 } 5770 5771 }); 5772 if (isEmptyList(_currSelProductPurposes)) { 5773 _selectedLi = _liAll; 5774 } 5775 selectSite(_listEle, _selectedLi); 5776 5777 callback(); 5778 }; 5779 var storePurposeNavSwiper = null; 5780 var _subCategory = {}; 5781 _subCategory.init = function() { 5782 setCurrProductPurpose(bts.getsSelectedProductPurpose()); 5783 bts.getsCdProductPurpose(function(datas) { 5784 status.ProductPurposes = datas; 5785 5786 _renderPurposeList(function(){ 5787 if(storePurposeNavSwiper != null) storePurposeNavSwiper.destroy(); 5788 storePurposeNavSwiper = new Swiper('[data-ele-name="categoryWrapper"].nav
5788-category2', { 5789 slidesPerView: 'auto', 5790 spaceBetween: 24, 5791 freeMode: true 5792 }); 5793 }); 5794 }); 5795 }; 5796 5797 _subCategory.setCurrProductPurpose = function(ProductPurposeCd){ 5798 setCurrProductPurpose(ProductPurposeCd); 5799 }; 5800 5801 return _subCategory; 5802 })(); 5803 5804 /*]]>*/ 5805 </script>
5805 5806 5807 <div class="view-sect pt-0 noline"> 5808 <div class="sort-filter clearfix"> 5809 5810<div class="float-left sh-label" data-ele-name="recentKeywordWrapper"> 5811 <span data-column-name="recentKeyword"></span><span></span><i data-column-name="itemDelete" class="icon-close3"></i> 5812</div> 5813<div class="clearfix"></div> 5814<div class="float-left" style="display:none;"> 5815 <span class="text-primary" data-column-name="totalCount">loading...</span> <span> </span> 5816 5817 5818 <span>Promotions</span> 5819 5820 5821 5822</div> 5823 5824<div class="float-right" data-ele-name="filterWrapper"> 5825 <div class="sort-wrp dropdown"> 5826 <!-- <a th:href="|#|" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"><i class="icon-sort"></i><span data-column-name="sortFilter" th:text="#{event.detail.msg.most.popular}">ì¸ê¸°ì</span></a> --> 5827 <a href="#" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"><i class="icon-sort"></i><span data-column-name="sortFilter">Most Recent</span></a> 5828 <div class="dropdown-menu dropdown-menu-right" aria-labelledby="dropdownMenuButton"> 5829 <a class="dropdown-item" href="javascript:;" onclick="subFilterForProduct.fn_tab3Page('popular','desc')" style="display: none"><span>Most Popular</span></a> 5830 <a class="dropdown-item" href="javascript:;" onclick="subFilterForProduct.fn_tab3Page('id','desc')"><span>Most Recent</span></a> 5831 <a class="dropdown-item" href="javascript:;" onclick="subFilterForProduct.fn_tab3Page('popular','desc')"><span>Most Popular</span></a> 5832 <a class="dropdown-item" href="javascript:;" onclick="subFilterForProduct.fn_tab3Page('dprice','asc')"><span>Lowest Price</span></a> 5833 <a class="dropdown-item" href="javascript:;" onclick="subFilterForProduct.fn_tab3Page('dprice','desc')"><span>Highest Price</span></a> 5834 <a class="dropdown-item" href="javascript:;" onclick="subFilterForProduct.fn_tab3Page('id','asc')" style="display: none">ì¤ëë ì</a> 5835 </div> 5836 </div> 5837</div>
5838<script> 5839 /*<![CDATA[*/ 5840 var subFilterForProduct = (function() { 5841 var ns = 'subFilterForProduct'; 5842 5843 var _btnClassNm = { 5844 disabled: 'text-basic', 5845 enabled: 'text-primary' 5846 }; 5847 var _filterWrapperClassNm = { 5848 disabled: 'off', 5849 enabled: 'on' 5850 }; 5851 5852 var _pEle = sel('[data-ele-name="filterWrapper"]'); 5853 5854 var _$el = { 5855 sortFilter: sel('[data-column-name="sortFilter"]', _pEle), 5856 recentKeywordWrapper: $('[data-ele-name="recentKeywordWrapper"]'), 5857 recentKeyword: $('[data-column-name="recentKeyword"]'), 5858 itemDelete: $('[data-column-name="itemDelete"]') 5859 }; 5860 5861 var isOn = function() { 5862 if (bts.hasSelectedTagForEvent()) { 5863 5864 return true; 5865 } else { 5866 5867 return false; 5868 } 5869 }; 5870 5871 var _setRecentKeyword = function() { 5872 5873 var _currSearchKeyword = bts.getData(bts.dataKeys.currSearchKeyword); 5874 if (isEmpty(_currSearchKeyword)) { 5875 5876 _$el.recentKeywordWrapper[0].style.display = 'none'; 5877 } else { 5878 5879 _$el.recentKeyword[0].innerHTML = _currSearchKeyword; 5880 _$el.itemDelete[0].onclick = function(e){ 5881 5882 MainChild.sendMsg('pgInit'); 5883 bts.setData(bts.dataKeys.currSearchKeyword, ''); 5884 5885 MainChild.sendMsg('render'); 5886 }; 5887 5888 _$el.recentKeywordWrapper[0].style.display = ''; 5889 } 5890 }; 5891 var _setDefaultFilter = function() { 5892 var v = bts.getSelectedTagLengthForEvent(); 5893 var _currSearchKeyword = bts.getData(bts.dataKeys.currSearchKeyword); 5894 if ((v == undefined || v <= 0) && 5895 isEmpty(_currSearchKeyword) && 5896 isEmptyList(bts.getsSelectedTxPart()) && 5897 isEmptyList(bts.getsSelectedTxPurpose()) && 5898 isEmptyList(bts.getsSelectedTxName()) 5899 ) { 5900 console.log('debug temp', 'search keyword', 'default'); 5901 bts.setDefaultFilterAll(); //steve 5902 } else { 5903 var key = bts.getsOrderKey(); 5904 var direction = bts.getsOrderDirection(); 5905 bts.setData(bts.dataKeys.currOrderKey, key); 5906 bts.setData(bts.dataKeys.currOrderDirection, direction); 5907 setFilterText(key, direction); 5908 console.log('debug temp', 'search keyword', 'no action'); 5909 } 5910 }; 5911 5912 var setFilterText = function(key, direction){ 5913 if(key == 'id') { 5914 if(direction == 'asc') { 5915 _$el.sortFilter.innerText = "ì¤ëë ì"; //TODO ë¤êµì´ 5916 } else if(direction == 'desc') { 5917 _$el.sortFilter.innerText = "Most Recent"; //ìµì ì 5918 } else { 5919 } 5920 } else if(key == 'popular') { 5921 _$el.sortFilter.innerText = "Most Popular"; //ì¸ê¸°ì 5922 } else if(key == 'dprice') { 5923 if(direction == 'asc') { 5924 _$el.sortFilter.innerText = "Lowest Price"; //ë®ì ê°ê²©ì 5925 } else if(direction == 'desc') { 5926 _$el.sortFilter.innerText = "Highest Price"; //ëì ê°ê²©ì 5927 } else { 5928 } 5929 } else { 5930 _$el.sortFilter.innerText = "Most Popular"; //ëì ê°ê²©ì 5931 } 5932 } 5933 5934 var _subFilter = {}; 5935 5936 _subFilter.fn_tab3Page = function(key, direction) { 5937 setFilterText(key, direction); 5938 bts.setData(bts.dataKeys.currOrderKey, key); 5939 bts.setData(bts.dataKeys.currOrderDirection, direction); 5940 MainChild.sendMsg('pgInit'); 5941 MainChild.sendMsg('render'); 5942 }; 5943 5944 _subFilter.init = function() { 5945 _setRecentKeyword(); 5946 _setDefaultFilter(); 5947 }; 5948 return _subFilter; 5949 })(); 5950 /*]]>*/ 5951</script>
5951 5952 5953 </div> 5954 <ul class="lst-default" data-ele-name="emptyList"> 5955 <li class="no-data"> 5956 No Search Results 5957 </li> 5958 </ul> 5959 <ul class="lst-default" data-ele-name="noSearchList" style="display: none"> 5960 <li class="no-data"> 5961 No Search Results 5962 </li> 5963 </ul> 5964 <ul class="lst-common mt17" data-ele-name="dataList" style="display: none"> 5965 </ul> 5966 </div> 5967 5968<!-- @íì´ì§ë¤ì´ì --> 5969<nav class="text-center" data-ele-name="pagination-base"> 5970 <ul data-ele-name="paginationEmpty" class="pagination" style="display:none"> 5971 <li class="active"><a href="javascript:void(0)">1</a></li> 5972 </ul> 5973 <ul data-ele-name="paginationList" class="pagination" style="display:none"> 5974 <li></li> 5975 </ul> 5976 <ul class="pagination" style="display:none"> 5977 <li class="page first" data-ele-name="templateWrapperPaginatorFirst"> 5978 <a href="javascript:void(0)" aria-label="First"><<</a> 5979 </li> 5980 <li data-ele-name="templateWrapperPaginatorPrev"> 5981 <a href="javascript:void(0)" aria-label="Previous">
5982 <span> </span> 5983 </a> 5984 </li> 5985 <li data-ele-name="templateWrapperPaginator"><a data-column-name="paginatorBtn" href="javascript:void(0)">1</a></li> 5986 <li data-ele-name="templateWrapperPaginatorNext"> 5987 <a href="javascript:void(0)" aria-label="Next"> 5988 <span> </span> 5989 </a> 5990 </li> 5991 <li class="page last" data-ele-name="templateWrapperPaginatorLast"> 5992 <a href="javascript:void(0)" aria-label="Last">>></a> 5993 </li> 5994 </ul> 5995</nav> 5996<nav class="text-center" data-ele-name="pagination-append"> 5997 <ul data-ele-name="paginationEmpty" class="pagination" style="display:none"> 5998 </ul> 5999 <ul data-ele-name="paginationList" class="pagination" style="display:none"> 6000 <li></li> 6001 </ul> 6002 <ul class="pagination" style="display:none"> 6003 <!-- append ë 첫íì´ì§ 기ë¥ì´ ë문ì display:none ì²ë¦¬ --> 6004 <li class="page first" data-ele-name="templateWrapperPaginatorFirst" style="display:none"> 6005 <a href="javascript:void(0)" aria-label="First"><<</a> 6006 </li> 6007 <!-- append ë ì´ì ì´ ì기 ë문ì display:none ì²ë¦¬ --> 6008 <li data-ele-name="templateWrapperPaginatorPrev" style="display:none"> 6009 </li> 6010 <li data-ele-name="templateWrapperPaginator" style="display:none"><a data-column-name="paginatorBtn" href="javascript:void(0)">1</a></li> 6011 <li data-ele-name="templateWrapperPaginatorNext" style=" 6012 width: 100%; clear: both 6013 "> 6014 <a href="javascript:void(0)" aria-label="Next" style="cursor: pointer"> 6015 <!--<div data-ele-name="loadingView" class="loading loading-sm"> 6016 <div class="txt">LOADING</div> 6017 </div>--> 6018 <!--FIXME ë보기 ë²í¼ ëì¤ë©´ ìì í기 191227--> 6019 <div data-ele-name="loadingView"> 6020 <div class="txt mt-4">More</div> 6021 </div> 6022 </a> 6023 <!-- <a th:href="|javascript:void(0)|" aria-label="Next" style="cursor: pointer"> 6024 <span> </span> <span th:text="#{common.msg.more}">ë 보기</span> 6025 </a> --> 6026 </li> 6027 <!-- append ë ë§ì§ë§ íì´ì§ 기ë¥ì´ ì기 ë문ì display:none ì²ë¦¬ --> 6028 <li class="page last" data-ele-name="templateWrapperPaginatorLast" style="display:none"> 6029 <a href="javascript:void(0)" aria-label="Last">>></a> 6030 </li> 6031 </ul> 6032</nav>
6033<script> 6034/*<![CDATA[*/ 6035var PaginatorType = { 6036 base: 'base', 6037 append: 'append', 6038 noUi: 'noUi', 6039 _end: '__end__' 6040}; 6041var Paginator = function(arg1, arg2) { 6042 6043 var ns = 'Paginator'; 6044 6045 var _p = {}; 6046 6047 _p.TYPE = PaginatorType; 6048 _p.parentEle = sel('[data-ele-name="pagination-base"]'); 6049 6050 _p.DEFAULT_CURR_PAGE = 1; 6051 _p.DEFAULT_PAGE_SIZE = 10; // í íì´ì§ì ëª ê°ë¥¼ 그리ëì§ 6052 _p.DEFAULT_TOTAL_COUNT = 0; 6053 6054 _p.currentPage; 6055 _p.pageIndex; 6056 _p.totalCount; 6057 _p.pageSize; 6058 _p.goTo; //hook 6059 6060 _p.PG_NAV_CNT = 10; // < 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 > 6061 6062 _p.startPgNavIdx; 6063 _p.endPgNavIdx; 6064 6065 _p.append; //hook 6066 _p._isEnd = false; //for append 6067 _p.isEnd = function(v) { 6068 return _p._isEnd || (0 < _p.totalCount ? false : true); 6069 }; 6070 _p.setEnd = function(v) { 6071 _p._isEnd = v; 6072 }; 6073 _p.isAppending = false; //for append 6074 6075 _p.getTotalPage = function() { 6076 6077 return _p.totalCount == 0 ? 1 : Math.ceil(_p.totalCount/_p.pageSize); 6078 }; 6079 _p.getCurrPage = function() { 6080 6081 if (_p.isAppend()) { 6082 return _p.currentPage; 6083 } 6084 6085 return _p.currentPage > paginator.getTotalPage() ? _p.DEFAULT_CURR_PAGE : _p.currentPage; 6086 }; 6087 _p.setCurrPage = function(currentPage) { 6088 6089 if (typeof currentPage == 'number') { 6090 6091 } else { 6092 6093 bts.err(ns + '.setCurrPage invalid type', typeof currentPage); 6094 return; 6095 } 6096 _p.currentPage = currentPage; 6097 }; 6098 _p.getStartPgNavIdx = function() { 6099 6100 _p.startPgNavIdx = Math.floor((_p.getCurrPage() - 1) / _p.PG_NAV_CNT) * _p.PG_NAV_CNT + 1; 6101 6102 return _p.startPgNavIdx; 6103 }; 6104 _p.getEndPgNavIdx = function() { 6105 6106 var _temp = (Math.floor((_p.getCurrPage() - 1) / _p.PG_NAV_CNT) + 1) * _p.PG_NAV_CNT; 6107 _p.endPgNavIdx = _temp < _p.getTotalPage() ? _temp : _p.getTotalPage(); 6108 6109 return _p.endPgNavIdx; 6110 }; 6111 _p.isBase = function() { 6112 6113 return (arg1 == undefined || arg1 == null || arg1 == '' || arg1 == _p.TYPE.base); 6114 }; 6115 _p.isAppend = function() { 6116 6117 return arg1 == _p.TYPE.append; 6118 }; 6119 _p.isNoUi = function() { 6120 6121 return arg1 == _p.TYPE.noUi; 6122 }; 6123 _p.isCustom = function() { 6124 6125 if (arg2 == undefined || arg2 == null || arg2 == '') { 6126 return false; 6127 } 6128 6129 if (arg2.nodeType == 1) { 6130 6131 } else { 6132 6133 bts.isDebug && console.log(ns + '.init :: invalid custom jquery element'); 6134 return false; 6135 } 6136 return true; 6137 }; 6138 _p.render = {}; 6139 _p.render.init = function() { 6140 // bts.isDebug() && console.log(ns + '.render.init :: ', _p.emptyEle, _p.listEle); 6141 _p.emptyEle.style.display = 'none'; 6142 _p.listEle.style.display = ''; 6143 }; 6144 _p.render.hide = function() { 6145 // bts.isDebug() && console.log(ns + '.render.hide :: ', _p.emptyEle, _p.listEle); 6146 _p.emptyEle.style.display = ''; 6147 _p.listEle.style.display = 'none'; 6148 }; 6149 var p; // _pEle alias 6150 6151 6152 var paginator = {}; 6153 paginator.getInfo = function() { 6154 6155 return { 6156 defaultPageSize: paginator.getDefaultPageSize(), 6157 currentPage: paginator.getCurrPage(), 6158 pageIndex: _p.pageIndex, 6159 totalCount: paginator.getTotalCount(), 6160 pageSize: paginator.getPageSize(), 6161 startPgNavIdx: _p.getStartPgNavIdx(), 6162 endPgNavIdx: _p.getEndPgNavIdx(), 6163 totalPage: paginator.getTotalPage(), 6164 isEnd: paginator.isEnd() 6165 } 6166 }; 6167 6168 paginator.getDefaultPageSize = function() { 6169 6170 return _p.DEFAULT_PAGE_SIZE; 6171 }; 6172 paginator.getPageSize = function() { 6173 6174 return _p.pageSize; 6175 }; 6176 paginator.setPageSize = function(pageSize) { 6177 6178 _p.pageSize = pageSize; 6179 }; 6180 paginator.getTotalCount = function() { 6181 6182 return _p.totalCount; 6183 }; 6184 paginator.setTotalCount = function(count) { 6185 6186 if (typeof count == 'number') { 6187 6188 } else { 6189 6190 bts.err(ns + '.setTotalCount invalid type', typeof count); 6191 return; 6192 } 6193 _p.totalCount = count; 6194 paginator.render(); 6195 }; 6196 paginator.getTotalPage = _p.getTotalPage; 6197 paginator.getCurrPage = _p.getCurrPage; 6198 paginator.setCurrPage = _p.setCurrPage; 6199 paginator.setGoTo = function(func) { 6200 6201 _p.goTo = func; 6202 }; 6203 paginator.setAppend = function(func) { 6204 6205 _p.append = func; 6206 }; 6207 paginator.isEnd = function() { 6208 6209 if (_p.isAppend()) { 6210 6211 } else { 6212 return false; // break; 6213 } 6214 6215 console.log('debug temp', ns + '.isEnd :: ', _p.isEnd()); 6216 return _p.isEnd(); 6217 }; 6218 paginator.setEnd = function(dataLength) { 6219 6220 if (_p.isAppend()) { 6221 6222 } else { 6223 return false; // break; 6224 } 6225 6226 if ((_p.getTotalPage() <= _p.getCurrPage()) || dataLength < _p.pageSize) { 6227 6228 _p.setEnd(true); 6229 _p.render.hide(); 6230 //bts.isDebug() && console.log(ns + '.setEnd :: ', dataLength, '<', _p.pageSize); 6231 } else { 6232 _p.render.init(); 6233 } 6234 }; 6235 paginator.init = function() { 6236 6237 _p.currentPage = _p.DEFAULT_CURR_PAGE; 6238 _p.pageIndex = _p.DEFAULT_CURR_PAGE - 1; 6239 _p.totalCount = _p.DEFAULT_TOTAL_COUNT; 6240 _p.pageSize = _p.DEFAULT_PAGE_SIZE; 6241 _p.goTo = function() { 6242 6243 console.log(ns + '.setGoTo function override.'); 6244 bts.override(); 6245 }; 6246 _p.append = function() { 6247 6248 console.log(ns + '.setAppend function override.'); 6249 bts.override(); 6250 }; 6251 6252 if (_p.isAppend()) { 6253 6254 _p.parentEle = sel('[data-ele-name="pagination-append"]'); 6255 _p.setEnd(false); 6256 } 6257 if (_p.isBase()) { 6258 6259 _p.parentEle = sel('[data-ele-name="pagination-base"]'); 6260 } 6261 if (_p.isCustom()) { 6262 6263 _p.parentEle = arg2; 6264 } 6265 if (_p.isNoUi()) { 6266 hideEles(_p.parentEle); 6267 } 6268 6269 paginator.render(); 6270 }; 6271 paginator.render = function() { 6272 6273 p = _p.parentEle; 6274 _p.emptyEle = sel('[data-ele-name=paginationEmpty]', p); 6275 _p.listEle = sel('[data-ele-name=paginationList]', p); 6276 6277 _p.listEle.innerHTML = ''; 6278 6279 if (_p.totalCount <= 0) { 6280 _p.render.hide(); 6281 return; 6282 } else { 6283 _p.render.init(); 6284 } 6285 6286 var firstEle = cloneEleP(sel('[data-ele-name=templateWrapperPaginatorFirst]', p)); 6287 // var firstEle = p.find('[data-ele-name=templateWrapperPaginatorFirst]')[0].cloneNode(); 6288 // firstEle.innerHTML = p.find('[data-ele-name=templateWrapperPaginatorFirst]')[0].innerHTML; 6289 firstEle.dataset.eleName = 'paginatorFirst'; 6290 if (_p.getCurrPage() <= 1) { 6291 6292 firstEle.classList.add('disabled'); 6293 } else { 6294 6295 firstEle.classList.remove('disabled'); 6296 firstEle.onclick = function() { 6297 6298 _p.setCurrPage(_p.DEFAULT_CURR_PAGE); 6299 _p.isBase() && _p.goTo(); 6300 }; 6301 } 6302 _p.listEle.appendChild(firstEle); 6303 6304 var prevEle = cloneEleP(sel('[data-ele-name=templateWrapperPaginatorPrev]', p)); 6305 // var prevEle = p.find('[data-ele-name=templateWrapperPaginatorPrev]')[0].cloneNode(); 6306 // prevEle.innerHTML = p.find('[data-ele-name=templateWrapperPaginatorPrev]')[0].innerHTML; 6307 prevEle.dataset.eleName = 'paginatorPrev'; 6308 if (_p.getCurrPage() <= 1) { 6309 6310 prevEle.classList.add('disabled'); 6311 } else { 6312 6313 prevEle.classList.remove('disabled'); 6314 prevEle.onclick = function() { 6315 6316 _p.setCurrPage(_p.getCurrPage() - 1); 6317 _p.isBase() && _p.goTo(); 6318 }; 6319 } 6320 _p.listEle.appendChild(prevEle); 6321 6322 var itemEle; 6323 for (var i = _p.getStartPgNavIdx(), length = _p.getEndPgNavIdx() + 1; i < length; i++) { 6324 6325 itemEle = cloneEleP(sel('[data-ele-name=templateWrapperPaginator]', p)); 6326 // itemEle = p.find('[data-ele-name=templateWrapperPaginator]')[0].cloneNode(); 6327 // itemEle.innerHTML = p.find('[data-ele-name=templateWrapperPaginator]')[0].innerHTML; 6328 itemEle.dataset.eleName = 'paginator'; 6329 6330 if (i == _p.getCurrPage()) { 6331 6332 itemEle.classList.add('active'); 6333 } else { 6334 6335 itemEle.classList.remove('active'); 6336 itemEle.dataset.elePgNo = i; 6337 sel('[data-column-name=paginatorBtn]', itemEle).onclick = function() { 6338 6339 _p.setCurrPage(Number(this.parentElement.dataset.elePgNo)); 6340 _p.isBase() && _p.goTo(); 6341 } 6342 } 6343 6344 sel('[data-column-name=paginatorBtn]', itemEle).innerHTML = i; 6345 6346 _p.listEle.appendChild(itemEle); 6347 } 6348 6349 var nextEle = cloneEleP(sel('[data-ele-name=templateWrapperPaginatorNext]', p)); 6350 nextEle.dataset.eleName = 'paginatorNext'; 6351 _p.listEle.appendChild(nextEle); 6352 if (_p.isBase()) { 6353 //if (_p.getEndPgNavIdx() >= _p.getTotalPage()) { } 6354 if (_p.getTotalPage() <= _p.getCurrPage()) { 6355 6356 nextEle.classList.add('disabled'); 6357 } else { 6358 6359 nextEle.classList.remove('disabled'); 6360 nextEle.onclick = function() { 6361 6362 _p.setCurrPage(_p.getCurrPage() + 1); 6363 _p.goTo(); 6364 }; 6365 } 6366 } else if (_p.isAppend()) { 6367 6368 _p.resolveAppend = function() { 6369 6370 if (_p.getTotalPage() <= _p.getCurrPage()) { 6371 6372 _p.setEnd(true); 6373 _p.render.hide(); 6374 } else { 6375 6376 _p.setCurrPage(_p.getCurrPage() + 1); 6377 _p.render.init(); 6378 } 6379 _p.append(); 6380 }; 6381 nextEle.onclick = function() { 6382 6383 _p.resolveAppend(); 6384 }; 6385 6386 var _isDemandResolve = function(corr) { 6387 var t = sel('[data-ele-name="loadingView"]', _p.listEle).offsetTop, 6388 tH = $(window).height(), 6389 sT = $(window).scrollTop(); 6390 corr = corr == null ? 0 : corr; //ë무 빨리 ë¹ê²¨ì§ë ê²ì ë§ê¸° ìí´ ë³´ì ê°.. 6391 bts.isDebug() && console.log(ns + '.render _isDemandResolve :: ' + 'corr: ' + corr + 't-tH: ' + (t-tH) + 'sT: ' + sT); 6392 return (t-tH+corr)<sT; 6393 }; 6394 6395 // 무íì¤í¬ë¡¤ 6396 $(window).scroll(function(){ 6397 // bts.isDebug() && console.log(ns + '.window scroll :: init'); 6398 if (_p.isAppending) { 6399 return false; 6400 } 6401 _p.isAppending = true; 6402 if (_p.isEnd()) { 6403 //bts.isDebug() && console.log(ns + '.window scroll :: paging end already.'); 6404 _p.isAppending = false; 6405 return false; 6406 } 6407 setTimeout(function(){ 6408 var corr = -20; //ë무 빨리 ë¹ê²¨ì§ë ê²ì ë§ê¸° ìí´ ë³´ì ê°.. 6409 if(_isDemandResolve(corr)){
6410 bts.isDebug() && console.log(ns + '.window scroll :: pg bottom.', _p.currentPage); 6411 _p.resolveAppend(); 6412 _p.isAppending = false; 6413 } else { 6414 //bts.isDebug() && console.log(ns + '.window scroll :: scrolling.'); 6415 _p.isAppending = false; 6416 } 6417 }, 300); 6418 }); 6419 } 6420 6421 var lastEle = cloneEleP(sel('[data-ele-name=templateWrapperPaginatorLast]', p)); 6422 // var lastEle = p.find('[data-ele-name=templateWrapperPaginatorLast]')[0].cloneNode(); 6423 // lastEle.innerHTML = p.find('[data-ele-name=templateWrapperPaginatorLast]')[0].innerHTML; 6424 lastEle.dataset.eleName = 'paginatorLast'; 6425 //if (_p.getEndPgNavIdx() >= _p.getTotalPage()) {} 6426 if (_p.getTotalPage() <= _p.getCurrPage()) { 6427 6428 lastEle.classList.add('disabled'); 6429 } else { 6430 6431 lastEle.classList.remove('disabled'); 6432 lastEle.onclick = function() { 6433 6434 _p.setCurrPage(_p.getTotalPage()); 6435 _p.isBase() && _p.goTo(); 6436 }; 6437 } 6438 _p.listEle.appendChild(lastEle); 6439 }; 6440 6441 paginator.init(); 6442 return paginator; 6443}; 6444/*]]>*/ 6445</script>
6445 6446<!--// @íì´ì§ë¤ì´ì --> 6447 6448 </div> 6449 </div> 6450 </div> 6451 </div> 6452 </div> 6453 </section> 6454 <!-- E : ì¤í¨ì¼ì´ --> 6455
6455<script src="https://cdnjs.cloudflare.com/ajax/libs/Swiper/4.5.0/js/swiper.min.js"></script>
6455 6456</div> 6457</div> 6458 <!-- //íì´ì§ ìì --> 6459 6460 <!-- </div> --> 6461 <!-- //container --> 6462 6463 6464 <!-- footer --> 6465 <!--<style>#gnb li { width:25%; }</style>--> 6466 6467 <div id="ft" class="btmBar" style="display: none"> 6468 <ul data-ele-name="gnbTabs"> 6469 <li class="home"><a href="/" onclick="sendEvent(this)">Home</a></li> 6470 <li class="event" data-feature="event"><a href="/event" onclick="sendEvent(this)">Promotions</a></li> 6471 <li class="review" data-feature="review"><a href="javascript:sts.loginUrlHref('/review')" onclick="sendEvent(this)">Reviews</a></li> 6472 <li class="board" data-feature="board"><a href="/board" onclick="sendEvent(this)" >ê²ìí</a></li> 6473 <!-- <li class="gnb8" th:classappend="${'/' + paths.first eq pathStore} ? active" data-feature="store"><a th:href="${pathStore}" th:onclick="|sendEvent(this)|" >ì¤í¨ì¼ì´</a></li> --> 6474 <!-- <li th:class="${'/' + paths.first eq pathTreatment} ? active"><a th:href="${pathTreatment}" th:onclick="|sendEvent(this)|" th:text="#{gnb.msg.title.treatment}">ì±íì ë³´</a></li> --> 6475 <!-- <li class="gnb4" th:classappend="${'/' + paths.first eq pathTreatmentMain || '/' + paths.first eq pathTreatment} ? active"><a th:href="${pathTreatmentMain}" th:onclick="|sendEvent(this)|" th:text="#{gnb.msg.title.treatment}">ì±íì ë³´</a></li> --> <!-- ìì 모ìë³´ê¸°ë¹¼ê³ ë°ìì ì²´í¬ --> 6476 <!-- <li class="gnb7" th:classappend="${'/' + paths.first eq pathVideo} ? active" data-feature="video"><a th:href="${pathVideo}" th:onclick="|sendEvent(this)|">그루ë°TV</a></li> --> 6477 <!-- <li class="gnb9" th:classappend="${'/' + paths.first eq pathEmployeeReview} ? active" data-feature="pathEmployeeReview"><a th:href="${pathEmployeeReview}" th:onclick="|sendEvent(this)|">ì§ì리뷰</a></li> --> 6478 <!-- <li class="emplyeeReview" th:classappend="${'/' + paths.first eq pathEmployeeReview} ? on" data-feature="pathEmployeeReview"><a th:href="|javascript:sts.loginUrlHref('${pathEmployeeReview}')|" th:onclick="|sendEvent(this)|">ì§ì리뷰</a></li> --> 6479 <!-- <li th:class="${'/' + paths.first eq pathHospital} ? active"><a th:href="${pathHospital}" th:onclick="|sendEvent(this)|" th:text="#{gnb.msg.title.clinics}">ë³ì찾기</a></li> 6480 <li th:class="${'/' + paths.first eq pathDoctor} ? active"><a th:href="${pathDoctor}" th:onclick="|sendEvent(this)|" th:text="#{gnb.msg.title.doctors}">ìì¬ì°¾ê¸°</a></li> --> 6481 6482 </ul> 6483 </div> 6484 6485 <!-- <footer id="ft" style="display: none"> 6486 <nav id="gnb"> 6487 <ul data-ele-name="gnbTabs"> 6488 <li class="gnb1" th:classappend="${#strings.isEmpty(paths.first)} ? active"><a th:href="${pathIndex}" th:onclick="|sendEvent(this)|" th:text="#{common.msg.home}">í</a></li> 6489 <li class="gnb2" th:classappend="${'/' + paths.first eq pathEvent} ? active" data-feature="event"><a th:href="${pathEvent}" th:onclick="|sendEvent(this)|" th:text="#{gnb.msg.title.event}">ì´ë²¤í¸</a></li> 6490 <li class="gnb6" th:classappend="${'/' + paths.first eq pathBoard} ? active" data-feature="board"><a th:href="${pathBoard}" th:onclick="|sendEvent(this)|" >ê²ìí</a></li> 6491 <li class="gnb3" th:classappend="${'/' + paths.first eq pathReview} ? active" data-feature="review"><a th:href="|javascript:sts.loginUrlHref('${pathReview}')|" th:onclick="|sendEvent(this)|" th:text="#{common.msg.title.procedure.reviews}">리뷰</a></li> 6492 <li class="gnb9" th:classappend="${'/' + paths.first eq pathEmployeeReview} ? active" data-feature="pathEmployeeReview"><a th:href="|javascript:sts.loginUrlHref('${pathEmployeeReview}')|" th:onclick="|sendEvent(this)|">ì§ì리뷰</a></li> 6493 </ul> 6494 </nav> 6495 <div class="sr-only">Copyright © BeautySocial.</div> 6496 </footer> --> 6497
6497<script> 6498 /*<![CDATA[*/ 6499 var footerFragment = {}; 6500 footerFragment.el = sel('#ft'); 6501 footerFragment.on = function() { 6502 footerFragment.el.style.display = ''; 6503 }; 6504 footerFragment.off = function() { 6505 footerFragment.el.style.display = 'none'; 6506 }; 6507 /*]]>*/ 6508</script>
6508 6509 6510
6510<script> 6511 /*<![CDATA[*/ 6512 footerFragment.initEvent = function() { 6513 // var btmMenuCountNum = $('#ft ul'), 6514 // btmMenuClassNum = btmMenuCountNum.length; 6515 // for (var i = 0; i < btmMenuClassNum; i++) { 6516 // var layoutClassCount = 'wd-' + btmMenuCountNum.eq(i).find('>li').length; 6517 // btmMenuCountNum.eq(i).addClass(layoutClassCount); 6518 // } 6519 6520 var _pEle = selAll('[data-ele-name="gnbTabs"] > li', footerFragment.el); 6521 resolveEles(_pEle, function(_selLi) { 6522 _selLi.onclick = function(e) { 6523 // console.log('1 [s]'); 6524 resolveEles(_pEle, function(_li) { 6525 if (_selLi == _li) { 6526 addClass(_selLi, 'on'); 6527 // console.log('1 [~] skip'); 6528 } else { 6529 removeClass(_li, 'on'); 6530 // console.log('1 [~] remove'); 6531 } 6532 }); 6533 // console.log('1 [e]'); 6534 }; 6535 sel('a', _selLi).onclick = function(e) { 6536 // console.log('2 [s]'); 6537 sendEvent(this); 6538 // console.log('2 [e]'); 6539 }; 6540 }); 6541 }; 6542 footerFragment.initEvent(); 6543 /*]]>*/ 6544 </script>
6544 6545 <!-- //footer --> 6546 6547</div> 6548<!-- //wrap --> 6549<!-- íë¨ ê³ ì ë²í¼--> 6550 6551 6552 6553 6554<!-- image viewer --> 6555<div id="pswp" class="pswp" tabindex="-1" role="dialog" aria-hidden="true" style="display: none;"> 6556 <div class="pswp__bg"></div> 6557 <div class="pswp__scroll-wrap"> 6558 <div class="pswp__container"> 6559 <div class="pswp__item"></div> 6560 <div class="pswp__item"></div> 6561 <div class="pswp__item"></div> 6562 </div> 6563 <div class="pswp__ui pswp__ui--hidden"> 6564 <div class="pswp__top-bar"> 6565 <div class="pswp__counter"></div> 6566 <button class="pswp__button pswp__button--close" title="Close (Esc)"></button> 6567 <button class="pswp__button pswp__button--zoom" title="Zoom"></button> 6568 <div class="pswp__preloader"> 6569 <div class="pswp__preloader__icn"> 6570 <div class="pswp__preloader__cut"> 6571 <div class="pswp__preloader__donut"></div> 6572 </div> 6573 </div> 6574 </div> 6575 </div> 6576 <button class="pswp__button pswp__button--arrow--left" title="Previous"> 6577 </button> 6578 <button class="pswp__button pswp__button--arrow--right" title="Next"> 6579 </button>
6580 </div> 6581 </div> 6582</div>
6583<script src="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/photoswipe.min.js"></script>
vendor: 2 bytes, line 6583
6583
6584<script src="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/photoswipe-ui-default.min.js"></script>
6584 6585 6586 6587<!-- image viewer --> 6588<div class="attchfile-images-preview-modal"> 6589 <!-- ì´ ëª¨ë¬ì ì´ë§í¬ì íëë§ ì¬ì©í©ëë¤ --> 6590 <a href="#" class="preview-close" style="display: block;">ë«ê¸°</a> 6591 <a href="#" class="ico download" style="display: none;">ë보기</a> 6592 <div class="inner"> 6593 <div class="modal-swiper-container"> 6594 <div class="swiper-wrapper"> 6595 <!-- swiperPreviewImagesLoad ì¤í¬ë¦½í¸ì ìí´ ì´ë¯¸ì§ê° ë³µì¬ë©ëë¤. --> 6596 </div> 6597 <!-- Swiper íì´ì§ë¤ì´ì --> 6598 <div class="swiper-pagination" onClick="(function(){$('.preview-close').trigger('click');})();"></div> 6599 </div> 6600 </div> 6601</div> 6602 6603<!-- <div th:include="~{mobile/$inc/app_download :: item}" th:remove="tag"></div> --> 6604 6605 6606 6607 6608 6609 6610 6611<!--
6611<script th:src="@{/js/datepicker.min.js}"></script>
6611 -->
6612<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.7/js/select2.min.js"></script>
vendor: 2 bytes, line 6612
6612
6613<script src="/js/common.min.js?ver=25-06-17-2226-ex"></script>
vendor: 2 bytes, line 6613
6613
6614<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.2.1/js/bootstrap.min.js" integrity="sha384-B0UglyR+jN6CkvvICOB2joaf5I4l3gm9GU6Hc1og6Ls7i6U/mkkaduKaBhlAXv9k" crossorigin="anonymous"></script>
6614 6615
6616<script> 6617 /*<![CDATA[*/ 6618 /** 6619 * requried mobile/$inc/script 6620 * requried mobile/$inc/footer 6621 */ 6622 var feToggle = (function () { 6623 var ns = 'FeatureToggle'; 6624 var featureCds = { 6625 event: 'event' 6626 , counsel: 'counsel' 6627 , review: 'review' 6628 }; 6629 var features = [ 6630 ['event', true, [bts.path.event, bts.path.eventDetail, bts.path.eventRecentlyList]] 6631 , ['counsel', true, [bts.path.estimate, bts.path.myPageEstimate]] 6632 , ['review', true, [bts.path.review, bts.path.reviewDetail, bts.path.reviewReg, bts.path.reviewEdit]] 6633 ]; 6634 var showList = function(featureCd, parentElement, lsSelector) { 6635 if (!parentElement){ 6636 return; 6637 } 6638 if (!lsSelector) lsSelector = 'li'; 6639 var els = selAll(lsSelector, parentElement); 6640 resolveEles(els, function(el) { 6641 el.style.width = ''; 6642 }); 6643 }; 6644 var hideList = function(featureCd, parentElement, lsSelector) { 6645 if (!parentElement){ 6646 return; 6647 } 6648 if (!lsSelector) lsSelector = 'li'; 6649 var els = selAll(lsSelector, parentElement); 6650 var hideCnt = 0; 6651 resolveEles(els, function(el) { 6652 if (el.dataset.feature == featureCd) { 6653 hideCnt++; 6654 } 6655 }); 6656 var elsLength = els.length - hideCnt; 6657 var itemWidth = (100 / elsLength); 6658 resolveEles(els, function(el) { 6659 el.style.width = itemWidth + '%'; 6660 }); 6661 }; 6662 var showTab = function(featureCd, parentElement, lsSelector) { 6663 if (!parentElement){ 6664 return; 6665 } 6666 if (!lsSelector) lsSelector = 'li'; 6667 var els = selAll(lsSelector, parentElement); 6668 resolveEles(els, function(el) { 6669 if (el.dataset.feature == featureCd) { 6670 showEles(el); 6671 } 6672 }); 6673 }; 6674 var hideTab = function(featureCd, parentElement, lsSelector) { 6675 if (!parentElement){ 6676 return; 6677 } 6678 if (!lsSelector) lsSelector = 'li'; 6679 var els = selAll(lsSelector, parentElement); 6680 resolveEles(els, function(el) { 6681 if (el.dataset.feature == featureCd) { 6682 hideEles(el); 6683 } 6684 }); 6685 }; 6686 var hide = function(data) { 6687 }; 6688 var resolve = function(data) { 6689 var isOn = data[1]; 6690 var featureCd = data[0]; 6691 var blockUrls = data[2]; 6692 if (!isOn) { 6693 isNotEmptyList(blockUrls) && blockUrls.forEach(function (url) { 6694 if (0 < location.href.indexOf(url)) { 6695 console.log(ns + '.resolve :: go to err.'); 6696 location.href = '/error-404'; 6697 return false; 6698 } 6699 }); 6700 } 6701 switch (featureCd) { 6702 case featureCds.event: 6703 var targetEls = selAll('[data-feature="event"]'); 6704 if (isOn) { 6705 showEles(targetEls); 6706 showList(featureCd, sel('#ft [data-ele-name="gnbTabs"]')); 6707 showTab(featureCd, sel('[data-ele-name="tabs"]')); 6708 } else { 6709 hideEles(targetEls); 6710 hideList(featureCd, sel('#ft [data-ele-name="gnbTabs"]')); 6711 hideTab(featureCd, sel('[data-ele-name="tabs"]')); 6712 } 6713 break; 6714 case featureCds.counsel: 6715 var targetEls = selAll('[data-feature="counsel"]'); 6716 if (isOn) { 6717 showEles(targetEls); 6718 } else { 6719 hideEles(targetEls); 6720 } 6721 break; 6722 case featureCds.review: 6723 var targetEls = selAll('[data-feature="' + featureCd + '"]'); 6724 if (isOn) { 6725 showEles(targetEls); 6726 showList(featureCd, sel('#ft [data-ele-name="gnbTabs"]')); 6727 showTab(featureCd, sel('[data-ele-name="tabs"]')); 6728 } else { 6729 hideEles(targetEls); 6730 hideList(featureCd, sel('#ft [data-ele-name="gnbTabs"]')); 6731 hideTab(featureCd, sel('[data-ele-name="tabs"]')); 6732 } 6733 break; 6734 default: 6735 var targetEls = selAll('[data-feature="' + featureCd + '"]'); 6736 if (isOn) { 6737 showEles(targetEls); 6738 } else { 6739 hideEles(targetEls); 6740 } 6741 break; 6742 } 6743 }; 6744 var resolveGlobal = function() { 6745 var targetEls = selAll('[data-off="Y"]'); 6746 if (targetEls) { 6747 hideEles(targetEls); 6748 } 6749 }; 6750 var run = function() {
6751 features.forEach(function (feature) { 6752 resolve(feature); 6753 }); 6754 resolveGlobal(); 6755 }; 6756 var _fe = {}; 6757 _fe.run = run; 6758 _fe.features = featureCds; 6759 _fe.isOn = function(featureCd) { 6760 var res = true; 6761 features.forEach(function (feature) { 6762 var _featureCd = feature[0]; 6763 var _isOn = feature[1]; 6764 if (_featureCd == featureCd) { 6765 res = _isOn; 6766 } 6767 }); 6768 return res; 6769 }; 6770 _fe.toggle = function(featureCd) { 6771 features.forEach(function (feature) { 6772 var _featureCd = feature[0]; 6773 var _isOn = feature[1]; 6774 if (_featureCd == featureCd) { 6775 feature[1] = !_isOn; 6776 } 6777 }); 6778 run(); 6779 }; 6780 return _fe; 6781 })(); 6782 bts.isProd() && feToggle.run(); 6783 6784 //IOS ì¶ì ìí 6785 /* if(bts.isIOS() || bts.isMacOS()){ 6786 if(sel('[data-temp_id="divice"]')){ 6787 hideEles(sel('[data-temp_id="divice"]')); 6788 } 6789 } */ 6790 /*]]>*/ 6791</script>
6791 6792
6793<script> 6794 /*<![CDATA[*/ 6795 jQuery(function($){ 6796 "use strict"; 6797 6798 $(window).scroll(function(){ 6799 var $body = $('body'); 6800 var pos = $(this).scrollTop(); 6801 pos > $(".tab-content").offset().top ? $body.addClass('nav-fix') : $body.removeClass('nav-fix'); 6802 }).trigger('scroll'); 6803 6804 // ìë¨ë°°ë 6805 new Swiper('.view-swiper', { 6806 loop: true, 6807 centeredSlides: true, 6808 observer: true, 6809 observeParents: true, 6810 pagination: { 6811 el: '.swiper-pagination-view', 6812 clickable:true 6813 }, 6814 }); 6815 }); 6816 6817 var paginator; 6818 var MainList = {}; 6819 MainList.ordrBy = ''; 6820 MainList.reqDt = ''; 6821 6822 MainList.resolveMsg = function(msg) { 6823 6824 switch(msg){ 6825 case 'pgInit': 6826 StoreMain.initPaging(); 6827 break; 6828 case 'render': 6829 StoreMain.initList(); 6830 break; 6831 case 'rerender': 6832 MainList.reqDt = DateUtil.getNowStr(); 6833 StoreMain.initList(); 6834 break; 6835 default: console.log('resolveMsg: invalid msg: ', msg); 6836 } 6837 }; 6838 6839 var StoreMain = (function(){ 6840 var ns = 'store.main'; 6841 6842 var _pEle = getContainer(); 6843 6844 var _el = { 6845 dataList: sel('[data-ele-name="dataList"]', _pEle), 6846 }; 6847 6848 function init(){ 6849 bts.isDebug() && console.log('Init list page.'); 6850 headerFragment.setTitle(bts.text.title_searchStore); 6851 onMain(); 6852 }; 6853 6854 function initMain(){ 6855 bts.initSearchOption(); 6856 initList(); 6857 }; 6858 6859 function initList(){ 6860 if(paginator) { 6861 paginator.init(); 6862 } else { 6863 paginator = new Paginator(PaginatorType.append); 6864 } 6865 paginator.setPageSize(Number($('input[name=main_limit]').val())); 6866 paginator.setCurrPage(Number($('input[name=main_pg]').val())); 6867 paginator.setAppend(appendList); 6868 6869 _toggleOrder($('input[name=main_ordrBy]').val()); 6870 6871 viewTabProduct.init(); 6872 //subCategoryProduct.init(); 6873 subFilterForProduct.init(); 6874 6875 var isInit = true; 6876 getList(isInit); 6877 }; 6878 6879 function _toggleOrder(ordrFilterName) { 6880 var _ordrConst = bts.consts.order; 6881 if (ordrFilterName == 'id') { 6882 6883 MainList.ordrBy = _ordrConst.id; 6884 } else if (ordrFilterName == 'popular') { 6885 6886 MainList.ordrBy = _ordrConst.popular; 6887 } else { 6888 MainList.ordrBy = _ordrConst.ordrDefault; //기본 ìµì ìì¼ë¡ ìì 6889 //MainList.ordrBy = _ordrConst.popular; //기본 ì¸ê¸°ìì¼ë¡ ìì 6890 } 6891 } 6892 6893 function appendList() { 6894 $('input[name=main_pg]').val(paginator.getCurrPage()); 6895 $('input[name=main_limit]').val(paginator.getPageSize()); 6896 $('input[name=main_ordrBy]')[0].value = MainList.ordrBy; 6897 6898 if (paginator.isEnd()) { 6899 bts.isDebug() && console.log(ns + '.appendList :: already last page.'); 6900 //bts.toast(bts.text.noti_lastPage); 6901 return; 6902 } 6903 6904 var pg = paginator.getCurrPage(); 6905 var limit = paginator.getPageSize(); 6906 placeholder.on(_el.dataList, paginator.getPageSize()); 6907 getsDataList(pg, limit, getSearchOptions(), function(dataList){ 6908 if (dataList && dataList.length > 0) { 6909 } else { 6910 bts.isDebug() && console.log(ns + '.appendList :: no data.'); 6911 overlay.off(); 6912 placeholder.off(_el.dataList); 6913 return; 6914 } 6915 renderListMain(dataList); 6916 }); 6917 }; 6918 6919 function renderListMain(_dataList) { 6920 for (var i = 0, length = _dataList.length; i < length; i ++) { 6921 listItems.renderRowStore(_dataList[i], _el.dataList, function(event, _this){ 6922 sendEvent(_this, event); 6923 }, function(rowEl) { 6924 placeholder.off(_el.dataList, i); 6925 });
6926 } 6927 overlay.off(); 6928 placeholder.off(_el.dataList); 6929 lazyLoading().setImages(); 6930 paginator.setEnd(_dataList.length); 6931 }; 6932 6933 function initPaging(){ 6934 $('input[name=main_limit]').val(bts.defaults.pageSize); 6935 $('input[name=main_pg]').val(bts.defaults.pageStart); 6936 renderTotalCount(0); 6937 renderListMainInit(); 6938 }; 6939 6940 function renderTotalCount(cnt) { 6941 if (cnt) { 6942 } else { 6943 cnt = '0'; 6944 } 6945 $('[data-column-name="totalCount"]')[0].innerHTML = StringUtil.numberWithCommas(cnt); 6946 }; 6947 6948 function renderEmptyListMain() { 6949 var emptyListEle = sel('[data-ele-name=emptyList]'); 6950 showEles(emptyListEle); 6951 6952 var noSearchListEle = sel('[data-ele-name=noSearchList]'); 6953 hideEles(noSearchListEle); 6954 6955 var dataListEle = sel('[data-ele-name=dataList]'); 6956 hideEles(dataListEle); 6957 6958 return; 6959 }; 6960 6961 function renderNoSearchListMain() { 6962 6963 var emptyListEle = sel('[data-ele-name=emptyList]'); 6964 hideEles(emptyListEle); 6965 6966 var noSearchListEle = sel('[data-ele-name=noSearchList]'); 6967 showEles(noSearchListEle); 6968 6969 var dataListEle =_el.dataList; 6970 hideEles(dataListEle); 6971 6972 return; 6973 }; 6974 6975 function renderListMainInit() { 6976 var emptyListEle = sel('[data-ele-name=emptyList]'); 6977 hideEles(emptyListEle); 6978 6979 var noSearchListEle = sel('[data-ele-name=noSearchList]'); 6980 hideEles(noSearchListEle); 6981 6982 var dataListEle = sel('[data-ele-name=dataList]'); 6983 showEles(dataListEle); 6984 6985 dataListEle.innerHTML = ''; 6986 }; 6987 6988 function getList(isInit) { 6989 6990 $('input[name=main_pg]').val(paginator.getCurrPage()); 6991 $('input[name=main_limit]').val(paginator.getPageSize()); 6992 $('input[name=main_ordrBy]')[0].value = MainList.ordrBy; 6993 6994 renderListMainInit(); 6995 placeholder.on(_el.dataList, paginator.getPageSize()); 6996 getCount(getSearchOptions(), function(res){ 6997 if (res.body == undefined || res.body.count == undefined) { 6998 renderEmptyListMain(); 6999 paginator.setTotalCount(0); 7000 renderTotalCount(0); 7001 overlay.off(); 7002 placeholder.off(_el.dataList); 7003 return; 7004 } 7005 if(res.body.count <= 0) { 7006 renderNoSearchListMain(); 7007 paginator.setTotalCount(0); 7008 renderTotalCount(0); 7009 overlay.off(); 7010 placeholder.off(_el.dataList); 7011 return; 7012 } 7013 paginator.setTotalCount(res.body.count); 7014 if(paginator.getTotalCount() <= 0) { 7015 renderNoSearchListMain(); 7016 renderTotalCount(0); 7017 overlay.off(); 7018 placeholder.off(_el.dataList); 7019 return false; 7020 } 7021 renderTotalCount(paginator.getTotalCount()); 7022 7023 var pg = paginator.getCurrPage(); 7024 var limit = paginator.getPageSize(); 7025 if (isInit) { 7026 // íì¬ íì´ì§ê¹ì§ 모ë ë´ì©ì init í¨. 7027 pg = bts.defaults.pageStart_append; 7028 limit = paginator.getPageSize() * paginator.getCurrPage(); 7029 } 7030 //renderListMainInit(); 7031 getsDataList(pg, limit, getSearchOptions(), function(dataList){ 7032 if (dataList && dataList.length > 0) { 7033 7034 } else { 7035 7036 renderNoSearchListMain(); 7037 overlay.off(); 7038 placeholder.off(_el.dataList); 7039 return; 7040 } 7041 renderListMain(dataList); 7042 });
7043 }); 7044 }; 7045 7046 function getsDataList(pg, limit, searchOptions, callback) { 7047 7048 var _queryString = $.param(Object.assign({ 7049 limit: limit, 7050 pg: pg 7051 }, searchOptions)); 7052 ajax({ 7053 url: bts.url.getSapi() + '/commerce' + '?' + _queryString, 7054 overlayManual: true, 7055 success: function(res) { 7056 //console.log(res); 7057 if (res.body && res.body.data && res.body.data.datas) { 7058 7059 } else { 7060 7061 overlay.off(); 7062 placeholder.off(_el.dataList); 7063 return; 7064 } 7065 callback(res.body.data.datas); 7066 }, error: function(e) { 7067 overlay.off(); 7068 placeholder.off(_el.dataList); 7069 7070 console.log('err'); 7071 } 7072 }); 7073 }; 7074 7075 function getCount(searchOptions, callback) { 7076 var _queryString = $.param(Object.assign({}, searchOptions)); 7077 ajax({ 7078 url: bts.url.getSapi() + '/commerce/count' + '?' + _queryString, 7079 overlayManual: true, 7080 alertManual: true, 7081 success: function(res) { 7082 callback(res); 7083 }, error: function(e) { 7084 7085 overlay.off(); 7086 placeholder.off(_el.dataList); 7087 console.log('err count'); 7088 } 7089 }); 7090 }; 7091 7092 var _interface = new List(); 7093 _interface.init = init; 7094 _interface.initList = initList; 7095 _interface.initMain = initMain; 7096 _interface.initPaging = initPaging; 7097 return _interface; 7098 })(); 7099 7100 StoreMain.init(); 7101 window.requestAnimationFrame(function(){ 7102 StoreMain.initMain(); 7103 }); 7104 /*]]>*/ 7105</script>
7105 7106<!-- <th:block th:include="~{mobile/$inc/app_download :: item}" th:remove="tag"></div> --> 7107 7108<!--
7108<script th:include="~{$inc/naver-analytics :: item}" th:remove="tag"></script>
7108 --> 7109</body> 7110</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.