PageSourceSearch

https://groominglab.co.kr/ind-script/optimizer_user.php?filename=l…6df93dbf04cff3a7b2eafae&t=1629628063&user=T

js groominglab.co.kr collected 2026-09-26 08:04:19 UTC 182,752 bytes, 4,144 lines download raw bytes

1
2// 카카오톡 상품공유
3// http://webgood.co.kr/board/free/read.html?no=41338&board_no=3 내용을 보시고 자바스크립트 코드를 생성해주세요.
4///////////////////////////////////////////////////////////////////////////////////////////////////////////////
5
6Kakao.init('ac240304ad916f6273ded78955bb34f7'); // 좌측 따옴표 안에 고객님의 자바스크립트 코드를 넣어주세요.
7
8///////////////////////////////////////////////////////////////////////////////////////////////////////////////
9
10// 이하 수정금지
11// 카카오링크 버튼을 생성합니다. 처음 한번만 호출하면 됩니다.
12Kakao.Link.createDefaultButton({
13    container: '#kakao-link-btn',
14    objectType: 'feed',
15    content: {
16        title: document.title,
17        description:
18        $jq('meta[name=description]').attr('content') ||
19        $jq('meta[name=keywords]').attr('content'),
20        imageUrl: $jq('meta[property="og:image"]').attr('content'),
21        link: {
22            webUrl: document.location.href,
23            mobileWebUrl: document.location.href,
24        },
25    },
26    social: {
27        likeCount: 286,
28        commentCount: 45,
29        sharedCount: 845,
30    },
31    buttons: [
32        {
33            title: '열기',
34            link: {
35                mobileWebUrl: document.location.href,
36                webUrl: document.location.href,
37            },
38        },
39    ],
40});
41
42
43
44// 구매토글
45$(document).ready(function() {
46    var $body = $('body');
47    var $buy_wrapper = $('.buy-wrapper');
48    
49    $('.btn-down-wrapper, .bg-buy-wrapper').click(function() {
50        //$newAt('.buy-scroll-box').scrollbar('destroy');
51        if(tl_isMobile()) {
52        } else {
53        	$jq('.buy-scroll-box').mCustomScrollbar("destroy");
54        }
55        $jq('.buy-scroll-box').removeClass('scrollbar_box');
56        $buy_wrapper.addClass('down');
57        setTimeout(function() {
58        	$body.removeClass('bottom-on');
59        	$buy_wrapper.removeClass('down');
60        },400); //시간은 .buy-wrapper.down transition 시간에 맞춘다
61        setTimeout(function() {
62            $('.detailArea').attr('style', null);
63        },1000);
64    });
65    
66    var btop = $buy_wrapper.offset().top + $buy_wrapper.height(); //스크롤 되면서 fixed로 전환되는 값이 있어면 추감한다.
67    $(window).resize(function() {
68 		if(!$body.hasClass('bottom-on')) {
69    		btop = $buy_wrapper.offset().top + $buy_wrapper.height();
70    	}
71    });
72    
73    $(window).scroll(function() {
74        
75        if(!$body.hasClass('bottom-on')) {
76    		btop = $buy_wrapper.offset().top + $buy_wrapper.height();
77    	}
78        
79    	if(btop < $(window).scrollTop()) {
80        	$body.addClass('bbo-on');
81        } else {
82        	$body.removeClass('bbo-on');
83        }
84        
85        if($body.hasClass('bottom-on')) {
86        	if(btop + 100 > $(window).scrollTop()) {
87                $('.btn-down-wrapper').trigger('click');
88            }
89        }
90    });
91    
92    $('.additional .toggle').click(function() {
93    	if(!$('body').hasClass('bottom-on')) {
94            setTimeout(function() {
95    			btop = $buy_wrapper.offset().top + $buy_wrapper.height();
96            },50);
97    	}
98    });
99    
100    $('.btn-buy-open').click(function() {
101        
102        //scroll
103        //$jq('.buy-scroll-box').addClass('scrollbar_box').scrollbar({'disableBodyScroll':true});
104        
105        if(tl_isMobile()) {
106           	$jq('.buy-scroll-box').addClass('scrollbar_box').css({'overflow-y':'auto'});
107        } else {
108            $jq('.buy-scroll-box').addClass('scrollbar_box').mCustomScrollbar({
109                theme:"dark",
110                mouseWheel:{ scrollAmount: 700 }
111            });
112        }
113        
114    	$('.detailArea').css({'min-height':$('.detailArea').height()+'px'});
115        $('body').addClass('bottom-on');
116        var bh = $('.btn-down-wrapper').height();
117    	$('.btn-down-wrapper').css('top', '-' +bh+ 'px');
118        
119    });
120});
121
122
123
124// 상품이미지 슬라이드
125//$jq(function() {
126    if ($jq('.listImg ul>li')[0] && $jq('.listImg ul>li').length >= 1) {
127        var $box = $jq('#big_img_box');
128        var one_big_img = $box.data('one_big_img');
129        var big_img_html = '';
130        var $imgs = $jq('.listImg ul>li>img');
131        $imgs.each(function (idx, el) {
132            var $img = $jq(this);
133            var thumb = $img.attr('src');
134            var src = thumb.replace('/small/', '/big/');
135            if($imgs.length == 1 || idx == 0) src = one_big_img;
136            big_img_html += '<div data-thumb="' + thumb + '" data-src="' + src + '"><img src="' + src + '" class="BigImage" alt="" ></div>';
137            $box.html(big_img_html);
138        });
139        $jq('.listImg,.thumbnail').hide();
140        $box.lightSlider({
141            gallery:true,
142            item:1,
143            loop:true,
144            thumbItem:5,
145            slideMargin:0,
146            enableDrag:true,
147            currentPagerPosition:'left',
148        });
149    }
150//});
151
152
153
154// 상세페이지 유튜브추가시 가로 100프로 맞추기
155$('#prdDetailContent iframe').wrap('<div class="youtube_wrap"></div>')
156
157/**
158 * 상품상세 섬네일 롤링
159 */
160$(document).ready(function(){
161    $.fn.prdImg = function(parm){
162        var index = 0;
163        var target = parm.target;
164        var view = parm.view;
165        var listWrap = target.find('.xans-product-addimage');
166        var limit = listWrap.find('> ul > li').length;
167        var ul = target.find('.xans-product-addimage > ul');
168        var liFirst = target.find('.xans-product-addimage > ul > li:first-child');
169        var liWidth = parseInt(liFirst.width());
170        var liHeight = parseInt(liFirst.height());
171        var blockWidth = liWidth + parseInt(liFirst.css('marginRight')) + parseInt(liFirst.css('marginLeft'));
172        var columWidth = blockWidth * view;
173        var colum = Math.ceil(limit / view);
174
175        var roll = {
176            init : function(){
177                function struct(){
178                    var ulWidth = limit * parseInt(blockWidth);
179                    listWrap.append('<button type="button" class="prev">이전</button>');
180                    listWrap.append('<button type="button" class="next">다음</button>');
181                    ul.css({'position':'absolute', 'left':0, 'top':0, 'width':ulWidth});
182                    listWrap.find('> ul > li').each(function(){
183                        $(this).css({'float':'left'});
184                    });
185                    listWrap.css({'position':'relative', 'height':liHeight});
186
187                    var prev = listWrap.find('.prev');
188                    var next = listWrap.find('.next');
189
190                    prev.click(function(){
191                        if(index > 0){
192                            index --;
193                        }
194                        roll.slide(index);
195                    });
196                    next.click(function(){
197                        if(index < (colum-1) ){
198                            index ++;
199                        }
200                        roll.slide(index);
201                    });
202                    if(index == 0){
203                        prev.hide();
204                    } else {
205                        prev.show();
206                    }
207                    if(index >= (colum-1)){
208                        next.hide();
209                    } else {
210                        next.show();
211                    }
212                }
213                if(limit > view){
214                    struct();
215                }
216            },
217            slide : function(index){
218                var left = '-' + (index * columWidth) +'px';
219                var prev = listWrap.find('.prev');
220                var next = listWrap.find('.next');
221                if(index == 0){
222                    prev.hide();
223                } else {
224                    prev.show();
225                }
226                if(index >= (colum-1)){
227                    next.hide();
228                } else {
229                    next.show();
230                }
231                ul.stop().animate({'left':left},500);
232            }
233        }
234        roll.init();
235    };
236
237    // 함수호출 : 상품상세 페이지
238    $.fn.prdImg({
239        target : $('.xans-product-image'),
240        view : 5
241    });
242
243    // 함수호출 : 상품확대보기팝업
244    $.fn.prdImg({
245        target : $('.xans-product-zoom'),
246        view : 5
247    });
248});
249$jq(function() {
250	var $owl = $jq('#cp535 .ul');
251    var len = $jq('#cp535 .ul > .xans-record-').length;
252    if(len >= 6) {
253        $owl.owlTimer({
254            //반응형
255            responsive : {
256                0: {
257                    items:3
258                },
259                960 : {
260                    items:5
261                }
262            },
263            //\items:5,					//화면에 보이는 개수
264            margin:15,					//슬라이드 간격
265            stagePadding:10,			//좌우측 보이는 정도
266            smartSpeed:500,				//슬라이드 속도
267            nav:true,					//좌우화살표
268            loop:true,					//루프
269            autoplay:true,				//자동롤링
270            autoplayTimeout:4000,		//자동롤링 시간간격 (1000=1초)
271            autoplayHoverPause:true,	//마우스오버시 정지
272            video:true,					//비디오재생
273            lazyLoad:false,				//레이지로드
274            center:true,				//중앙정렬
275            autowidth:true,				//자동 넓이 설정
276            autoHeight:true,			//자동 높이 설정
277            animateIn:''				//fadeIn 가능
278        });
279    } else  {
280        $jq('#cp535 .ul').add('no-slider');
281        // #cp535 .ul.no-slider 클래스를 기준으로 css로 대체할 수 있다.
282        // $jq('#cp535 .ul > .xans-record-').css({'display':'inline-block','margin':'0 5px'});
283    }
284    //window.owl = $owl;
285});
286/**
287 * 상품상세 사용후기
288 */
289$(document).ready(function(){
290    $('.xans-product-review a').click(function(e) {
291        e.preventDefault();
292
293        var no = $(this).attr('href').replace(/(\S*)[?&]no=(\d+)(\S*)/g, '$2');
294        var $obj = $('#product-review-read_'+no);
295
296        //로드된 엘리먼트 존재 체크
297        if ($obj.length > 0) {
298            if ($obj.css('display') =='none') {
299                $obj.show();
300            } else {
301                $obj.hide();
302            }
303            return;
304        }
305
306        REVIEW.getReadData($(this));
307    });
308
309    // 구매후기 탭 바로 활성화처리
310    var href = document.location.href.split('#')[1];
311    if (href == 'use_review' || href == 'prdReview') {
312        $('a[name="use_review"]').trigger('click');
313    }
314});
315
316var PARENT = '';
317
318var OPEN_REVIEW = '';
319
320var REVIEW = {
321    getReadData : function(obj, eType)
322    {
323        if (obj != undefined) {
324            PARENT = obj;
325            var sHref = obj.attr('href');
326            var pNode = obj.parents('li');
327            var pass_check = '&pass_check=F';
328        } else {
329            var sHref = PARENT.attr('href');
330            var pNode = PARENT.parents('li');
331            var pass_check = '&pass_check=T';
332        }
333
334        var sQuery = sHref.split('?');
335
336        var sQueryNo = sQuery[1].split('=');
337        if (OPEN_REVIEW == sQueryNo[1]) {
338            $('#product-review-read').remove();
339            OPEN_REVIEW = '';
340            return false;
341        } else {
342            OPEN_REVIEW = sQueryNo[1];
343        }
344
345        $.ajax({
346            url : '/exec/front/board/product/4?'+sQuery[1]+pass_check,
347            dataType: 'json',
348            success: function(data) {
349                $('#product-review-read').remove();
350
351                var sPath = document.location.pathname;
352                var sPattern = /^\/product\/(.+)\/([0-9]+)(\/.*)/;
353                var aMatchResult = sPath.match(sPattern);
354
355                if (aMatchResult) {
356                    var iProductNo = aMatchResult[2];
357                } else {
358                    var iProductNo = getQueryString('product_no');
359                }
360
361                var aHtml = [];
362
363                //읽기 권한 체크
364                if (false === data.read_auth && eType == undefined) {
365                    alert(decodeURIComponent(data.alertMSG));
366                    return false;
367                }
368
369                if (data.is_secret == true) {
370                    // 비밀글 비밀번호 입력 폼
371                    aHtml.push('<form name="SecretForm_4" id="SecretForm_4">');
372                    aHtml.push('<input type="text" name="a" style="display:none;">');
373                    aHtml.push('<div class="view secret">');
374                    aHtml.push('<span class="alert">이 글은 비밀글입니다.<br>비밀번호를 입력하여 주세요.</span>');
375                    aHtml.push('<p><input type="password" id="secure_password" name="secure_password" onkeydown="if (event.keyCode == 13) '+data.action_pass_submit+'"> <input type="button" value="확인" onclick="'+data.action_pass_submit+'" class="btnStrong"></p>');
376                    aHtml.push('</div>');
377                    aHtml.push('</form>');
378                } else {
379                    // 글 내용
380                    if (data.read['content_image'] != null) {
381                        var sImg = data.read['content_image'];
382                    } else {
383                        var sImg = '';
384                    }
385
386                    aHtml.push('<div class="view">');
387					aHtml.push('<div id="ec-ucc-media-box-'+ data.read['no'] +'"></div>');
388                    aHtml.push('<p class="attach">'+sImg+'</p>');
389                    aHtml.push('<p>'+data.read['content']+'</p>');
390                    aHtml.push('</div>');
391                    aHtml.push('<div class="ec-base-button">');
392                    if (data.comment != undefined) {
393                        aHtml.push('<div class="gLeft">');
394                        aHtml.push('<a href="#none" class="btnNormal mini" onclick="REVIEW.comment_view('+data.read['no']+');">댓글보기 <em>('+data.read['comment_count']+')</em></a> <a href="#none" class="btnNormal mini" onclick="REVIEW.comment_write(this);"><span class="ico write"></span> 쓰기</a>');
395                        aHtml.push('</div>');
396                    }
397                    aHtml.push('<a href="/board/product/modify.html?board_act=edit&no='+data.no+'&board_no=4&link_product_no='+iProductNo+'" class="btnNormal mini">수정</a>');
398                    aHtml.push('</div>');
399
400                    // 댓글리스트
401                    if (data.comment != undefined && data.comment.length != undefined) {
402                        aHtml.push('<ul class="boardComment" id="commentList_'+data.read['no']+'" style="display:none;">');
403                        for (var i=0; data.comment.length > i; i++) {
404                            //댓글리스트
405                            if (data.comment[i]['comment_reply_css'] == undefined) {
406                                aHtml.push('<li id="'+data.comment[i]['comment_reply_id']+'">');
407                                aHtml.push('<div class="commentInfo">');
408                                aHtml.push('<strong class="name">'+data.comment[i]['member_icon']+' '+data.comment[i]['comment_name']+'</strong>');
409                                aHtml.push('<span class="date">'+data.comment[i]['comment_write_date']+'</span>');
410                                aHtml.push('<span class="grade '+data.use_point+'"><img src="//img.echosting.cafe24.com/skin/mobile_ko_KR/board/ico_star'+data.comment[i]['comment_point_count']+'.png" alt="'+data.comment[i]['comment_point_count']+'점" /></span>');
411                                aHtml.push('</div>');
412                                aHtml.push('<p class="comment">'+data.comment[i]['comment_content']+'</p>');
413                                if (data.comment[i]['comment_reply_display'] == true) {
414                                    aHtml.push('<div class="ec-base-button">'+'<div class="gLeft">');
415                                    aHtml.push('<a href="#none" class="btnNormal mini" onclick="REVIEW.comment_reply_view('+data.comment[i]['comment_no']+')">댓글의 댓글 <em>('+data.comment[i]['comment_reply_count']+')</em></a>');
416                                    aHtml.push('<a href="#none" class="btnNormal mini" onclick="'+data.comment[i]['action_comment_reply_new']+'"><span class="ico write"></span> 쓰기</a>');
417                                    aHtml.push('</div>'+'</div>');
418                                }
419                                aHtml.push('</li>');
420                            } else {
421                                //댓글의 댓글리스트
422                                aHtml.push('<li class="replyArea" style="display:none;" id="'+data.comment[i]['comment_reply_id']+'">');
423                                aHtml.push('<div class="commentInfo">');
424                                aHtml.push('<strong class="name">'+data.comment[i]['member_icon']+' '+data.comment[i]['comment_name']+'</strong>');
425                                aHtml.push('<span class="date">'+data.comment[i]['comment_write_date']+'</span>');
426                                aHtml.push('</div>');
427                                aHtml.push('<p class="comment">'+data.comment[i]['comment_content']+'</p>');
428                                aHtml.push('</li>');
429                            }
430                        }
431                        aHtml.push('</ul>');
432                    }
433
434                    // 댓글쓰기
435                    if (data.comment_write != undefined) {
436                        aHtml.push('<form name="commentWriteForm_4'+data.key+'" id="commentWriteForm_4'+data.key+'" style="display:none;">');
437                        aHtml.push('<div class="memoCont">');
438                        aHtml.push('<div class="info"><p class="name"><strong class="label">이름</strong>' +data.comment_write['comment_name']+ '</p><p class="password"><strong class="label">비밀번호</strong>' +data.comment_write['comment_password']+ '</p></div>');
439                        aHtml.push('<p class="ec-base-help ' +data.comment_write['password_rule_help_display_class']+ '">영문 대소문자/숫자/특수문자 중 2가지 이상 조합, 10자~16자</p>');
440                        aHtml.push('<div class="byteRating"><p class="byte ' +data.comment_write['use_comment_size']+ '">/ byte</p><p class="rating ' +data.comment_write['use_point']+ '"><strong class="label">평점</strong>' +data.comment_write['comment_point']+ '</p></div>');
441                        aHtml.push('<div class="comment"><strong class="label hide">내용</strong>' +data.comment_write['comment']+ '</div>');
442                        aHtml.push('<div class="captcha ' +data.comment_write['use_captcha']+ '"><span class="img"></span><div class="form">' +data.comment_write['captcha_image']+data.comment_write['captcha_refresh']+data.comment_write['captcha']+ '<p>왼쪽의 문자를 공백없이 입력하세요.<br>(대소문자구분)</p></div></div>');
443                        aHtml.push('<div class="submit"><a href="#none" onclick="' +data.comment_write['action_comment_insert']+ '" class="btnStrong mini">댓글 입력</a></div>');
444                        aHtml.push('</div>');
445                        aHtml.push('</form>');
446                    }
447
448                    // 댓글의 댓글쓰기
449
450                    if (data.comment_reply != undefined) {
451                        aHtml.push('<form name="commentReplyWriteForm_4'+data.key+'" id="commentReplyWriteForm_4'+data.key+'" style="display:none">');
452                        aHtml.push('<div class="memoCont reply">');
453                        aHtml.push('<div class="info"><p class="name"><strong class="label">이름</strong>' +data.comment_reply['comment_name']+ '</p><p class="password"><strong class="label">비밀번호</strong>' +data.comment_reply['comment_password']+ '</p></div>');
454                        aHtml.push('<p class="ec-base-help ' +data.comment_reply['password_rule_help_display_class']+ '">영문 대소문자/숫자/특수문자 중 2가지 이상 조합, 10자~16자</p>');
455                        aHtml.push('<div class="comment"><strong class="label hide">내용</strong>' +data.comment_reply['comment']+ '</div>');
456                        aHtml.push('<p class="text '+data.comment_reply['use_comment_size']+'">'+data.comment_reply['comment_byte']+' / '+data.comment_reply['comment_size']+' byte</p>');
457                        aHtml.push('<div class="captcha ' +data.comment_reply['use_captcha']+ '"><span class="img"></span><div class="form">' +data.comment_reply['captcha_image']+data.comment_reply['captcha_refresh']+data.comment_reply['captcha']+ '<p>왼쪽의 문자를 공백없이 입력하세요.<br>(대소문자구분)</p></div></div>');
458                        aHtml.push('<div class="submit"><a href="#none" onclick="' +data.comment_reply['action_comment_insert']+ '" class="btnStrong mini">입력</a></div>');
459                        aHtml.push('</div>');
460                        aHtml.push('</form>');
461                    }
462
463                }
464                $(pNode).after('<li id="product-review-read'+data.key+'" class="contentView">'+aHtml.join('')+'</li>');
465
466                // 평점기능 사용안함일 경우 보여지는 td를 조절하기 위한 함수
467                PRODUCT_COMMENT.comment_colspan(pNode);
468
469                if (data.comment_write != undefined && data.comment_write['use_comment_size'] == '') PRODUCT_COMMENT.comment_byte(4, data.key);
470                if (data.comment_reply != undefined && data.comment_write['use_comment_size'] == '') PRODUCT_COMMENT.comment_byte(4, data.key, 'commentReplyWriteForm');
471				if (data.read['ucc_url']) $('#ec-ucc-media-box-'+ data.read['no']).replaceWith(APP_BOARD_UCC.getPreviewElement(data.read['ucc_url']));
472            }
473        });
474    },
475
476    // 댓글 보기
477    comment_view : function (sId)
478    {
479        if ($('#commentList_'+sId).css('display') == 'none') {
480            $('#commentList_'+sId).show();
481        } else {
482            $('#commentList_'+sId).hide();
483        }
484    },
485
486    // 댓글의 댓글 보기
487    comment_reply_view : function (iCommentNo)
488    {
489        $('[id^="replyArea_'+iCommentNo+'_"]').each(function(e) {
490            if ($(this).css('display') == 'none') {
491                $(this).show();
492            } else {
493                $(this).hide();
494            }
495        });
496    },
497
498    // 댓글 쓰기
499    comment_write : function (e)
500    {
501        var $form = $("#commentWriteForm_4");
502        if ($form.css('display') == 'none') {
503            $form.css('display', 'block');
504
505            var $p = $(e).parent().parent();
506            if ( $(e).parent().find('#commentWriteForm_4').length < 1 ) {
507                $p.after($form);
508            }
509        } else {
510            $form.hide();
511        }
512    },
513
514    END : function() {}
515};
516/**
517 * 상품상세 Q&A
518 */
519$(document).ready(function(){
520    $('.xans-product-qna a').click(function(e) {
521        e.preventDefault();
522
523        var no = $(this).attr('href').replace(/(\S*)[?&]no=(\d+)(\S*)/g, '$2');
524        var $obj = $('#product-qna-read_'+no);
525
526        //로드된 엘리먼트 존재 체크
527        if ($obj.length > 0) {
528            if ($obj.css('display') =='none') {
529                $obj.show();
530            } else {
531                $obj.hide();
532            }
533            return;
534        }
535
536        QNA.getReadData($(this));
537    });
538
539    // qna 탭 바로 활성화처리
540    var href = document.location.href.split('#')[1];
541    if (href == 'use_qna' || href == 'prdQnA') {
542        $('a[name="use_qna"]').trigger('click');
543    }
544});
545
546var PARENT = '';
547
548var OPEN_QNA = '';
549
550var QNA = {
551    getReadData : function(obj, eType)
552    {
553        if (obj != undefined) {
554            PARENT = obj;
555            var sHref = obj.attr('href');
556            var pNode = obj.parents('li');
557            var pass_check = '&pass_check=F';
558        } else {
559            var sHref = PARENT.attr('href');
560            var pNode = PARENT.parents('li');
561            var pass_check = '&pass_check=T';
562        }
563
564        var sQuery = sHref.split('?');
565
566        var sQueryNo = sQuery[1].split('=');
567        if (OPEN_QNA == sQueryNo[1]) {
568            $('#product-qna-read').remove();
569            OPEN_QNA = '';
570            return false;
571        } else {
572            OPEN_QNA = sQueryNo[1];
573        }
574
575        $.ajax({
576            url : '/exec/front/board/product/6?'+sQuery[1]+pass_check,
577            dataType: 'json',
578            success: function(data) {
579                $('#product-qna-read').remove();
580
581                var sPath = document.location.pathname;
582                var sPattern = /^\/product\/(.+)\/([0-9]+)(\/.*)/;
583                var aMatchResult = sPath.match(sPattern);
584
585                if (aMatchResult) {
586                    var iProductNo = aMatchResult[2];
587                } else {
588                    var iProductNo = getQueryString('product_no');
589                }
590
591                var aHtml = [];
592
593                //읽기 권한 체크
594                if (false === data.read_auth && eType == undefined) {
595                    alert(data.alertMSG);
596                    return false;
597                }
598
599                if (data.is_secret == true) {
600                    // 비밀글 비밀번호 입력 폼
601                    aHtml.push('<form name="SecretForm_6" id="SecretForm_6">');
602                    aHtml.push('<input type="text" name="a" style="display:none;">');
603                    aHtml.push('<div class="view secret">');
604                    aHtml.push('<span class="alert">이 글은 비밀글입니다.<br>비밀번호를 입력하여 주세요.</span>');
605                    aHtml.push('<p><input type="password" id="secure_password" name="secure_password" onkeydown="if (event.keyCode == 13) '+data.action_pass_submit+'"> <input type="button" value="확인" onclick="'+data.action_pass_submit+'" class="btnStrong"></p>');
606                    aHtml.push('</div>');
607                    aHtml.push('</form>');
608                } else {
609                    // 글 내용
610                    if (data.read['content_image'] != null) {
611                        var sImg = data.read['content_image'];
612                    } else {
613                        var sImg = '';
614                    }
615
616                    aHtml.push('<div class="view">');
617					aHtml.push('<div id="ec-ucc-media-box-'+ data.read['no'] +'"></div>');
618                    aHtml.push('<p class="attach">'+sImg+'</p>');
619                    aHtml.push('<p>'+data.read['content']+'</p>');
620                    aHtml.push('</div>');
621                    aHtml.push('<div class="ec-base-button">');
622                    if (data.comment != undefined) {
623                        aHtml.push('<div class="gLeft">');
624                        aHtml.push('<a href="#none" class="btnNormal mini" onclick="QNA.comment_view('+data.read['no']+');">댓글보기 <em>('+data.read['comment_count']+')</em></a> <a href="#none" class="btnNormal mini" onclick="QNA.comment_write(this);"><span class="ico write"></span> 쓰기</a>');
625                        aHtml.push('</div>');
626                    }
627                    aHtml.push('<a href="/board/product/modify.html'+ data.read['param_modify'] +'&link_product_no='+iProductNo+'" class="btnNormal mini">수정</a>');
628                    aHtml.push('</div>');
629
630                    // 댓글리스트
631                    if (data.comment != undefined && data.comment.length != undefined) {
632                        aHtml.push('<ul class="boardComment" id="commentList_'+data.read['no']+'" style="display:none;">');
633                        for (var i=0; data.comment.length > i; i++) {
634                            //댓글리스트
635                            if (data.comment[i]['comment_reply_css'] == undefined) {
636                                aHtml.push('<li id="'+data.comment[i]['comment_reply_id']+'">');
637                                aHtml.push('<div class="commentInfo">');
638                                aHtml.push('<strong class="name">'+data.comment[i]['member_icon']+' '+data.comment[i]['comment_name']+'</strong>');
639                                aHtml.push('<span class="date">'+data.comment[i]['comment_write_date']+'</span>');
640                                aHtml.push('<span class="grade '+data.use_point+'"><img src="//img.echosting.cafe24.com/skin/mobile_ko_KR/board/ico_star'+data.comment[i]['comment_point_count']+'.png" alt="'+data.comment[i]['comment_point_count']+'점" /></span>');
641                                aHtml.push('</div>');
642                                aHtml.push('<p class="comment">'+data.comment[i]['comment_content']+'</p>');
643                                if (data.comment[i]['comment_reply_display'] == true) {
644                                    aHtml.push('<div class="ec-base-button">'+'<div class="gLeft">');
645                                    aHtml.push('<a href="#none" class="btnNormal mini" onclick="QNA.comment_reply_view('+data.comment[i]['comment_no']+')">댓글의 댓글 <em>('+data.comment[i]['comment_reply_count']+')</em></a>');
646                                    aHtml.push('<a href="#none" class="btnNormal mini" onclick="'+data.comment[i]['action_comment_reply_new']+'"><span class="ico write"></span> 쓰기</a>');
647                                    aHtml.push('</div>'+'</div>');
648                                }
649                                aHtml.push('</li>');
650                            } else {
651                                //댓글의 댓글리스트
652                                aHtml.push('<li class="replyArea" style="display:none;" id="'+data.comment[i]['comment_reply_id']+'">');
653                                aHtml.push('<div class="commentInfo">');
654                                aHtml.push('<strong class="name">'+data.comment[i]['member_icon']+' '+data.comment[i]['comment_name']+'</strong>');
655                                aHtml.push('<span class="date">'+data.comment[i]['comment_write_date']+'</span>');
656                                aHtml.push('</div>');
657                                aHtml.push('<p class="comment">'+data.comment[i]['comment_content']+'</p>');
658                                aHtml.push('</li>');
659                            }
660                        }
661                        aHtml.push('</ul>');
662                    }
663
664                    // 댓글쓰기
665                    if (data.comment_write != undefined) {
666                        aHtml.push('<form name="commentWriteForm_6'+data.key+'" id="commentWriteForm_6'+data.key+'" style="display:none;">');
667                        aHtml.push('<div class="memoCont">');
668                        aHtml.push('<div class="info"><p class="name"><strong class="label">이름</strong>' +data.comment_write['comment_name']+ '</p><p class="password"><strong class="label">비밀번호</strong>' +data.comment_write['comment_password']+ '</p></div>');
669                        aHtml.push('<p class="ec-base-help ' +data.comment_write['password_rule_help_display_class']+ '">영문 대소문자/숫자/특수문자 중 2가지 이상 조합, 10자~16자</p>');
670                        aHtml.push('<div class="byteRating"><p class="byte ' +data.comment_write['use_comment_size']+ '">/ byte</p><p class="rating ' +data.comment_write['use_point']+ '"><strong class="label">평점</strong>' +data.comment_write['comment_point']+ '</p></div>');
671                        aHtml.push('<div class="comment"><strong class="label hide">내용</strong>' +data.comment_write['comment']+ '</div>');
672                        aHtml.push('<div class="captcha ' +data.comment_write['use_captcha']+ '"><span class="img"></span><div class="form">' +data.comment_write['captcha_image']+data.comment_write['captcha_refresh']+data.comment_write['captcha']+ '<p>왼쪽의 문자를 공백없이 입력하세요.<br>(대소문자구분)</p></div></div>');
673                        aHtml.push('<div class="submit"><a href="#none" onclick="' +data.comment_write['action_comment_insert']+ '" class="btnStrong mini">댓글 입력</a></div>');
674                        aHtml.push('');
675                        aHtml.push('');
676                        aHtml.push('</div>');
677                        aHtml.push('</form>');
678                    }
679
680                    if (data.comment_reply != undefined) {
681                        aHtml.push('<form name="commentReplyWriteForm_6'+data.key+'" id="commentReplyWriteForm_6'+data.key+'" style="display:none">');
682                        aHtml.push('<div class="memoCont reply">');
683                        aHtml.push('<div class="info"><p class="name"><strong class="label">이름</strong>' +data.comment_reply['comment_name']+ '</p><p class="password"><strong class="label">비밀번호</strong>' +data.comment_reply['comment_password']+ '</p></div>');
684                        aHtml.push('<p class="ec-base-help ' +data.comment_reply['password_rule_help_display_class']+ '">영문 대소문자/숫자/특수문자 중 2가지 이상 조합, 10자~16자</p>');
685                        aHtml.push('<div class="comment"><strong class="label hide">내용</strong>' +data.comment_reply['comment']+ '</div>');
686                        aHtml.push('<p class="text '+data.comment_reply['use_comment_size']+'">'+data.comment_reply['comment_byte']+' / '+data.comment_reply['comment_size']+' byte</p>');
687                        aHtml.push('<div class="captcha ' +data.comment_reply['use_captcha']+ '"><span class="img"></span><div class="form">' +data.comment_reply['captcha_image']+data.comment_reply['captcha_refresh']+data.comment_reply['captcha']+ '<p>왼쪽의 문자를 공백없이 입력하세요.<br>(대소문자구분)</p></div></div>');
688                        aHtml.push('<div class="submit"><a href="#none" onclick="' +data.comment_reply['action_comment_insert']+ '" class="btnStrong mini">입력</a></div>');
689                        aHtml.push('</div>');
690                        aHtml.push('</form>');
691                    }
692                }
693
694                $(pNode).after('<li id="product-qna-read'+data.key+'" class="contentView">'+aHtml.join('')+'</li>');
695
696                // 평점기능 사용안함일 경우 보여지는 td를 조절하기 위한 함수
697                PRODUCT_COMMENT.comment_colspan(pNode);
698
699                if (data.comment_write != undefined && data.comment_write['use_comment_size'] == '') PRODUCT_COMMENT.comment_byte(6, data.key);
700                if (data.comment_reply != undefined && data.comment_write['use_comment_size'] == '') PRODUCT_COMMENT.comment_byte(6, data.key, 'commentReplyWriteForm');
701				if (data.read['ucc_url']) $('#ec-ucc-media-box-'+ data.read['no']).replaceWith(APP_BOARD_UCC.getPreviewElement(data.read['ucc_url']));
702            }
703        });
704    },
705
706        // 댓글 보기
707    comment_view : function (sId)
708    {
709        if ($('#commentList_'+sId).css('display') == 'none') {
710            $('#commentList_'+sId).show();
711        } else {
712            $('#commentList_'+sId).hide();
713        }
714    },
715
716    // 댓글의 댓글 보기
717    comment_reply_view : function (iCommentNo)
718    {
719        $('[id^="replyArea_'+iCommentNo+'_"]').each(function(e) {
720            if ($(this).css('display') == 'none') {
721                $(this).show();
722            } else {
723                $(this).hide();
724            }
725        });
726    },
727
728    // 댓글 쓰기
729    comment_write : function (e)
730    {
731        var $form = $("#commentWriteForm_6");
732        if ($form.css('display') == 'none') {
733            $form.css('display', 'block');
734
735            var $p = $(e).parent().parent();
736            if ( $(e).parent().find('#commentWriteForm_6').length < 1 ) {
737                $p.after($form);
738            }
739        } else {
740            $form.hide();
741        }
742    },
743
744    END : function() {}
745};
746/**
747 * 움직이는 배너 Jquery Plug-in
748 * @author  cafe24
749 */
750
751(function($){
752
753    $.fn.floatBanner = function(options) {
754        options = $.extend({}, $.fn.floatBanner.defaults , options);
755
756        return this.each(function() {
757            var aPosition = $(this).position();
758            var jbOffset = $(this).offset();
759            var node = this;
760
761            $(window).scroll(function() {
762                var _top = $(document).scrollTop();
763                _top = (aPosition.top < _top) ? _top : aPosition.top;
764
765                setTimeout(function () {
766                    var newinit = $(document).scrollTop();
767
768                    if ( newinit >
768 jbOffset.top ) {
769                        _top -= jbOffset.top;
770                        var container_height = $("#wrap").height();
771                        var quick_height = $(node).height();
772                        var cul = container_height - quick_height;
773                        if(_top > cul){
774                            _top = cul;
775                        }
776                    }else {
777                        _top = 0;
778                    }
779
780                    $(node).stop().animate({top: _top}, options.animate);
781                }, options.delay);
782            });
783        });
784    };
785
786    $.fn.floatBanner.defaults = {
787        'animate'  : 500,
788        'delay'    : 500
789    };
790
791})(jQuery);
792
793/**
794 * 문서 구동후 시작
795 */
796$(document).ready(function(){
797    $('#banner:visible, #quick:visible').floatBanner();
798
799    //placeholder
800    $(".ePlaceholder input, .ePlaceholder textarea").each(function(i){
801        var placeholderName = $(this).parents().attr('title');
802        $(this).attr("placeholder", placeholderName);
803    });
804    /* placeholder ie8, ie9 */
805    $.fn.extend({
806        placeholder : function() {
807            //IE 8 버전에는 hasPlaceholderSupport() 값이 false를 리턴
808           if (hasPlaceholderSupport() === true) {
809                return this;
810            }
811            //hasPlaceholderSupport() 값이 false 일 경우 아래 코드를 실행
812            return this.each(function(){
813                var findThis = $(this);
814                var sPlaceholder = findThis.attr('placeholder');
815                if ( ! sPlaceholder) {
816                   return;
817                }
818                findThis.wrap('<label class="ePlaceholder" />');
819                var sDisplayPlaceHolder = $(this).val() ? ' style="display:none;"' : '';
820                findThis.before('<span' + sDisplayPlaceHolder + '>' + sPlaceholder + '</span>');
821                this.onpropertychange = function(e){
822                    e = event || e;
823                    if (e.propertyName == 'value') {
824                        $(this).trigger('focusout');
825                    }
826                };
827                //공통 class
828                var agent = navigator.userAgent.toLowerCase();
829                if (agent.indexOf("msie") != -1) {
830                    $(".ePlaceholder").css({"position":"relative"});
831                    $(".ePlaceholder span").css({"position":"absolute", "padding":"0 4px", "color":"#878787"});
832                    $(".ePlaceholder label").css({"padding":"0"});
833                }
834            });
835        }
836    });
837
838    $(':input[placeholder]').placeholder(); //placeholder() 함수를 호출
839
840    //클릭하면 placeholder 숨김
841    $('body').delegate('.ePlaceholder span', 'click', function(){
842        $(this).hide();
843    });
844
845    //input창 포커스 인 일때 placeholder 숨김
846    $('body').delegate('.ePlaceholder :input', 'focusin', function(){
847        $(this).prev('span').hide();
848    });
849
850    //input창 포커스 아웃 일때 value 가 true 이면 숨김, false 이면 보여짐
851    $('body').delegate('.ePlaceholder :input', 'focusout', function(){
852        if (this.value) {
853            $(this).prev('span').hide();
854        } else {
855            $(this).prev('span').show();
856        }
857    });
858
859    //input에 placeholder가 지원이 되면 true를 안되면 false를 리턴값으로 던져줌
860    function hasPlaceholderSupport() {
861        if ('placeholder' in document.createElement('input')) {
862            return true;
863        } else {
864            return false;
865        }
866    }
867});
868
869/**
870 *  썸네일 이미지 엑박일경우 기본값 설정
871 */
872$(window).load(function() {
873    $("img.thumb,img.ThumbImage,img.BigImage").each(function($i,$item){
874        var $img = new Image();
875        $img.onerror = function () {
876                $item.src="//img.echosting.cafe24.com/thumb/img_product_big.gif";
877        }
878        $img.src = this.src;
879    });
880});
881
882/**
883 *  tooltip
884 */
885$('.eTooltip').each(function(i){
886    $(this).find('.btnClose').attr('tabIndex','-1');
887});
888//tooltip input focus
889$('.eTooltip').find('input').focus(function() {
890    var targetName = returnTagetName(this);
891    targetName.siblings('.ec-base-tooltip').show();
892});
893$('.eTooltip').find('input').focusout(function() {
894    var targetName = returnTagetName(this);
895    targetName.siblings('.ec-base-tooltip').hide();
896});
897function returnTagetName(_this){
898    var ePlacename = $(_this).parent().attr("class");
899    var targetName;
900    if(ePlacename == "ePlaceholder"){ //ePlaceholder 대응
901        targetName = $(_this).parents();
902    }else{
903        targetName = $(_this);
904    }
905    return targetName;
906}
907
908/**
909 *  eTab
910 */
911 $("body").delegate(".eTab a", "click", function(e){
912    // 클릭한 li 에 selected 클래스 추가, 기존 li에 있는 selected 클래스는 삭제.
913    var _li = $(this).parent("li").addClass("selected").siblings().removeClass("selected"),
914    _target = $(this).attr("href"),
915    _siblings = $(_target).attr("class"),
916    _arr = _siblings.split(" "),
917    _classSiblings = "."+_arr[0];
918
919    //클릭한 탭에 해당하는 요소는 활성화, 기존 요소는 비활성화 함.
920    $(_target).show().siblings(_classSiblings).hide();
921
922
923    //preventDefault 는 a 태그 처럼 클릭 이벤트 외에 별도의 브라우저 행동을 막기 위해 사용됨.
924    e.preventDefault();
925});
926
927
928
929//window popup script
930function winPop(url) {
931    window.open(url, "popup", "width=300,height=300,left=10,top=10,resizable=no,scrollbars=no");
932}
933/**
934 * document.location.href split
935 * return array Param
936 */
937function getQueryString(sKey)
938{
939    var sQueryString = document.location.search.substring(1);
940    var aParam       = {};
941
942    if (sQueryString) {
943        var aFields = sQueryString.split("&");
944        var aField  = [];
945        for (var i=0; i<aFields.length; i++) {
946            aField = aFields[i].split('=');
947            aParam[aField[0]] = aField[1];
948        }
949    }
950
951    aParam.page = aParam.page ? aParam.page : 1;
952    return sKey ? aParam[sKey] : aParam;
953};
954
955$(document).ready(function(){
956    // tab
957    $.eTab = function(ul){
958        $(ul).find('a').click(function(){
959            var _li = $(this).parent('li').addClass('selected').siblings().removeClass('selected'),
960                _target = $(this).attr('href'),
961                _siblings = '.' + $(_target).attr('class');
962            $(_target).show().siblings(_siblings).hide();
963            return false
964        });
965    }
966    if ( window.call_eTab ) {
967        call_eTab();
968    };
969});
970(function($){
971$.fn.extend({
972    center: function() {
973        this.each(function() {
974            var
975                $this = $(this),
976                $w = $(window);
977            $this.css({
978                position: "absolute",
979                top: ~~(($w.height() - $this.outerHeight()) / 2) + $w.scrollTop() + "px",
980                left: ~~(($w.width() - $this.outerWidth()) / 2) + $w.scrollLeft() + "px"
981            });
982        });
983        return this;
984    }
985});
986$(function() {
987    var $container = function(){/*
988<div id="modalContainer">
989    <iframe id="modalContent" scroll="0" scrolling="no" frameBorder="0"></iframe>
990</div>');
991*/}.toString().slice(14,-3);
992    $('body')
993    .append($('<div id="modalBackpanel"></div>'))
994    .append($($container));
995    function closeModal () {
996        $('#modalContainer').hide();
997        $('#modalBackpanel').hide();
998    }
999    $('#modalBackpanel').click(closeModal);
1000    zoom = function ($piProductNo, $piCategoryNo, $piDisplayGroup) {
1001        var $url = '/product/image_zoom.html?product_no=' + $piProductNo + '&cate_no=' + $piCategoryNo + '&display_group=' + $piDisplayGroup;
1002        $('#modalContent').attr('src', $url);
1003        $('#modalContent').bind("load",function(){
1004            $(".header .close",this.contentWindow.document.body).bind("click", closeModal);
1005        });
1006        $('#modalBackpanel').css({width:$("body").width(),height:$("body").height(),opacity:.4}).show();
1007        $('#modalContainer').center().show();
1008    }
1009});
1010})(jQuery);
1011/*
1012 * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/
1013 *
1014 * Uses the built in easing capabilities added In jQuery 1.1
1015 * to offer multiple easing options
1016 *
1017 * TERMS OF USE - jQuery Easing
1018 * 
1019 * Open source under the BSD License. 
1020 * 
1021 * Copyright © 2008 George McGinley Smith
1022 * All rights reserved.
1023 * 
1024 * Redistribution and use in source and binary forms, with or without modification, 
1025 * are permitted provided that the following conditions are met:
1026 * 
1027 * Redistributions of source code must retain the above copyright notice, this list of 
1028 * conditions and the following disclaimer.
1029 * Redistributions in binary form must reproduce the above copyright notice, this list 
1030 * of conditions and the following disclaimer in the documentation and/or other materials 
1031 * provided with the distribution.
1032 * 
1033 * Neither the name of the author nor the names of contributors may be used to endorse 
1034 * or promote products derived from this software without specific prior written permission.
1035 * 
1036 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY 
1037 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
1038 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
1039 *  COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
vendor: 5,171 bytes, lines 1040-1186
1040 *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
1041 *  GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 
1042 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
1043 *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
1044 * OF THE POSSIBILITY OF SUCH DAMAGE. 
1045 *
1046 * @tlog $jq에서 사용가능하도록 수정했습니다. 그래스 파일명도 변경합니다.
1047*/
1048
1049// t: current time, b: begInnIng value, c: change In value, d: duration
1050$jq.easing['jswing'] = $jq.easing['swing'];
1051
1052$jq.extend( $jq.easing,
1053{
1054	def: 'easeOutQuad',
1055	swing: function (x, t, b, c, d) {
1056		//alert($jq.easing.default);
1057		return $jq.easing[$jq.easing.def](x, t, b, c, d);
1058	},
1059	easeInQuad: function (x, t, b, c, d) {
1060		return c*(t/=d)*t + b;
1061	},
1062	easeOutQuad: function (x, t, b, c, d) {
1063		return -c *(t/=d)*(t-2) + b;
1064	},
1065	easeInOutQuad: function (x, t, b, c, d) {
1066		if ((t/=d/2) < 1) return c/2*t*t + b;
1067		return -c/2 * ((--t)*(t-2) - 1) + b;
1068	},
1069	easeInCubic: function (x, t, b, c, d) {
1070		return c*(t/=d)*t*t + b;
1071	},
1072	easeOutCubic: function (x, t, b, c, d) {
1073		return c*((t=t/d-1)*t*t + 1) + b;
1074	},
1075	easeInOutCubic: function (x, t, b, c, d) {
1076		if ((t/=d/2) < 1) return c/2*t*t*t + b;
1077		return c/2*((t-=2)*t*t + 2) + b;
1078	},
1079	easeInQuart: function (x, t, b, c, d) {
1080		return c*(t/=d)*t*t*t + b;
1081	},
1082	easeOutQuart: function (x, t, b, c, d) {
1083		return -c * ((t=t/d-1)*t*t*t - 1) + b;
1084	},
1085	easeInOutQuart: function (x, t, b, c, d) {
1086		if ((t/=d/2) < 1) return c/2*t*t*t*t + b;
1087		return -c/2 * ((t-=2)*t*t*t - 2) + b;
1088	},
1089	easeInQuint: function (x, t, b, c, d) {
1090		return c*(t/=d)*t*t*t*t + b;
1091	},
1092	easeOutQuint: function (x, t, b, c, d) {
1093		return c*((t=t/d-1)*t*t*t*t + 1) + b;
1094	},
1095	easeInOutQuint: function (x, t, b, c, d) {
1096		if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b;
1097		return c/2*((t-=2)*t*t*t*t + 2) + b;
1098	},
1099	easeInSine: function (x, t, b, c, d) {
1100		return -c * Math.cos(t/d * (Math.PI/2)) + c + b;
1101	},
1102	easeOutSine: function (x, t, b, c, d) {
1103		return c * Math.sin(t/d * (Math.PI/2)) + b;
1104	},
1105	easeInOutSine: function (x, t, b, c, d) {
1106		return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b;
1107	},
1108	easeInExpo: function (x, t, b, c, d) {
1109		return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b;
1110	},
1111	easeOutExpo: function (x, t, b, c, d) {
1112		return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
1113	},
1114	easeInOutExpo: function (x, t, b, c, d) {
1115		if (t==0) return b;
1116		if (t==d) return b+c;
1117		if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;
1118		return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;
1119	},
1120	easeInCirc: function (x, t, b, c, d) {
1121		return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b;
1122	},
1123	easeOutCirc: function (x, t, b, c, d) {
1124		return c * Math.sqrt(1 - (t=t/d-1)*t) + b;
1125	},
1126	easeInOutCirc: function (x, t, b, c, d) {
1127		if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b;
1128		return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b;
1129	},
1130	easeInElastic: function (x, t, b, c, d) {
1131		var s=1.70158;var p=0;var a=c;
1132		if (t==0) return b;  if ((t/=d)==1) return b+c;  if (!p) p=d*.3;
1133		if (a < Math.abs(c)) { a=c; var s=p/4; }
1134		else var s = p/(2*Math.PI) * Math.asin (c/a);
1135		return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
1136	},
1137	easeOutElastic: function (x, t, b, c, d) {
1138		var s=1.70158;var p=0;var a=c;
1139		if (t==0) return b;  if ((t/=d)==1) return b+c;  if (!p) p=d*.3;
1140		if (a < Math.abs(c)) { a=c; var s=p/4; }
1141		else var s = p/(2*Math.PI) * Math.asin (c/a);
1142		return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
1143	},
1144	easeInOutElastic: function (x, t, b, c, d) {
1145		var s=1.70158;var p=0;var a=c;
1146		if (t==0) return b;  if ((t/=d/2)==2) return b+c;  if (!p) p=d*(.3*1.5);
1147		if (a < Math.abs(c)) { a=c; var s=p/4; }
1148		else var s = p/(2*Math.PI) * Math.asin (c/a);
1149		if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
1150		return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b;
1151	},
1152	easeInBack: function (x, t, b, c, d, s) {
1153		if (s == undefined) s = 1.70158;
1154		return c*(t/=d)*t*((s+1)*t - s) + b;
1155	},
1156	easeOutBack: function (x, t, b, c, d, s) {
1157		if (s == undefined) s = 1.70158;
1158		return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
1159	},
1160	easeInOutBack: function (x, t, b, c, d, s) {
1161		if (s == undefined) s = 1.70158; 
1162		if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b;
1163		return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;
1164	},
1165	easeInBounce: function (x, t, b, c, d) {
1166		return c - jQuery.easing.easeOutBounce (x, d-t, 0, c, d) + b;
1167	},
1168	easeOutBounce: function (x, t, b, c, d) {
1169		if ((t/=d) < (1/2.75)) {
1170			return c*(7.5625*t*t) + b;
1171		} else if (t < (2/2.75)) {
1172			return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b;
1173		} else if (t < (2.5/2.75)) {
1174			return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b;
1175		} else {
1176			return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;
1177		}
1178	},
1179	easeInOutBounce: function (x, t, b, c, d) {
1180		if (t < d/2) return jQuery.easing.easeInBounce (x, t*2, 0, c, d) * .5 + b;
1181		return jQuery.easing.easeOutBounce (x, t*2-d, 0, c, d) * .5 + c*.5 + b;
1182	}
1183});
1184
1185/*
1186 *
vendor: 10,010 bytes, lines 1187-1271
1187 * TERMS OF USE - EASING EQUATIONS
1188 * 
1189 * Open source under the BSD License. 
1190 * 
1191 * Copyright © 2001 Robert Penner
1192 * All rights reserved.
1193 * 
1194 * Redistribution and use in source and binary forms, with or without modification, 
1195 * are permitted provided that the following conditions are met:
1196 * 
1197 * Redistributions of source code must retain the above copyright notice, this list of 
1198 * conditions and the following disclaimer.
1199 * Redistributions in binary form must reproduce the above copyright notice, this list 
1200 * of conditions and the following disclaimer in the documentation and/or other materials 
1201 * provided with the distribution.
1202 * 
1203 * Neither the name of the author nor the names of contributors may be used to endorse 
1204 * or promote products derived from this software without specific prior written permission.
1205 * 
1206 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY 
1207 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
1208 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
1209 *  COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
1210 *  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
1211 *  GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED 
1212 * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
1213 *  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED 
1214 * OF THE POSSIBILITY OF SUCH DAMAGE. 
1215 *
1216 */
1217/* jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/ */
1218jQuery.easing.jswing=jQuery.easing.swing,jQuery.extend(jQuery.easing,{def:"easeOutQuad",swing:function(n,e,t,u,a){return jQuery.easing[jQuery.easing.def](n,e,t,u,a)},easeInQuad:function(n,e,t,u,a){return u*(e/=a)*e+t},easeOutQuad:function(n,e,t,u,a){return-u*(e/=a)*(e-2)+t},easeInOutQuad:function(n,e,t,u,a){return(e/=a/2)<1?u/2*e*e+t:-u/2*(--e*(e-2)-1)+t},easeInCubic:function(n,e,t,u,a){return u*(e/=a)*e*e+t},easeOutCubic:function(n,e,t,u,a){return u*((e=e/a-1)*e*e+1)+t},easeInOutCubic:function(n,e,t,u,a){return(e/=a/2)<1?u/2*e*e*e+t:u/2*((e-=2)*e*e+2)+t},easeInQuart:function(n,e,t,u,a){return u*(e/=a)*e*e*e+t},easeOutQuart:function(n,e,t,u,a){return-u*((e=e/a-1)*e*e*e-1)+t},easeInOutQuart:function(n,e,t,u,a){return(e/=a/2)<1?u/2*e*e*e*e+t:-u/2*((e-=2)*e*e*e-2)+t},easeInQuint:function(n,e,t,u,a){return u*(e/=a)*e*e*e*e+t},easeOutQuint:function(n,e,t,u,a){return u*((e=e/a-1)*e*e*e*e+1)+t},easeInOutQuint:function(n,e,t,u,a){return(e/=a/2)<1?u/2*e*e*e*e*e+t:u/2*((e-=2)*e*e*e*e+2)+t},easeInSine:function(n,e,t,u,a){return-u*Math.cos(e/a*(Math.PI/2))+u+t},easeOutSine:function(n,e,t,u,a){return u*Math.sin(e/a*(Math.PI/2))+t},easeInOutSine:function(n,e,t,u,a){return-u/2*(Math.cos(Math.PI*e/a)-1)+t},easeInExpo:function(n,e,t,u,a){return 0==e?t:u*Math.pow(2,10*(e/a-1))+t},easeOutExpo:function(n,e,t,u,a){return e==a?t+u:u*(1-Math.pow(2,-10*e/a))+t},easeInOutExpo:function(n,e,t,u,a){return 0==e?t:e==a?t+u:(e/=a/2)<1?u/2*Math.pow(2,10*(e-1))+t:u/2*(2-Math.pow(2,-10*--e))+t},easeInCirc:function(n,e,t,u,a){return-u*(Math.sqrt(1-(e/=a)*e)-1)+t},easeOutCirc:function(n,e,t,u,a){return u*Math.sqrt(1-(e=e/a-1)*e)+t},easeInOutCirc:function(n,e,t,u,a){return(e/=a/2)<1?-u/2*(Math.sqrt(1-e*e)-1)+t:u/2*(Math.sqrt(1-(e-=2)*e)+1)+t},easeInElastic:function(n,e,t,u,a){var r=1.70158,i=0,s=u;if(0==e)return t;if(1==(e/=a))return t+u;if(i||(i=.3*a),s<Math.abs(u)){s=u;r=i/4}else r=i/(2*Math.PI)*Math.asin(u/s);return-s*Math.pow(2,10*(e-=1))*Math.sin((e*a-r)*(2*Math.PI)/i)+t},easeOutElastic:function(n,e,t,u,a){var r=1.70158,i=0,s=u;if(0==e)return t;if(1==(e/=a))return t+u;if(i||(i=.3*a),s<Math.abs(u)){s=u;r=i/4}else r=i/(2*Math.PI)*Math.asin(u/s);return s*Math.pow(2,-10*e)*Math.sin((e*a-r)*(2*Math.PI)/i)+u+t},easeInOutElastic:function(n,e,t,u,a){var r=1.70158,i=0,s=u;if(0==e)return t;if(2==(e/=a/2))return t+u;if(i||(i=a*(.3*1.5)),s<Math.abs(u)){s=u;r=i/4}else r=i/(2*Math.PI)*Math.asin(u/s);return e<1?s*Math.pow(2,10*(e-=1))*Math.sin((e*a-r)*(2*Math.PI)/i)*-.5+t:s*Math.pow(2,-10*(e-=1))*Math.sin((e*a-r)*(2*Math.PI)/i)*.5+u+t},easeInBack:function(n,e,t,u,a,r){return null==r&&(r=1.70158),u*(e/=a)*e*((r+1)*e-r)+t},easeOutBack:function(n,e,t,u,a,r){return null==r&&(r=1.70158),u*((e=e/a-1)*e*((r+1)*e+r)+1)+t},easeInOutBack:function(n,e,t,u,a,r){return null==r&&(r=1.70158),(e/=a/2)<1?u/2*(e*e*((1+(r*=1.525))*e-r))+t:u/2*((e-=2)*e*((1+(r*=1.525))*e+r)+2)+t},easeInBounce:function(n,e,t,u,a){return u-jQuery.easing.easeOutBounce(n,a-e,0,u,a)+t},easeOutBounce:function(n,e,t,u,a){return(e/=a)<1/2.75?u*(7.5625*e*e)+t:e<2/2.75?u*(7.5625*(e-=1.5/2.75)*e+.75)+t:e<2.5/2.75?u*(7.5625*(e-=2.25/2.75)*e+.9375)+t:u*(7.5625*(e-=2.625/2.75)*e+.984375)+t},easeInOutBounce:function(n,e,t,u,a){return e<a/2?.5*jQuery.easing.easeInBounce(n,2*e,0,u,a)+t:.5*jQuery.easing.easeOutBounce(n,2*e-a,0,u,a)+.5*u+t}});
1219(function($) {$.easing.jswing=$.easing.swing,$.extend($.easing,{def:"easeOutQuad",swing:function(n,e,t,u,a){return $.easing[$.easing.def](n,e,t,u,a)},easeInQuad:function(n,e,t,u,a){return u*(e/=a)*e+t},easeOutQuad:function(n,e,t,u,a){return-u*(e/=a)*(e-2)+t},easeInOutQuad:function(n,e,t,u,a){return(e/=a/2)<1?u/2*e*e+t:-u/2*(--e*(e-2)-1)+t},easeInCubic:function(n,e,t,u,a){return u*(e/=a)*e*e+t},easeOutCubic:function(n,e,t,u,a){return u*((e=e/a-1)*e*e+1)+t},easeInOutCubic:function(n,e,t,u,a){return(e/=a/2)<1?u/2*e*e*e+t:u/2*((e-=2)*e*e+2)+t},easeInQuart:function(n,e,t,u,a){return u*(e/=a)*e*e*e+t},easeOutQuart:function(n,e,t,u,a){return-u*((e=e/a-1)*e*e*e-1)+t},easeInOutQuart:function(n,e,t,u,a){return(e/=a/2)<1?u/2*e*e*e*e+t:-u/2*((e-=2)*e*e*e-2)+t},easeInQuint:function(n,e,t,u,a){return u*(e/=a)*e*e*e*e+t},easeOutQuint:function(n,e,t,u,a){return u*((e=e/a-1)*e*e*e*e+1)+t},easeInOutQuint:function(n,e,t,u,a){return(e/=a/2)<1?u/2*e*e*e*e*e+t:u/2*((e-=2)*e*e*e*e+2)+t},easeInSine:function(n,e,t,u,a){return-u*Math.cos(e/a*(Math.PI/2))+u+t},easeOutSine:function(n,e,t,u,a){return u*Math.sin(e/a*(Math.PI/2))+t},easeInOutSine:function(n,e,t,u,a){return-u/2*(Math.cos(Math.PI*e/a)-1)+t},easeInExpo:function(n,e,t,u,a){return 0==e?t:u*Math.pow(2,10*(e/a-1))+t},easeOutExpo:function(n,e,t,u,a){return e==a?t+u:u*(1-Math.pow(2,-10*e/a))+t},easeInOutExpo:function(n,e,t,u,a){return 0==e?t:e==a?t+u:(e/=a/2)<1?u/2*Math.pow(2,10*(e-1))+t:u/2*(2-Math.pow(2,-10*--e))+t},easeInCirc:function(n,e,t,u,a){return-u*(Math.sqrt(1-(e/=a)*e)-1)+t},easeOutCirc:function(n,e,t,u,a){return u*Math.sqrt(1-(e=e/a-1)*e)+t},easeInOutCirc:function(n,e,t,u,a){return(e/=a/2)<1?-u/2*(Math.sqrt(1-e*e)-1)+t:u/2*(Math.sqrt(1-(e-=2)*e)+1)+t},easeInElastic:function(n,e,t,u,a){var r=1.70158,i=0,s=u;if(0==e)return t;if(1==(e/=a))return t+u;if(i||(i=.3*a),s<Math.abs(u)){s=u;r=i/4}else r=i/(2*Math.PI)*Math.asin(u/s);return-s*Math.pow(2,10*(e-=1))*Math.sin((e*a-r)*(2*Math.PI)/i)+t},easeOutElastic:function(n,e,t,u,a){var r=1.70158,i=0,s=u;if(0==e)return t;if(1==(e/=a))return t+u;if(i||(i=.3*a),s<Math.abs(u)){s=u;r=i/4}else r=i/(2*Math.PI)*Math.asin(u/s);return s*Math.pow(2,-10*e)*Math.sin((e*a-r)*(2*Math.PI)/i)+u+t},easeInOutElastic:function(n,e,t,u,a){var r=1.70158,i=0,s=u;if(0==e)return t;if(2==(e/=a/2))return t+u;if(i||(i=a*(.3*1.5)),s<Math.abs(u)){s=u;r=i/4}else r=i/(2*Math.PI)*Math.asin(u/s);return e<1?s*Math.pow(2,10*(e-=1))*Math.sin((e*a-r)*(2*Math.PI)/i)*-.5+t:s*Math.pow(2,-10*(e-=1))*Math.sin((e*a-r)*(2*Math.PI)/i)*.5+u+t},easeInBack:function(n,e,t,u,a,r){return null==r&&(r=1.70158),u*(e/=a)*e*((r+1)*e-r)+t},easeOutBack:function(n,e,t,u,a,r){return null==r&&(r=1.70158),u*((e=e/a-1)*e*((r+1)*e+r)+1)+t},easeInOutBack:function(n,e,t,u,a,r){return null==r&&(r=1.70158),(e/=a/2)<1?u/2*(e*e*((1+(r*=1.525))*e-r))+t:u/2*((e-=2)*e*((1+(r*=1.525))*e+r)+2)+t},easeInBounce:function(n,e,t,u,a){return u-$.easing.easeOutBounce(n,a-e,0,u,a)+t},easeOutBounce:function(n,e,t,u,a){return(e/=a)<1/2.75?u*(7.5625*e*e)+t:e<2/2.75?u*(7.5625*(e-=1.5/2.75)*e+.75)+t:e<2.5/2.75?u*(7.5625*(e-=2.25/2.75)*e+.9375)+t:u*(7.5625*(e-=2.625/2.75)*e+.984375)+t},easeInOutBounce:function(n,e,t,u,a){return e<a/2?.5*$.easing.easeInBounce(n,2*e,0,u,a)+t:.5*$.easing.easeOutBounce(n,2*e-a,0,u,a)+.5*u+t}});})(jQuery);
1220(function($) {
1221  $.fn.owlOneItemExt = function(opts) {
1222    if (!!opts["init_youtube_api"]) {
1223      if (!window.youtube_api_loaded) {
1224        var tag = document.createElement("script");
1225        tag.src = "https://www.youtube.com/iframe_api";
1226        var firstScriptTag = document.getElementsByTagName("script")[0];
1227        firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
1228        window.youtube_api_loaded = true;
1229      }
1230
1231      if (typeof window.YOUTUBE_CALLBACK_LIST == "undefined") {
1232        window.YOUTUBE_CALLBACK_LIST = [];
1233      }
1234
1235      if (typeof window.onYouTubeIframeAPIReady != "function") {
1236        window.onYouTubeIframeAPIReady = function() {
1237          for (var i = 0; i < YOUTUBE_CALLBACK_LIST.length; i++) {
1238            YOUTUBE_CALLBACK_LIST[i]();
1239          }
1240        };
1241      }
1242    }
1243
1244    return this.each(function() {
1245      var options = $.extend({}, $.fn.owlOneItemExt.defaults, opts || {});
1246      var $el = $(this);
1247      // 고정
1248      options.items = 1;
1249      // 텍스트
1250      var dot_texts = [];
1251      // 타이머
1252      var dot_timers = [];
1253      var dot_styles = [];
1254      var $at = null;
1255      var timer = options.autoplayTimeout;
1256      var youtube_idxs = [];
1257      var st = new Date().getTime(); // 시작시간
1258      $el.children().each(function(index, element) {
1259        var $li = $(this);
1260        if (index == 0) timer = $li.data("timer") || options.autoplayTimeout;
1261        $li.data("idx", index);
1262        dot_texts.push($li.data("text"));
1263        dot_styles.push($li.data("style"));
1264        dot_timers.push($li.data("timer") || options.autoplayTimeout);
1265
1266        if ($li.data("youtube")) {
1267          youtube_idxs.push(index);
1268        }
1269      });
1270
1271      var has_youtube = false;
1272      var yt_players = [];
1273      $el.data("yt_players", yt_players); // 외부에서 접근 가능하게...
1274      function onYouTubeIframeAPIReady() {
1275        $el.find("li iframe").each(function(index, element) {
1276          var $iframe = $(this);
1277          var player = new YT.Player(element, {
1278            events: {
1279              onReady: function(event) {
1280                yt_players.push(event.target);
1281                $iframe.data("yt_player", event.target);
1282                event.target.setVolume(0); //최초볼륨크기
1283              }
1284            }
1285          });
1286        });
1287      }
1288
1289      options.onInitialized = function(e) {
1290        //$el.find('.owl-dot').contents().unwrap().wrap( '<div role="button" class="owl-dot"></div>');
1291        $el.find(".owl-item >").each(function(index, element) {
1292          //youtube dom 추가작업
1293          var $li = $(this);
1294          if ($li.data("youtube")) {
1295            $li.html(
1296              '<iframe src="https://www.youtube.com/embed/' +
1297                $li.data("youtube") +
1298                "?playlist=" +
1299                $li.data("youtube") +
1300                '&rel=0&showinfo=0&autoplay=0&loop=1&vq=hd1080&color=white&enablejsapi=1" data-no="' +
1301                index +
1302                '"  allow="autoplay"></iframe>' +
1303                '<div class="bg" style="position:absolute;z-index:1;width:100%;height:100%;top:0;left:0;opacity:1"></div>' +
1304                ""
1305            );
1306            has_youtube = true;
1307          }
1308        });
1309        if (has_youtube) {
1310          YOUTUBE_CALLBACK_LIST.push(onYouTubeIframeAPIReady);
1311        }
1312
1313        // DOM 추가
1314
1315        $el.find(".owl-dots .owl-dot").each(function(index, element) {
1316          var is_youtube = false;
1317
1318          if (youtube_idxs.indexOf(index) != -1) is_youtube = true;
1319          if (dot_texts[index] || dot_styles[index]) {
1320            var html =
1321              '<span></span><div class="' +
1322              (is_youtube ? "text yt-text" : "text") +
1323              '"' + (dot_styles[index] ? ' style="'+dot_styles[index]+'"' : '')+'>' +
1324              dot_texts[index] +
1325              "";
1326            if (is_youtube) {
1327              html += '<i class="yt-mute xi-volume-mute"></i>';
1328            }
1329            html += "</div>";
1330            $(this).html(html);
1331          }
1332        });
1333
1334        var volume = 0;
1335        if (has_youtube) {
1336          $el.find(".yt-mute").click(function(event) {
1337            event.stopPropagation();
1338            if (volume == 50) {
1339              //볼륨크기
1340              $(this)
1341                .removeClass("xi-volume-up")
1342                .addClass("xi-volume-mute");
1343              volume = 0;
1344            } else {
1345              $(this)
1346                .removeClass("xi-volume-mute")
1347                .addClass("xi-volume-up");
1348              volume = 50; //볼륨크기
1349            }
1350            //console.log($el.find('.active').html());
1351            //$el.find('.active iframe').data('yt_player').setVolume(volume);
1352            for (var i = 0; i < yt_players.length; i++) {
1353              yt_players[i].setVolume(volume);
1354            }
1355          });
1356        }
1357        changed();
1358      };
1359
1360      if (options.autoplayHoverPause) {
1361        $el.mouseenter(function() {
1362          new Date().getTime();
1363          if ($at) $at.stop(true);
1364        });
1365        $el.mouseleave(function() {
1366          //autoplayHoverPause 후 timer 기본으로 초기화 버그
1367          //timer = options.autoplayTimeout;
1368
1369          if ($at) {
1370            var t = timer - (timer * $at.width()) / $at.parent().width();
1371            $at.animate(
1372              {
1373                width: "100%"
1374              },
1375              t,
1376              "linear"
1377            );
1378          }
1379          if (timer != options.autoplayTimeout) {
1380            setTimeout(function() {
1381              $el.trigger("stop.owl.autoplay");
1382              $el.trigger("play.owl.autoplay", [t]);
1383            }, 1);
1384          }
1385        });
1386      }
1387
1388      $el.owlCarousel(options);
1389
1390      function changed_carousel(t) {
1391        $el
1392          .find(".owl-dots .owl-dot span")
1393          .stop()
1394          .width(0);
1395
1396        $at = $el.find(".owl-dots .owl-dot.active span").animate(
1397          {
1398            width: "100%"
1399          },
1400          t || timer || options.autoplayTimeout,
1401          "linear"
1402        );
1403      }
1404
1405      function changed() {
1406        for (var i = 0; i < yt_players.length; i++) {
1407          yt_players[i].stopVideo();
1408        }
1409        pt = new Date().getTime(); //시작시간초기화
1410        setTimeout(function() {
1411          var $li = $el.find(".active >");
1412          var idx = $li.data("idx");
1413
1414          $el.trigger("stop.owl.autoplay");
1415          var t = (timer = dot_timers[idx] || options.autoplayTimeout);
1416          $el.trigger("play.owl.autoplay", [t]);
1417          changed_carousel(t);
1418          if ($li.data("youtube")) {
1419            $li
1420              .find("iframe")
1421              .data("yt_player")
1422              .playVideo();
1423          }
1424        }, 1);
1425      }
1426
1427      if (options.autoplay) {
1428        $el.on("changed.owl.carousel", function(event) {
1429          changed();
1430        });
1431      }
1432    });
1433  };
1434 /*
1435  $.fn.owlOneItemExt.defaults = {
1436    loop: true, //clone이 생성되어 rewind?
1437    rewind: false,
1438    items: 1,
1439    autoplay: true,
1440    autoplayTimeout: 5000,
1441    autoplayHoverPause: false
1442  }; */
1443})($jq || jQuery); //$jq 우선
1444
1445(function($) {
1446  $.fn.owlTimer = function(opts) {
1447    
1448    return this.each(function() {
1449      var options = $.extend({}, $.fn.owlTimer.defaults, opts || {});
1450      var $el = $(this);
1451      // 타이머
1452      var $at = null;
1453      var timer = options.autoplayTimeout;
1454
1455      options.onInitialized = function(e) {
1456        if (options.autoplay) {
1457          changed_carousel();
1458        }
1459      };
1460
1461      if (options.autoplayHoverPause) {
1462        $el.mouseenter(function() {
1463          if ($at) $at.stop(true);
1464        });
1465        $el.mouseleave(function() {
1466          timer = options.autoplayTimeout;
1467          if ($at) {
1468            var t = (timer - timer * $at.width() / $at.parent().width());
1469            $at.animate({ width: '100%' }, t, 'linear');
1470          }
1471        });
1472      }
1473
1474      $el.owlCarousel(options);
1475
1476      function changed_carousel() {
1477        $el.find('.owl-dots .owl-dot span').stop().width(0);
1478        $at = $el.find('.owl-dots .owl-dot.active span').animate({ width: '100%' }, options.autoplayTimeout, 'linear');
1479      }
1480      if (options.autoplay) {
1481        $el.on('changed.owl.carousel', function(event) {
1482          changed_carousel();
1483        });
1484      }
1485    });
1486  };
1487
1488  $.fn.owlTimer.defaults = {
1489  }
1490})($jq || jQuery);
1491/**
1492 * StyleFix 1.0.3 & PrefixFree 1.0.7
1493 * @author Lea Verou
1494 * MIT license
1495 */
1496!(function(){function t(e,t){return[].slice.call((t||document).querySelectorAll(e))}if(!window.addEventListener)return;var e=window.StyleFix={link:function(t){try{if(t.rel!=="stylesheet"||t.hasAttribute("data-noprefix"))return}catch(n){return}var r=t.href||t.getAttribute("data-href"),i=r.replace(/[^\/]+$/,""),s=t.parentNode,o=new XMLHttpRequest,u;o.onreadystatechange=function(){o.readyState===4&&u()};u=function(){var n=o.responseText;if(n&&t.parentNode&&(!o.status||o.status<400||o.status>600)){n=e.fix(n,!0,t);if(i){n=n.replace(/url\(\s*?((?:"|')?)(.+?)\1\s*?\)/gi,function(e,t,n){return/^([a-z]{3,10}:|\/|#)/i.test(n)?e:'url("'+i+n+'")'});var r=i.replace(/([\\\^\$*+[\]?{}.=!:(|)])/g,"\\$1");n=n.replace(RegExp("\\b(behavior:\\s*?url\\('?\"?)"+r,"gi"),"$1")}var u=document.createElement("style");u.textContent=n;u.media=t.media;u.disabled=t.disabled;u.setAttribute("data-href",t.getAttribute("href"));s.insertBefore(u,t);
1496s.removeChild(t);u.media=t.media}};try{o.open("GET",r);o.send(null)}catch(n){if(typeof XDomainRequest!="undefined"){o=new XDomainRequest;o.onerror=o.onprogress=function(){};o.onload=u;o.open("GET",r);o.send(null)}}t.setAttribute("data-inprogress","")},styleElement:function(t){if(t.hasAttribute("data-noprefix"))return;var n=t.disabled;t.textContent=e.fix(t.textContent,!0,t);t.disabled=n},styleAttribute:function(t){var n=t.getAttribute("style");n=e.fix(n,!1,t);t.setAttribute("style",n)},process:function(){t('link[rel="stylesheet"]:not([data-inprogress])').forEach(StyleFix.link);t("style").forEach(StyleFix.styleElement);t("[style]").forEach(StyleFix.styleAttribute)},register:function(t,n){(e.fixers=e.fixers||[]).splice(n===undefined?e.fixers.length:n,0,t)},fix:function(t,n,r){for(var i=0;i<e.fixers.length;i++)t=e.fixers[i](t,n,r)||t;return t},camelCase:function(e){return e.replace(/-([a-z])/g,function(e,t){return t.toUpperCase()}).replace("-","")},deCamelCase:function(e){return e.replace(/[A-Z]/g,function(e){return"-"+e.toLowerCase()})}};(function(){setTimeout(function(){t('link[rel="stylesheet"]').forEach(StyleFix.link)},10);document.addEventListener("DOMContentLoaded",StyleFix.process,!1)})()})();(function(e){function t(e,t,r,i,s){e=n[e];if(e.length){var o=RegExp(t+"("+e.join("|")+")"+r,"gi");s=s.replace(o,i)}return s}if(!window.StyleFix||!window.getComputedStyle)return;var n=window.PrefixFree={prefixCSS:function(e,r,i){var s=n.prefix;n.functions.indexOf("linear-gradient")>-1&&(e=e.replace(/(\s|:|,)(repeating-)?linear-gradient\(\s*(-?\d*\.?\d*)deg/ig,function(e,t,n,r){return t+(n||"")+"linear-gradient("+(90-r)+"deg"}));e=t("functions","(\\s|:|,)","\\s*\\(","$1"+s+"$2(",e);e=t("keywords","(\\s|:)","(\\s|;|\\}|$)","$1"+s+"$2$3",e);e=t("properties","(^|\\{|\\s|;)","\\s*:","$1"+s+"$2:",e);if(n.properties.length){var o=RegExp("\\b("+n.properties.join("|")+")(?!:)","gi");e=t("valueProperties","\\b",":(.+?);",function(e){return e.replace(o,s+"$1")},e)}if(r){e=t("selectors","","\\b",n.prefixSelector,e);e=t("atrules","@","\\b","@"+s+"$1",e)}e=e.replace(RegExp("-"+s,"g"),"-");e=e.replace(/-\*-(?=[a-z]+)/gi,n.prefix);return e},property:function(e){return(n.properties.indexOf(e)?n.prefix:"")+e},value:function(e,r){e=t("functions","(^|\\s|,)","\\s*\\(","$1"+n.prefix+"$2(",e);e=t("keywords","(^|\\s)","(\\s|$)","$1"+n.prefix+"$2$3",e);return e},prefixSelector:function(e){return e.replace(/^:{1,2}/,function(e){return e+n.prefix})},prefixProperty:function(e,t){var r=n.prefix+e;return t?StyleFix.camelCase(r):r}};(function(){var e={},t=[],r={},i=getComputedStyle(document.documentElement,null),s=document.createElement("div").style,o=function(n){if(n.charAt(0)==="-"){t.push(n);var r=n.split("-"),i=r[1];e[i]=++e[i]||1;while(r.length>3){r.pop();var s=r.join("-");u(s)&&t.indexOf(s)===-1&&t.push(s)}}},u=function(e){return StyleFix.camelCase(e)in s};if(i.length>0)for(var a=0;a<i.length;a++)o(i[a]);else for(var f in i)o(StyleFix.deCamelCase(f));var l={uses:0};for(var c in e){var h=e[c];l.uses<h&&(l={prefix:c,uses:h})}n.prefix="-"+l.prefix+"-";n.Prefix=StyleFix.camelCase(n.prefix);n.properties=[];for(var a=0;a<t.length;a++){var f=t[a];if(f.indexOf(n.prefix)===0){var p=f.slice(n.prefix.length);u(p)||n.properties.push(p)}}n.Prefix=="Ms"&&!("transform"in s)&&!("MsTransform"in s)&&"msTransform"in s&&n.properties.push("transform","transform-origin");n.properties.sort()})();(function(){function i(e,t){r[t]="";r[t]=e;return!!r[t]}var e={"linear-gradient":{property:"backgroundImage",params:"red, teal"},calc:{property:"width",params:"1px + 5%"},element:{property:"backgroundImage",params:"#foo"},"cross-fade":{property:"backgroundImage",params:"url(a.png), url(b.png), 50%"}};e["repeating-linear-gradient"]=e["repeating-radial-gradient"]=e["radial-gradient"]=e["linear-gradient"];var t={initial:"color","zoom-in":"cursor","zoom-out":"cursor",box:"display",flexbox:"display","inline-flexbox":"display",flex:"display","inline-flex":"display"};n.functions=[];n.keywords=[];var r=document.createElement("div").style;for(var s in e){var o=e[s],u=o.property,a=s+"("+o.params+")";!i(a,u)&&i(n.prefix+a,u)&&n.functions.push(s)}for(var f in t){var u=t[f];!i(f,u)&&i(n.prefix+f,u)&&n.keywords.push(f)}})();(function(){function s(e){i.textContent=e+"{}";return!!i.sheet.cssRules.length}var t={":read-only":null,":read-write":null,":any-link":null,"::selection":null},r={keyframes:"name",viewport:null,document:'regexp(".")'};n.selectors=[];n.atrules=[];var i=e.appendChild(document.createElement("style"));for(var o in t){var u=o+(t[o]?"("+t[o]+")":"");!s(u)&&s(n.prefixSelector(u))&&n.selectors.push(o)}for(var a in r){var u=a+" "+(r[a]||"");!s("@"+u)&&s("@"+n.prefix+u)&&n.atrules.push(a)}e.removeChild(i)})();n.valueProperties=["transition","transition-property"];e.className+=" "+n.prefix;StyleFix.register(n.prefixCSS)})(document.documentElement);
1497/**
1498 * Cookie plugin
1499 *
1500 * Copyright (c) 2006 Klaus Hartl (stilbuero.de)
1501 * Dual licensed under the MIT and GPL licenses:
1502 * http://www.opensource.org/licenses/mit-license.php
1503 * http://www.gnu.org/licenses/gpl.html
1504 *
1505 */
1506
1507/**
1508 * Create a cookie with the given name and value and other optional parameters.
1509 *
1510 * @example $.cookie('the_cookie', 'the_value');
1511 * @desc Set the value of a cookie.
1512 * @example $.cookie('the_cookie', 'the_value', {expires: 7, path: '/', domain: 'jquery.com', secure: true});
1513 * @desc Create a cookie with all available options.
1514 * @example $.cookie('the_cookie', 'the_value');
1515 * @desc Create a session cookie.
1516 * @example $.cookie('the_cookie', null);
1517 * @desc Delete a cookie by passing null as value.
1518 *
1519 * @param String name The name of the cookie.
1520 * @param String value The value of the cookie.
1521 * @param Object options An object literal containing key/value pairs to provide optional cookie attributes.
1522 * @option Number|Date expires Either an integer specifying the expiration date from now on in days or a Date object.
1523 *                             If a negative value is specified (e.g. a date in the past), the cookie will be deleted.
1524 *                             If set to null or omitted, the cookie will be a session cookie and will not be retained
1525 *                             when the the browser exits.
1526 * @option String path The value of the path atribute of the cookie (default: path of page that created the cookie).
1527 * @option String domain The value of the domain attribute of the cookie (default: domain of page that created the cookie).
1528 * @option Boolean secure If true, the secure attribute of the cookie will be set and the cookie transmission will
1529 *                        require a secure protocol (like HTTPS).
1530 * @type undefined
1531 *
1532 * @name $.cookie
1533 * @cat Plugins/Cookie
1534 * @author Klaus Hartl/[email protected]
1535 */
1536
1537/**
1538 * Get the value of a cookie with the given name.
1539 *
1540 * @example $.cookie('the_cookie');
1541 * @desc Get the value of a cookie.
1542 *
1543 * @param String name The name of the cookie.
1544 * @return The value of the cookie.
1545 * @type String
1546 *
1547 * @name $.cookie
1548 * @cat Plugins/Cookie
1549 * @author Klaus Hartl/[email protected]
1550 */
1551;jQuery.cookie = function(name, value, options) {
1552    if (typeof value != 'undefined') { // name and value given, set cookie
1553        options = options || {};
1554        if (value === null) {
1555            value = '';
1556            options.expires = -1; //options.path = "/";
1557        }
1558        var expires = '';
1559        if (options.expires && (typeof options.expires == 'number' || options.expires.toUTCString)) {
1560            var date;
1561            if (typeof options.expires == 'number') {
1562                date = new Date();
1563                date.setTime(date.getTime() + (options.expires * 24 * 60 * 60 * 1000));
1564            } else {
1565                date = options.expires;
1566            }
1567            expires = '; expires=' + date.toUTCString(); // use expires attribute, max-age is not supported by IE
1568        }
1569        var path = options.path ? '; path=' + options.path : '';
1570        var domain = options.domain ? '; domain=' + options.domain : '';
1571        var secure = options.secure ? '; secure' : '';
1572        document.cookie = [name, '=', encodeURIComponent(value), expires, path, domain, secure].join('');
1573    } else { // only name given, get cookie
1574        var cookieValue = null;
1575        if (document.cookie && document.cookie != '') {
1576            var cookies = document.cookie.split(';');
1577            for (var i = 0; i < cookies.length; i++) {
1578                var cookie = jQuery.trim(cookies[i]);
1579                // Does this cookie string begin with the name we want?
1580                if (cookie.substring(0, name.length + 1) == (name + '=')) {
1581                    cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
1582                    break;
1583                }
1584            }
1585        }
1586        return cookieValue;
1587    }
1588};
1589function _extends(){return(_extends=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(t[o]=n[o])}return t}).apply(this,arguments)}function _typeof(t){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}!function(t,e){"object"===("undefined"==typeof exports?"undefined":_typeof(exports))&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):t.LazyLoad=e()}(this,function(){"use strict";var t="undefined"!=typeof window,e=t&&!("onscroll"in window)||"undefined"!=typeof navigator&&/(gle|ing|ro)bot|crawl|spider/i.test(navigator.userAgent),n=t&&"IntersectionObserver"in window,o=t&&"classList"in document.createElement("p"),r={elements_selector:"img",container:e||t?document:null,threshold:300,thresholds:null,data_src:"src",data_srcset:"srcset",data_sizes:"sizes",data_bg:"bg",class_loading:"loading",class_loaded:"loaded",class_error:"error",load_delay:0,auto_unobserve:!0,callback_enter:null,callback_exit:null,callback_reveal:null,callback_loaded:null,callback_error:null,callback_finish:null,use_native:!1},a=function(t,e){var n,o=new t(e);try{n=new CustomEvent("LazyLoad::Initialized",{detail:{instance:o}})}catch(t){(n=document.createEvent("CustomEvent")).initCustomEvent("LazyLoad::Initialized",!1,!1,{instance:o})}window.dispatchEvent(n)};var i=function(t,e){return t.getAttribute("data-"+e)},s=function(t,e,n){var o="data-"+e;null!==n?t.setAttribute(o,n):t.removeAttribute(o)},c=function(t){return"true"===i(t,"was-processed")},l=function(t,e){return s(t,"ll-timeout",e)},u=function(t){return i(t,"ll-timeout")},d=function(t,e){t&&t(e)},f=function(t,e){t._loadingCount+=e,0===t._elements.length&&0===t._loadingCount&&d(t._settings.callback_finish)},_=function(t){for(var e,n=[],o=0;e=t.children[o];o+=1)"SOURCE"===e.tagName&&n.push(e);return n},v=function(t,e,n){n&&t.setAttribute(e,n)},g=function(t,e){v(t,"sizes",i(t,e.data_sizes)),v(t,"srcset",i(t,e.data_srcset)),v(t,"src",i(t,e.data_src))},m={IMG:function(t,e){var n=t.parentNode;
1589n&&"PICTURE"===n.tagName&&_(n).forEach(function(t){g(t,e)});g(t,e)},IFRAME:function(t,e){v(t,"src",i(t,e.data_src))},VIDEO:function(t,e){_(t).forEach(function(t){v(t,"src",i(t,e.data_src))}),v(t,"src",i(t,e.data_src)),t.load()}},b=function(t,e){var n,o,r=e._settings,a=t.tagName,s=m[a];if(s)return s(t,r),f(e,1),void(e._elements=(n=e._elements,o=t,n.filter(function(t){return t!==o})));!function(t,e){var n=i(t,e.data_src),o=i(t,e.data_bg);n&&(t.style.backgroundImage='url("'.concat(n,'")')),o&&(t.style.backgroundImage=o)}(t,r)},h=function(t,e){o?t.classList.add(e):t.className+=(t.className?" ":"")+e},p=function(t,e,n){t.addEventListener(e,n)},y=function(t,e,n){t.removeEventListener(e,n)},E=function(t,e,n){y(t,"load",e),y(t,"loadeddata",e),y(t,"error",n)},w=function(t,e,n){var r=n._settings,a=e?r.class_loaded:r.class_error,i=e?r.callback_loaded:r.callback_error,s=t.target;!function(t,e){o?t.classList.remove(e):t.className=t.className.replace(new RegExp("(^|\\s+)"+e+"(\\s+|$)")," ").replace(/^\s+/,"").replace(/\s+$/,"")}(s,r.class_loading),h(s,a),d(i,s),f(n,-1)},I=function(t,e){var n=function n(r){w(r,!0,e),E(t,n,o)},o=function o(r){w(r,!1,e),E(t,n,o)};!function(t,e,n){p(t,"load",e),p(t,"loadeddata",e),p(t,"error",n)}(t,n,o)},k=["IMG","IFRAME","VIDEO"],A=function(t,e){var n=e._observer;z(t,e),n&&e._settings.auto_unobserve&&n.unobserve(t)},L=function(t){var e=u(t);e&&(clearTimeout(e),l(t,null))},x=function(t,e){var n=e._settings.load_delay,o=u(t);o||(o=setTimeout(function(){A(t,e),L(t)},n),l(t,o))},z=function(t,e,n){var o=e._settings;!n&&c(t)||(k.indexOf(t.tagName)>-1&&(I(t,e),h(t,o.class_loading)),b(t,e),function(t){s(t,"was-processed","true")}(t),d(o.callback_reveal,t),d(o.callback_set,t))},O=function(t){return!!n&&(t._observer=new IntersectionObserver(function(e){e.forEach(function(e){return function(t){return t.isIntersecting||t.intersectionRatio>0}(e)?function(t,e){var n=e._settings;d(n.callback_enter,t),n.load_delay?x(t,e):A(t,e)}(e.target,t):function(t,e){var n=e._settings;d(n.callback_exit,t),n.load_delay&&L(t)}(e.target,t)})},{root:(e=t._settings).container===document?null:e.container,rootMargin:e.thresholds||e.threshold+"px"}),!0);var e},N=["IMG","IFRAME"],C=function(t,e){return function(t){return t.filter(function(t){return!c(t)})}((n=t||function(t){return t.container.querySelectorAll(t.elements_selector)}(e),Array.prototype.slice.call(n)));var n},M=function(t,e){this._settings=function(t){return _extends({},r,t)}(t),this._loadingCount=0,O(this),this.update(e)};return M.prototype={update:function(t){var n,o=this,r=this._settings;(this._elements=C(t,r),!e&&this._observer)?(function(t){return t.use_native&&"loading"in HTMLImageElement.prototype}(r)&&((n=this)._elements.forEach(function(t){-1!==N.indexOf(t.tagName)&&(t.setAttribute("loading","lazy"),z(t,n))}),this._elements=C(t,r)),this._elements.forEach(function(t){o._observer.observe(t)})):this.loadAll()},destroy:function(){var t=this;this._observer&&(this._elements.forEach(function(e){t._observer.unobserve(e)}),this._observer=null),this._elements=null,this._settings=null},load:function(t,e){z(t,this,e)},loadAll:function(){var t=this;this._elements.forEach(function(e){A(e,t)})}},t&&function(t,e){if(e)if(e.length)for(var n,o=0;n=e[o];o+=1)a(t,n);else a(t,e)}(M,window.lazyLoadOptions),M});
1590//# sourceMappingURL=lazyload.min.js.map
1591
1592/*===================================================================================================================
1593 * @name: bPopup
1594 * @type: jQuery
1595 * @author: (c) Bjoern Klinggaard - @bklinggaard
1596 * @demo: http://dinbror.dk/bpopup
1597 * @requires jQuery 1.4.3
1598 *==================================================================================================================*/
1599/*===================================================================================================================
1600 * @tlog 옵션을 추가했습니다. 
1601 * (autoClose)옵션시 mouseenter시 닫힘 방지
1602 * ajax로 불러올 때 옵션 추가(preLoadUrl)
1603 * 위치 bottom, right 사용추가(positionRight)
1604 * class 변경으로 transition 추가하기 위해 (openClass) 옵션 추가
1605 *==================================================================================================================*/
1606//console.log(jQuery.fn.jquery);
1607!(function ($) {
1608  'use strict';
1609
1610  $.fn.bPopup = function (options, callback) {
1611
1612    if ($.isFunction(options)) {
1613      callback = options;
1614      options = null;
1615    }
1616
1617    // OPTIONS
1618    var o = $.extend({}, $.fn.bPopup.defaults, options);
1619
1620    // HIDE SCROLLBAR?  
1621    if (!o.scrollBar)
1622      $('html').css('overflow', 'hidden');
1623
1624    // VARIABLES	
1625    var $popup = this,
1626      d = $(document),
1627      w = window,
1628      $w = $(w),
1629      wH = windowHeight(),
1630      wW = windowWidth(),
1631      prefix = '__b-popup',
1632      isIOS6X = (/OS 6(_\d)+/i).test(navigator.userAgent) // Used for a temporary fix for ios6 timer bug when using zoom/scroll 
1633      ,
1634      buffer = 200,
1635      popups = 0,
1636      id, inside, fixedVPos, fixedHPos, fixedPosStyle, vPos, hPos, height, width, debounce, autoCloseTO;
1637
1638    ////////////////////////////////////////////////////////////////////////////////////////////////////////////
1639    // PUBLIC FUNCTION - call it: $(element).bPopup().close();
1640    ////////////////////////////////////////////////////////////////////////////////////////////////////////////
1641    $popup.close = function () {
1642      close();
1643    };
1644
1645    $popup.reposition = function (animateSpeed) {
1646      reposition(animateSpeed);
1647    };
1648
1649    return $popup.each(function () {
1650      if ($(this).data('bPopup')) return; //POPUP already exists?
1651      init();
1652    });
1653
1654    ////////////////////////////////////////////////////////////////////////////////////////////////////////////
1655    // HELPER FUNCTIONS - PRIVATE
1656    ////////////////////////////////////////////////////////////////////////////////////////////////////////////
1657    function init() {
1658      triggerCall(ajaxLoad);
1659      triggerCall(o.onOpen);
1660      popups = ($w.data('bPopup') || 0) + 1,
1661        id = prefix + popups + '__',
1662        fixedVPos = o.position[1] !== 'auto',
1663        fixedHPos = o.position[0] !== 'auto',
1664        fixedPosStyle = o.positionStyle === 'fixed',
1665        height = $popup.outerHeight(true),
1666        width = $popup.outerWidth(true);
1667      o.loadUrl ? createContent() : open();
1668    };
1669
1670    //@tlog preLoadUrl시 추가
1671    function ajaxLoad() {
1672      var $this = $(this);
1673      if (!$this.hasClass('pre-loaded') && o.preLoadUrl) {
1674        $.ajax({
1675          url: o.preLoadUrl,
1676          dataType: 'html',
1677          async: false,
1678          success: function (data) {
1679            var html = '';
1680            if (o.preLoadSelector) {
1681              html = $("<div class='remove'/>").html(data).find(o.preLoadSelector).html();;
1682            } else {
1683              html = data;
1684            }
1685            $this.append(html);
1686            $this.addClass('pre-loaded');
1687          }
1688        });
1689      }
1690    }
1691
1692    function createContent() {
1693      o.contentContainer = $(o.contentContainer || $popup);
1694      switch (o.content) {
1695        case ('iframe'):
1696          var iframe = $('<iframe class="b-iframe" ' + o.iframeAttr + '></iframe>');
1697          iframe.appendTo(o.contentContainer);
1698          height = $popup.outerHeight(true);
1699          width = $popup.outerWidth(true);
1700          open();
1701          iframe.attr('src', o.loadUrl); // setting iframe src after open due IE9 bug
1702          triggerCall(o.loadCallback);
1703          break;
1704        case ('image'):
1705          open();
1706          $('<img />')
1707            .load(function () {
1708              triggerCall(o.loadCallback);
1709              recenter($(this));
1710            }).attr('src', o.loadUrl).hide().appendTo(o.contentContainer);
1711          break;
1712        default:
1713          open();
1714          $('<div class="b-ajax-wrapper"></div>')
1715            .load(o.loadUrl, o.loadData, function (response, status, xhr) {
1716              triggerCall(o.loadCallback, status);
1717              recenter($(this));
1718            }).hide().appendTo(o.contentContainer);
1719          break;
1720      }
1721    };
1722
1723    function open() {
1724      // MODAL OVERLAY
1725      if (o.modal) {
1726        $('<div class="b-modal ' + id + '"></div>')
1727          .css({
1728            backgroundColor: o.modalColor,
1729            position: 'fixed',
1730            top: 0,
1731            right: 0,
1732            bottom: 0,
1733            left: 0,
1734            opacity: 0,
1735            zIndex: o.zIndex + popups
1736          })
1737          .appendTo(o.appendTo)
1738          .fadeTo(o.speed, o.opacity);
1739      }
1740      
1741      // POPUP
1742      calcPosition();
1743      var css = {
1744        'position': o.positionStyle || 'absolute',
1745        'z-index': o.zIndex + popups + 1
1746      };
1747      if (o.transition !== 'custom') {
1748        if (!o.positionRight) css.left = o.transition == 'slideIn' || o.transition == 'slideBack' ? (o.transition == 'slideBack' ? d.scrollLeft() + wW : (hPos + width) * -1) : getLeftPos(!(!o.follow[0] && fixedHPos || fixedPosStyle));
1749        else css.right = o.transition == 'slideIn' || o.transition == 'slideBack' ? (o.transition == 'slideBack' ? d.scrollLeft() + wW : (hPos + width) * -1) : getLeftPos(!(!o.follow[0] && fixedHPos || fixedPosStyle));
1750        if (!o.positionBottom) css.top = o.transition == 'slideDown' || o.transition == 'slideUp' ? (o.transition == 'slideUp' ? d.scrollTop() + wH : vPos + height * -1) : getTopPos(!(!o.follow[1] && fixedVPos || fixedPosStyle));
1751        else css.bottom = o.transition == 'slideDown' || o.transition == 'slideUp' ? (o.transition == 'slideUp' ? d.scrollTop() + wH : vPos + height * -1) : getTopPos(!(!o.follow[1] && fixedVPos || fixedPosStyle));
1752      }
1753      $popup
1754        .data('bPopup', o).data('id', id)
1755        .css(css).each(function () {
1756          if (o.appending) {
1757            $(this).appendTo(o.appendTo);
1758          }
1759        });
1760      doTransition(true);
1761      
1762      //@tlog openClass
1763      if (o.openClass) {
1764        setTimeout(function() {
1765          $popup.addClass(o.openClass);
1766        }, 10); //transition 이 적용되기 위해 시간을 둔다.
1767      }
1768    };
1769
1770    function close() {
1771      if (o.modal) {
1772        $('.b-modal.' + $popup.data('id'))
1773          .fadeTo(o.speed, 0, function () {
1774            $(this).remove();
1775          });
1776      }
1777      if (o.openClass) {
1778        $popup.removeClass(o.openClass);
1779      }
1780      // Clean up
1781      unbindEvents();
1782      clearTimeout(autoCloseTO);
1783      // Close trasition
1784      doTransition();
1785      return false; // Prevent default
1786    };
1787
1788    function reposition(animateSpeed) {
1789      wH = windowHeight();
1790      wW = windowWidth();
1791      inside = insideWindow();
1792      if (inside.x || inside.y) {
1793        clearTimeout(debounce);
1794        debounce = setTimeout(function () {
1795          calcPosition();
1796          animateSpeed = animateSpeed || o.followSpeed;
1797          var css = {};
1798          if (inside.x)
1799            css.left = o.follow[0] ? getLeftPos(true) : 'auto';
1800          if (inside.y)
1801            css.top = o.follow[1] ? getTopPos(true) : 'auto';
1802          $popup
1803            .dequeue()
1804            .each(function () {
1805              if (fixedPosStyle) {
1806                $(this).css({
1807                  'left': hPos,
1808                  'top': vPos
1809                });
1810              } else {
1811                $(this).animate(css, animateSpeed, o.followEasing);
1812              }
1813            });
1814        }, 50);
1815      }
1816    };
1817
1818    //Eksperimental
1819    function recenter(content) {
1820      var _width = content.width(),
1821        _height = content.height(),
1822        css = {};
1823      o.contentContainer.css({
1824        height: _height,
1825        width: _width
1826      });
1827      if (_height >= $popup.height()) {
1828        css.height = $popup.height();
1829      }
1830      if (_width >= $popup.width()) {
1831        css.width = $popup.width();
1832      }
1833      height = $popup.outerHeight(true), width = $popup.outerWidth(true);
1834
1835      calcPosition();
1836      o.contentContainer.css({
1837        height: 'auto',
1838        width: 'auto'
1839      });
1840      //@tlog 
1841      if (!o.positionRight) css.left = getLeftPos(!(!o.follow[0] && fixedHPos || fixedPosStyle));
1842      else css.right = getLeftPos(!(!o.follow[0] && fixedHPos || fixedPosStyle));
1843      if (!o.positionBottom) css.top = getTopPos(!(!o.follow[1] && fixedVPos || fixedPosStyle));
1844      else css.bottom = getTopPos(!(!o.follow[1] && fixedVPos || fixedPosStyle));
1845
1846      $popup
1847        .animate(
1848          css, 250,
1849          function () {
1850            content.show();
1851            inside = insideWindow();
1852          }
1853        );
1854    };
1855
1856    function bindEvents() {
1857      $w.data('bPopup', popups);
1858      $popup.delegate('.bClose, .' + o.closeClass, 'click.' + id, close); // legacy, still supporting the close class bClose
1859
1860      if (o.modalClose) {
1861        $('.b-modal.' + id).css('cursor', 'pointer').bind('click', close);
1862      }
1863
1864      // Temporary disabling scroll/resize events on devices with IOS6+
1865      // due to a bug where events are dropped after pinch to zoom
1866      if (!isIOS6X && (o.follow[0] || o.follow[1])) {
1867        $w.bind('scroll.' + id, function () {
1868          if (inside.x || inside.y) {
1869            var css = {};
1870            if (inside.x)
1871              css.left = o.follow[0] ? getLeftPos(!fixedPosStyle) : 'auto';
1872            if (inside.y)
1873              css.top = o.follow[1] ? getTopPos(!fixedPosStyle) : 'auto';
1874            $popup
1875              .dequeue()
1876              .animate(css, o.followSpeed, o.followEasing);
1877          }
1878        }).bind('resize.' + id, function () {
1879          reposition();
1880        });
1881      }
1882      if (o.escClose) {
1883        d.bind('keydown.' + id, function (e) {
1884          if (e.which == 27) { //escape
1885            close();
1886          }
1887        });
1888      }
1889    };
1890
1891    function unbindEvents() {
1892      if (!o.scrollBar) {
1893        $('html').css('overflow', 'auto');
1894      }
1895      $('.b-modal.' + id).unbind('click');
1896      d.unbind('keydown.' + id);
1897      $w.unbind('.' + id).data('bPopup', ($w.data('bPopup') - 1 > 0) ? $w.data('bPopup') - 1 : null);
1898      $popup.undelegate('.bClose, .' + o.closeClass, 'click.' + id, close).data('bPopup', null);
1899    };
1900
1901    function doTransition(open) {
1902      switch (open ? o.transition : o.transitionClose || o.transition) {
1903        case "slideIn":
1904          animate({
1905            left: open ? getLeftPos(!(!o.follow[0] && fixedHPos || fixedPosStyle)) : d.scrollLeft() - (width || $popup.outerWidth(true)) - buffer
1906          });
1907          break;
1908        case "slideBack":
1909          animate({
1910            left: open ? getLeftPos(!(!o.follow[0] && fixedHPos || fixedPosStyle)) : d.scrollLeft() + wW + buffer
1911          });
1912          break;
1913        case "slideDown":
1914          animate({
1915            top: open ? getTopPos(!(!o.follow[1] && fixedVPos || fixedPosStyle)) : d.scrollTop() - (height || $popup.outerHeight(true)) - buffer
1916          });
1917          break;
1918        case "slideUp":
1919          animate({
1920            top: open ? getTopPos(!(!o.follow[1] && fixedVPos || fixedPosStyle)) : d.scrollTop() + wH + buffer
1921          });
1922          break;
1923          //@tlog
1924        case "custom":
1925          onCompleteCallback(open);
1926          break;
1927        default:
1928          //Hardtyping 1 and 0 to ensure opacity 1 and not 0.9999998
1929          $popup.stop().fadeTo(o.speed, open ? 1 : 0, function () {
1930            onCompleteCallback(open);
1931          });
1932      }
1933
1934      function animate(css) {
1935        $popup
1936          .css({
1937            display: 'block',
1938            opacity: 1
1939          })
1940          .animate(css, o.speed, o.easing, function () {
1941            onCompleteCallback(open);
1942          });
1943      };
1944    };
1945
1946    function onCompleteCallback(open) {
1947      if (open) {
1948        bindEvents();
1949        if (o.transition === 'custom' && o.speed) $popup.css({display:'block'});
1950        
1951        triggerCall(callback); //@tlog o.transition === custom 일때 callback에서 animate 함수 작업을 한다.
1952        if (o.autoClose) {
1953          autoCloseTO = setTimeout(close, o.autoClose);
1954          //@tlog mouseenter 추가
1955          $popup.mouseenter(function (e) {
1956            clearTimeout(autoCloseTO);
1957          });
1958          $popup.mouseleave(function (e) {
1959            autoCloseTO = setTimeout(close, o.autoClose);
1960          });
1961        }
1962
1963      } else {
1964        //@tlog custom 일때 onClose에서 알아서 한다.
1965        if (o.transition !== 'custom') {
1966          $popup.hide();
1967        } else {
1968          if (o.speed) setTimeout(function() {$popup.css({display:'none'})}, o.speed);          
1969        }
1970        triggerCall(o.onClose);
1971        if (o.loadUrl) {
1972          o.contentContainer.empty();
1973          $popup.css({
1974            height: 'auto',
1975            width: 'auto'
1976          });
1977        }
1978      }
1979    };
1980
1981    function getLeftPos(includeScroll) {
1982      return includeScroll ? hPos + d.scrollLeft() : hPos;
1983    };
1984
1985    function getTopPos(includeScroll) {
1986      return includeScroll ? vPos + d.scrollTop() : vPos;
1987    };
1988
1989    function triggerCall(func, arg) {
1990      $.isFunction(func) && func.call($popup, arg);
1991    };
1992
1993    function calcPosition() {
1994      vPos = fixedVPos ? o.position[1] : Math.max(0, ((wH - $popup.outerHeight(true)) / 2) - o.amsl);
1995      hPos = fixedHPos ? o.position[0] : (wW - $popup.outerWidth(true)) / 2, inside = insideWindow();
1996    };
1997
1998    function insideWindow() {
1999      return {
2000        x: wW > $popup.outerWidth(true),
2001        y: wH > $popup.outerHeight(true)
2002      }
2003    };
2004
2005    function windowHeight() {
2006      return $w.height();
2007    };
2008
2009    function windowWidth() {
2010      return $w.width();
2011    };
2012  };
2013
2014  ////////////////////////////////////////////////////////////////////////////////////////////////////////////
2015  // DEFAULT VALUES
2016  ////////////////////////////////////////////////////////////////////////////////////////////////////////////
2017  $.fn.bPopup.defaults = {
2018    amsl: 50,
2019    appending: true,
2020    appendTo: 'body',
2021    autoClose: false,
2022    closeClass: 'p-close',
2023    content: 'ajax', // ajax, iframe or image,
2024    contentContainer: false,
2025    easing: 'easeInOutExpo',
2026    escClose: true,
2027    follow: [true, true], // x, y
2028    followEasing: 'easeInOutExpo',
2029    followSpeed: 500,
2030    iframeAttr: 'scrolling="no" frameborder="0"',
2031    loadCallback: false,
2032    loadData: false,
2033    loadUrl: false,
2034    modal: true,
2035    modalClose: true,
2036    modalColor: '#000',
2037    onClose: false,
2038    onOpen: false,
2039    opacity: 0.8,
2040    position: ['auto', 'auto'], // x, y,
2041    positionStyle: 'absolute', // absolute or fixed
2042    scrollBar: true,
2043    speed: 0, // open & close speed
2044    transition: 'fadeIn', //transitions: fadeIn, slideDown, slideIn, slideBack, custom @tlog custom 추가 
2045    transitionClose: false,
2046    zIndex: 9997, // popup gets z-index 9999, modal overlay 9998
2047    //@tlog 추가옵션
2048    openClass: false,
2049    preLoadUrl: false,
2050    preLoadSelector: false,
2051    positionRight: false,
2052    positionBottom: false
2053  };
2054})(jQuery);
2055/*********************************************************************************
2056
2057    제작 : http://designblack.com
2058    라이센스 : 무한인라이센스, 엄우식(디자인웹굿)
2059    해당 주석은 저작권상 절대 삭제 불가입니다.
2060
2061*********************************************************************************/
2062
2063
2064
2065// jquery.d_fixedMenu.js (스크롤고정)
2066!(function($){$.fn.d_fixedMenu=function(f){var g={top:0};$.extend(g,f);return this.each(function(){var a=$(window);var b=$(this);var c;var d=b.offset().top-g.top;var e=b.height();setInit();function setInit(){b.after('<div></div>');setScroll()};function setScroll(){a.scroll(function(){c=a.scrollTop();if(c>=d){if(!b.hasClass('fixed')){b.next().css('height',e);b.addClass('fixed')}}else{if(b.hasClass('fixed')){b.removeClass('fixed');b.next().css('height',0)};d=b.offset().top-g.top}})}})}})(jQuery);
2067
2068	$('#header .part_02').d_fixedMenu({
2069        top:0,                        //.fixed{top:동일값}
2070    });
2071
2072	$('.cp550').d_fixedMenu({
2073        top:0,                        //.fixed{top:동일값}
2074    });
2075
2076
2077
2078// jquery.d_quickFloating.min.js (패널)
2079!function(o){o.fn.d_quickFloating=function(e){var t={dir:"right",openState:1,closeGap:0,motionSpeed:500,cookieDay:1,lightboxSpeed:300,autoCloseTime:3e3};return o.extend(t,e),this.each(function(){function e(){i(),s()}function i(){null==o.cookie(u)&&1==t.openState&&o.cookie(u,"show",{path:"/",expires:t.cookieDay}),"show"==o.cookie(u)?(d=1,l.addClass("d_on")):(d=0,"left"==m?c.css("left",-h+t.closeGap):"right"==m?c.css("right",-h+t.closeGap):"top"==m?c.css("top",-r+t.closeGap):"bottom"==m&&c.css("bottom",-r+t.closeGap)),c.show()}function s(){c.bind("mouseenter",function(){g=1}).bind("mouseleave",function(){g=0}),l.bind("click",function(){"left"==m?1==d?(c.stop().animate({left:-h+t.closeGap},t.motionSpeed,"easeInOutExpo"),o(this).removeClass("d_on"),o.cookie(u,"hide",{path:"/",expires:t.cookieDay})):(c.stop().animate({left:0},t.motionSpeed,"easeInOutExpo"),o(this).addClass("d_on"),o.cookie(u,"show",{path:"/",expires:t.cookieDay})):"right"==m?1==d?(c.stop().animate({right:-h+t.closeGap},t.motionSpeed,"easeInOutExpo"),o(this).removeClass("d_on"),o.cookie(u,"hide",{path:"/",expires:t.cookieDay})):(c.stop().animate({right:0},t.motionSpeed,"easeInOutExpo"),o(this).addClass("d_on"),o.cookie(u,"show",{path:"/",expires:t.cookieDay})):"top"==m?1==d?(c.stop().animate({top:-r+t.closeGap},t.motionSpeed,"easeInOutExpo"),o(this).removeClass("d_on"),o.cookie(u,"hide",{path:"/",expires:t.cookieDay})):(c.stop().animate({top:0},t.motionSpeed,"easeInOutExpo"),o(this).addClass("d_on"),o.cookie(u,"show",{path:"/",expires:t.cookieDay})):"bottom"==m&&(1==d?(c.stop().animate({bottom:-r+t.closeGap},t.motionSpeed,"easeInOutExpo"),o(this).removeClass("d_on"),o.cookie(u,"hide",{path:"/",expires:t.cookieDay})):(c.stop().animate({bottom:0},t.motionSpeed,"easeInOutExpo"),o(this).addClass("d_on"),o.cookie(u,"show",{path:"/",expires:t.cookieDay}))),0==d&&n(),d=!d,a()})}function a(){o("body").find(".d_on").length>0?(x.addClass("lightbox"),$lightbox.addClass("on"),$lightbox.stop().fadeIn(t.lightboxSpeed)):(x.removeClass("lightbox"),$lightbox.removeClass("on"),$lightbox.stop().fadeOut(t.lightboxSpeed))}function n(){var o=0;p=setInterval(function(){0==g&&(o+=500),1==d?o>t.autoCloseTime&&(clearInterval(p),l.click()):clearInterval(p)},500)}var d,p,c=o(this),l=c.find(".d_toggle"),h=c.width(),r=c.height(),m=t.dir,u="d_quickFloating_"+m,x=o("body"),g=0;c.hide(),e(),0==o(".d_lightbox").length&&(o("body").prepend('<div class="d_lightbox"></div>'),$lightbox=o(".d_lightbox"),$lightbox.bind("click",function(){o(".d_etc18 .d_toggle").each(function(){o(this).hasClass("d_on")&&o(this).click()})})),a()})}}(jQuery);
2080
2081
2082
2083
2084
2085// jquery.DB_prd_thumb.js 상품목록 @tlog src --> data-src
2086!(function($){$.fn.DB_prd_thumb=function(r){var s={motionSpeed:300};$.extend(s,r);return this.each(function(){var c=$(this);var d=c.find('.img');var f=d.find('> li');for(var i=0;i<f.length;i++){var g=f.eq(i);if(g.find('img').attr('data-src')==''){g.remove()}};f=d.find('> li');var h=c.find('.arrow');var j=c.find('.next');var k=c.find('.prev');var l=f.length;if(l==1){c.remove();return};var m=c.find('.btn');if(m.find('li').length==0){for(var i=0;i<l;i++){m.append('<li class=n'+(i+1)+'>'+(i+1)+'</li>')}};var n=m.find('> li');var o=0;var p=0;var q='next';init();
2086function init(){setCss();setMouseEvent()};function setCss(){for(var i=0;i<l;i++){var a=f.eq(i);a.css({'top':0,'left':0});if(i==o){a.show()}else{a.hide()}};n.eq(p).removeClass('on');n.eq(o).addClass('on');p=o};function setMouseEvent(){c.bind('mouseenter',function(){$(this).addClass('on')});c.bind('mouseleave',function(){$(this).removeClass('on');if(o!=0){o=0;setAnimation()}});n.bind('mouseenter',function(){var a=$(this).index();if(a>o){q='next'}else{q='prev'};if(o!=a){o=a;setAnimation()}});j.bind('click',function(e){e.preventDefault();q='next';changeCurrent()});k.bind('click',function(e){e.preventDefault();q='prev';changeCurrent()})};function changeCurrent(){if(q=='next'){o=++o%l}else if(q=='prev'){o=(o==0)?l-1:--o%l};setAnimation()};function setAnimation(){var a=f.eq(p);var b=f.eq(o);a.stop(true,true).fadeOut(s.motionSpeed);b.stop(true,true).fadeIn(s.motionSpeed);n.eq(p).removeClass('on');n.eq(o).addClass('on');p=o}})}})(jQuery);
2087$('.prdList .d_thumb').DB_prd_thumb();
2088
2089
2090
2091
2092
2093// jquery.DB_slideStepBanner.min.js
2094!function(n){n.fn.DB_slideStepBanner=function(e){var i={moveSpeed:500,axis:"x",dir:"next",autoRollingTime:5e3,viewNum:1,overStop:!0};return n.extend(i,e),this.each(function(){function e(){t(),x>i.viewNum?(o(),a()):(p.hide(),d.hide())}function t(){for(var n=0;x>n;n++){var e=r.eq(n);v[n]=e,m[n]=h*n,"x"==i.axis?e.css({position:"absolute",left:h*n}):e.css({position:"absolute",top:h*n})}}function o(){f.bind("mouseenter",function(){b&&(S=1)}).bind("mouseleave",function(){S=0}),p.bind("click",function(){g&&(g=0,i.dir="next",s())}),d.bind("click",function(){g&&(g=0,i.dir="prev",s())})}function s(){for(var e=0;x>e;e++)"x"==i.axis?"next"==i.dir?v[e].css("left",m[e]).animate({left:m[e]-h},i.moveSpeed,"easeInOutExpo",function(){0==n(this).index()&&(g=1,v.push(v.shift()))}):(0==e&&v.unshift(v.pop()),v[e].css("left",m[e]-h).animate({left:m[e]},i.moveSpeed,"easeInOutExpo",function(){0==n(this).index()&&(g=1)})):"next"==i.dir?v[e].css("top",m[e]).animate({top:m[e]-h},i.moveSpeed,"easeInOutExpo",function(){0==n(this).index()&&(g=1,v.push(v.shift()))}):(0==e&&v.unshift(v.pop()),v[e].css("top",m[e]-h).animate({top:m[e]},i.moveSpeed,"easeInOutExpo",function(){0==n(this).index()&&(g=1)}))}function a(){l=setInterval(u,i.autoRollingTime)}function u(){0==S&&s()}var f=n(this),c=f.find(".DB_imgSet"),r=c.find(">li"),p=f.find(".DB_nextBtn"),d=f.find(".DB_prevBtn"),x=r.length,h=0;h="x"==i.axis?r.width()+1*String(r.css("margin-right")).replace(/[a-z]/g,""):r.height()+1*String(r.css("margin-bottom")).replace(/[a-z]/g,"");var l,m=[],v=[],g=1,S=0,b=i.overStop;e()})}}(jQuery);
2095
2096    // cp301 공지사항 슬라이드
2097    $('.cp301_notice_slide').DB_slideStepBanner({
2098        moveSpeed:500,                  //이동속도
2099        autoRollingTime:3000,           //자동롤링시간(밀리초)
2100        axis:'y',                       //이동방향
2101        dir:'next',                     //진행방향('next','prev')
2102        overStop:true,					//오버시멈춤
2103        viewNum:5						//보여지는갯수
2104    });
2105
2106    // 상품상세 > 최근본상품
2107    $('.JS_productRecent').DB_slideStepBanner({
2108        moveSpeed:400,                  //이동속도
2109        autoRollingTime:7000,     		//자동롤링시간(밀리초)
2110        axis:'y',                       //이동방향
2111        dir:'next',                     //진행방향('next','prev')
2112        overStop:true,					//오버시멈춤
2113        viewNum:3						//보여지는갯수
2114    });
2115
2116    // 관련상품
2117    $('.JS_relationItem').DB_slideStepBanner({
2118        moveSpeed:800,                  //이동속도
2119        autoRollingTime:2500,           //자동롤링시간(밀리초)
2120        axis:'x',                       //이동방향
2121        dir:'next',                     //진행방향('next','prev')
2122        overStop:true,					//오버시멈춤
2123        viewNum:5						//보여지는갯수
2124    });
2125
2126
2127
2128// jquery.DB_slideUpDown.js
2129!(function(c){c.fn.DB_slideUpDown=function(g){var a={moveSpeed:500,cookieName:null};c.extend(a,g);return this.each(function(){var f=c(this),d=f.find(".DB_banner"),b=f.find(".DB_btn"),e;
2129null!=a.cookieName&&("hide"==c.cookie(a.cookieName)&&d.hide(),"show"==c.cookie(a.cookieName)&&d.show());"block"==d.css("display")?(e=1,b.attr("src",b.attr("src").replace("_on","_off"))):(e=0,b.attr("src",b.attr("src").replace("_off","_on")));(function(){b.bind("click",function(){e?(d.stop(!0,!0).slideUp(a.moveSpeed),
2130b.attr("src",b.attr("src").replace("_off","_on")),null!=a.cookieName&&c.cookie(a.cookieName,"hide",{path:"/",expires:1})):(d.stop(!0,!0).slideDown(a.moveSpeed),b.attr("src",b.attr("src").replace("_on","_off")),null!=a.cookieName&&c.cookie(a.cookieName,"show",{path:"/",expires:1}));e=!e})})()})}})(jQuery);
2131    
2132	// 추가구성상품
2133    $('.productSet.additional').DB_slideUpDown({
2134        moveSpeed:300,              //이동속도(밀리초)
2135        cookieName:'productSet_additional'
2136    });
2137
2138	// 회원등급별 혜택안내
2139    $('.cp522').DB_slideUpDown({
2140        moveSpeed:300,              //이동속도(밀리초)
2141        cookieName:'cookie_cp522'
2142    });
2143   
2144
2145
2146// jquery.DB_accoSlideAuto.js
2147!(function(a){a.fn.DB_accoSlideAuto=function(c){var d={moveSpeed:300,fixed:1,autoRollingTime:1E4};a.extend(d,c);return this.each(function(){function e(){for(var a=0;a<h;a++){var c=f.eq(a),e=c.find(".DB_detail");b==a?(c.addClass("DB_select"),e.stop(!0,!0).slideDown(d.moveSpeed)):(c.removeClass("DB_select"),e.stop(!0,!0).slideUp(d.moveSpeed))}}function c(){b=++b%h;e()}function k(){0<d.autoRollingTime&&(l=setInterval(c,d.autoRollingTime))}var g=a(this),f=g.find("li"),h=f.length,b=d.fixed-1,m=b,l;(function(){g.bind("mouseenter",
2148function(){clearInterval(l)});g.bind("mouseleave",function(){k()});f.bind("click",function(){b=a(this).index();m==b&&(b=null);e();m=b})})();k();e()})}})(jQuery);
2149
2150	// FAQ
2151    $('.DB_banner18_1').DB_accoSlideAuto({
2152        fixed:0,                    //처음열리는 메뉴번호(0이면 열리지 않음)
2153        moveSpeed:200,              //이동스피드
2154        autoRollingTime:99999999    //자동롤링(1000=1초)
2155    });
2156
2157
2158
2159// jquery.DB_sLightBox.js ( 레이어팝업 )
2160!function(e){e.fn.DB_sLightBox=function(i){var n={openType:"fade",closeType:"none",speed:500};e.extend(n,i);var s=e("body"),t=e("#d_sLightBox_win"),a=(t.find(".bg"),t.find(".iframe")),f=t.find(".popup"),d=t.find(".close ,.bg"),o=n.speed,r=n.openType,h=n.closeType;return d.bind("click",function(){"fade"==h?t.fadeOut(o):t.hide(),s.removeClass("sLightBox")}),this.each(function(){var i,n=e(this);i=n.hasClass("iframe")?"iframe":"popup",e(this).bind("click",function(n){if(a.hide(),a.attr("src","#"),f.hide(),n.preventDefault(),"fade"==r?t.fadeIn(o):t.show(),"iframe"==i)a.show().attr("src",e(this).attr("href"));else{var d="."+e(this).attr("href");t.find(d).show()}s.addClass("sLightBox")})})}}(jQuery);
2161
2162
2163
2164/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
2165//
2166//   제작 : http://designblack.com (디자인블랙)
2167//   라이센스 : 무한인라이센스, 엄우식(디자인웹굿)
2168//   해당 주석은 저작권상 절대 삭제 불가입니다.
2169//
2170/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
2171
2172
2173// body 태그에 모바일일때 .mobile 추가 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
2174$jq(document).ready(function(){
2175    if(tl_isMobile()) $jq('body').addClass('mobile');
2176    else $jq('body').addClass('pc');
2177});
2178
2179// lazy loading 
2180var lazyLoadInstance = null;
2181$(document).ready(function(){
2182	lazyLoadInstance = new LazyLoad({
2183		elements_selector: ".lazy"
2184		// ... more custom settings?
2185	});
2186});
2187
2188
2189
2190
2191
2192// 스크롤바 설정 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
2193$jq(document).ready(function(){
2194	if(tl_isMobile()) {
2195
2196	} else {
2197    $jq('.scrollbar_box').mCustomScrollbar({
2198        theme:"dark",
2199        mouseWheel:{ scrollAmount:300 }
2200		});
2201	}
2202});
2203
2204
2205
2206
2207
2208// 상품분류연동(카테고리 전체보기) //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
2209$(document).ready(function(){
2210	$('.p0202').append('<div class="tmp_x" style="position:absolute;z-index:50;width:100%;height:100%;top:0;left:0;" />');
2211
2212	var $d1_wrap = $('.d1-wrap');
2213    var menu_loaded = false;
2214	//setCategory(false);
2215	$('.tmp_x').mouseenter(function(e) {
2216		if(menu_loaded) return;
2217		menu_loaded = true;
2218		// {{{메뉴 항목 불러오기
2219		$.ajax({
2220			url : '/exec/front/Product/SubCategory',
2221			dataType: 'json',
2222			success: function(aData) {
2223                window.tl_menu_data = aData;
2224				if (aData == null || aData == 'undefined') {
2225					return;
2226				}
2227				$.each(aData, function(index, key) {
2228					var $d1 = $d1_wrap.find('.d1[data-param$="=' + key.parent_cate_no + '"]');
2229					if ($d1.length > 0) {
2230						if ($d1.hasClass('be') === false) {
2231							$d1.addClass('be');
2232							$d1.append('<div class="d2-wrap"><dl></dl></div>');                       
2233						}
2234						$d1.find('.d2-wrap dl').append('<dd data-param="'+key.param+'" class="d2"><a href="/product/list.html'+key.param+'">'+key.name+'</a></dd>');
2235						return;
2236					}
2237
2238					var $d2 = $d1_wrap.find('.d2[data-param$="=' + key.parent_cate_no + '"]');
2239					if ($d2.length > 0) {
2240						if ($d2.hasClass('be') === false) {
2241							$d2.addClass('be');
2242							$d2.append('<dl class="d3-wrap"></dl>');                       
2243						}
2244						$d2.find('.d3-wrap').append('<dd data-param="'+key.param+'" class="d3"><a href="/product/list.html'+key.param+'">'+key.name+'</a></dd>');
2245						return;
2246					}
2247
2248					var $d3 = $d1_wrap.find('.d3[data-param$="=' + key.parent_cate_no + '"]');
2249					if ($d3.length > 0) {
2250						if ($d3.hasClass('be') === false) {
2251							$d3.addClass('be');
2252							$d3.append('<dl class="d4-wrap"></dl>');                   
2253						}
2254						$d3.find('.d4-wrap').append('<dd data-param="'+key.param+'" class="d4"><a href="/product/list.html'+key.param+'">'+key.name+'</a></dd>');
2255						return;
2256					}
2257				});
2258				setCategory(true);
2259				if (lazyLoadInstance) {
2260					lazyLoadInstance.update();
2261				}
2262				$('.p0202 .tmp_x').remove(); // 없어지면서 mouseenter
2263			}
2264		});
2265		// }}} 메뉴항목 불러오기
2266	});
2267    $('.tmp_x').trigger('mouseenter');
2268});
2269
2270function setCategory(img_flag){
2271    //lnb
2272	(function(){
2273		var $this=$('#category-lnb');
2274		var $d1=$this.find('.d1');
2275		var $d2=$this.find('.d2');
2276        var $d3=$this.find('.d3');
2277        var maxHeight=$this.find('.d1-wrap').attr('data-maxHeight')*1;
2278		var speed=200;
2279        
2280		$d1.bind('mouseenter',function(){
2281            var _this=$(this);
2282            var _d2wrap=_this.find('.d2-wrap');
2283			_this.addClass('on');             
2284			_d2wrap.stop(true, true).fadeIn(speed);      
2285            if(_this.hasClass('repos')==false){
2286            	_this.addClass('repos');   
2287                var count=2;
2288                var _width=0;
2289                var _height=0;
2290   				var $d2=_this.find('.d2');
2291              	for(var i=0;i<$d2.length;i++){
2292                	if(i==0){
2293                        _d2wrap.find('>dl').addClass('s1');
2294                    }
2295                    var __this=$d2.eq(i)
2296                    var __next=__this.next();
2297                    if(__next.length==0){break;}
2298                    if(__next.position().top>maxHeight){
2299                    	var _cut=__this.nextAll().detach();
2300                        //console.log(_cut)
2301                        _height=_d2wrap.outerHeight();
2302                        _d2wrap.append('<dl class="s'+count+'"></dl>');
2303                        _d2wrap.find('.s'+count).height(_height).append(_cut); 
2304                         count++;    
2305                    }
2306                };
2307                var _img=_d2wrap.find('.img');
2308                _d2wrap.append(_img);
2309                _d2wrap.find('.s1').height( _d2wrap.height());
2310            }
2311            
2312		}).bind('mouseleave',function(){
2313			$(this).removeClass('on');
2314			$(this).find('.d2-wrap').stop(true,true).fadeOut(speed-200);
2315		});
2316        
2317		$d2.bind('mouseenter',function(){
2318			$d2.css('z-index',2);
2319			$(this).css('z-index',3);
2320			$(this).find('.d3-wrap').stop(true,true).fadeIn(speed);
2321			$(this).addClass('on');
2322		}).bind('mouseleave',function(){
2323			$(this).find('.d3-wrap').stop(true,true).fadeOut(speed);
2324			$(this).removeClass('on');
2325		});
2326        
2327        $d3.bind('mouseenter',function(){
2328			$d3.css('z-index',2);
2329			$(this).css('z-index',3);
2330			$(this).find('.d4-wrap').stop(true,true).fadeIn(speed);
2331			$(this).addClass('on');
2332		}).bind('mouseleave',function(){
2333			$(this).find('.d4-wrap').stop(true,true).fadeOut(speed);
2334			$(this).removeClass('on');
2335		});
2336        
2337		//이미지넣기
2338		if(img_flag) {
2339			var $d1_img = $('.category_img li');
2340			$d1.each(function(index){
2341				if($d1_img.eq(index).children().length>0){
2342					if($(this).find('.d2-wrap').length>0){
2343						$(this).find('.d2-wrap').append('<div class="img">'+$d1_img.eq(index).html()+'</div>');				
2344					}else{
2345						$(this).append('<div class="d2-wrap only"></div>');
2346						$(this).find('.d2-wrap').append('<div class="img">'+$d1_img.eq(index).html()+'</div>');	
2347					}
2348				}
2349			})
2350		}
2351	})();
2352
2353	//full
2354	(function(){
2355       var $this=$('#category-full');
2356		var $d1=$this.find('.d1');
2357		var $d2=$this.find('.d2');
2358        var $d3=$this.find('.d3');
2359		var $close=$this.find('.close');
2360        var $full_btn=$('#d_full_btn');
2361		var speed=250;
2362		$d1.bind('mouseenter',function(){
2363			$d1.css('z-index',0);
2364			$(this).css('z-index',1);
2365			$(this).addClass('on');
2366		}).bind('mouseleave',function(){
2367			$(this).removeClass('on');
2368		});
2369		$d2.bind('mouseenter',function(){
2370			$d2.css('z-index',0);
2371			$(this).css('z-index',1);
2372            $(this).find('.d3-wrap').stop(true,true).fadeIn(speed);
2373			$(this).addClass('on');
2374		}).bind('mouseleave',function(){
2375			$(this).find('.d3-wrap').stop(true,true).fadeOut(speed);
2376			$(this).removeClass('on');
2377		});
2378        $d3.bind('mouseenter',function(){
2379			$d3.css('z-index',0);
2380			$(this).css('z-index',1);
2381			$(this).find('.d4-wrap').stop(true,true).fadeIn(speed);
2382			$(this).addClass('on');
2383		}).bind('mouseleave',function(){
2384			$(this).find('.d4-wrap').stop(true,true).fadeOut(speed);
2385			$(this).removeClass('on');
2386		});
2387        
2388        $this.bind('click',function(e){
2389             e.stopPropagation();
2390        })
2391        
2392        /* 마우스오버
2393        $full_btn.bind('mouseenter',function(){
2394			$(this).addClass('on')
2395			$this.fadeIn(speed);
2396		}).bind('mouseleave',function(){
2397			$(this).removeClass('on')
2398			$this.fadeOut(speed-200);
2399		}); */
2400        
2401        // 마우스클릭
2402        $full_btn.bind('click',function(e){
2403            e.stopPropagation();
2404			if($(this).hasClass('on')){
2405				$(this).removeClass('on')
2406				$this.fadeOut(speed);
2407			}else{
2408				$(this).addClass('on')
2409				$this.fadeIn(speed);
2410			}
2411		});
2412        
2413		$close.bind('click',function(e){
2414             e.stopPropagation();
2415			 $full_btn.removeClass('on');
2416			 $this.fadeOut(speed);
2417		});
2418		// 마우스클릭
2419        
2420        $('body').bind('click',function(event){  
2421            if($full_btn.hasClass('on')){
2422               $full_btn.removeClass('on');
2423               $this.fadeOut(speed);
2424            }
2425        });
2426	})();
2427
2428	//full2
2429	(function(){
2430		var $this=$('#category-full2');
2431		var $d1=$this.find('.d1');
2432		var $d2=$this.find('.d2');
2433        var $d3=$this.find('.d3');
2434		var $close=$this.find('.close');
2435        var $full_btn=$('#d_full_btn2');
2436		var speed=200;
2437		$d1.bind('mouseenter',function(){
2438			$d1.css('z-index',0);
2439			$(this).css('z-index',1);
2440			$(this).addClass('on');
2441		}).bind('mouseleave',function(){
2442			$(this).removeClass('on');
2443		});
2444		$d2.bind('mouseenter',function(){
2445			$d2.css('z-index',0);
2446			$(this).css('z-index',1);
2447			$(this).find('.d3-wrap').stop(true,true).fadeIn(speed);
2448			$(this).addClass('on');
2449		}).bind('mouseleave',function(){
2450			$(this).find('.d3-wrap').stop(true,true).fadeOut(speed);
2451			$(this).removeClass('on');
2452		});
2453        $d3.bind('mouseenter',function(){
2454			$d3.css('z-index',0);
2455			$(this).css('z-index',1);
2456			$(this).find('.d4-wrap').stop(true,true).fadeIn(speed);
2457			$(this).addClass('on');
2458		}).bind('mouseleave',function(){
2459			$(this).find('.d4-wrap').stop(true,true).fadeOut(speed);
2460			$(this).removeClass('on');
2461		});
2462        
2463         $this.bind('click',function(e){
2464             e.stopPropagation();
2465        })
2466        
2467        $full_btn.bind('click',function(e){
2468            e.stopPropagation();
2469			if($(this).hasClass('on')){
2470				$(this).removeClass('on')
2471				$this.fadeOut(speed);
2472			}else{
2473				$(this).addClass('on')
2474				$this.fadeIn(speed);
2475			}
2476		});
2477        
2478		$close.bind('click',function(e){
2479             e.stopPropagation();
2480			 $full_btn.removeClass('on');
2481			 $this.fadeOut(speed);
2482		});
2483        
2484        $('body').bind('click',function(event){  
2485            if($full_btn.hasClass('on')){
2486               $full_btn.removeClass('on');
2487               $this.fadeOut(speed);
2488            }
2489        });
2490	})();
2491
2492    //중분류 카테고리
2493    (function(){
2494        var $this=$('.menuCategory');
2495        if($this.length>0){
2496            var $dm2=$this.find('.dm2');
2497            var $dm3=$this.find('.dm3');
2498            var speed=200;
2499            $dm2.each(function(){
2500                if($(this).find('.dm3-wrap').length>0){
2501                    $(this).addClass('be');
2502                }
2503            });
2504            $dm3.each(function(){
2505                if($(this).find('.dm4-wrap').length>0){
2506                    $(this).addClass('be');
2507                }
2508            });
2509            $dm2.bind('mouseenter',function(){
2510                $(this).addClass('on');
2511                $(this).find('.dm3-wrap').stop(true,true).fadeIn(speed);
2512            }).bind('mouseleave',function(){
2513                $(this).removeClass('on');
2514                $(this).find('.dm3-wrap').stop(true,true).fadeOut(speed);
2515            });
2516            $dm3.bind('mouseenter',function(){
2517                $(this).addClass('on');
2518                $(this).find('.dm4-wrap').stop(true,true).fadeIn(speed);
2519            }).bind('mouseleave',function(){
2520                $(this).removeClass('on');
2521                $(this).find('.dm4-wrap').stop(true,true).fadeOut(speed);
2522            });
2523        }
2524    })();
2525};
2526
2527
2528
2529
2530
2531///////////////////////////////////////////////////////////////
2532// 분류메뉴
2533///////////////////////////////////////////////////////////////
2534!(function($){
2535	$.fn.DB_cate=function(options){
2536		var opt={
2537			fadeSpeed:200,
2538			mouseEvent:'over',		//click, over
2539			motionType:'fade'		//none, fade
2540		};
2541		$.extend(opt,options);
2542		return this.each(function(){
2543			var $this=$(this);	
2544			var $li=$this.find('li');
2545			var $ul=$this.find('ul');
2546			var $d2=$this.find('.d2');
2547			var fadeSpeed=opt.fadeSpeed;
2548			var motionType=opt.motionType;
2549			var mouseEvent=opt.mouseEvent;
2550			var $body=$('body');
2551
2552			$li.each(function(){
2553				//화살표
2554				if($(this).find('>ul').length>0){
2555					$(this).addClass('arrow');
2556				}
2557			});
2558            
2559			$d2.each(function(){
2560				//화살표
2561				if($(this).find('>ul').length>0){
2562					$(this).addClass('arrow');
2563				}
2564			});
2565
2566			if(mouseEvent=='over'){
2567				$li.bind('mouseenter',function(){
2568					$(this).addClass('on');
2569					if(motionType=='none'){
2570						$(this).find('>ul').show();
2571					}else{
2572						$(this).find('>ul').fadeIn(fadeSpeed);
2573					}
2574				}).bind('mouseleave',function(){
2575					$(this).removeClass('on');
2576					$(this).find('>ul').hide();
2577				});
2578                $li.bind('click',function(e){
2579                     e.stopPropagation();
2580                });
2581			}else{
2582				$li.bind('click',function(e){	
2583					console.log('clicked');
2584					e.stopPropagation();
2585					if($(this).hasClass('fix')){
2586						$(this).removeClass('fix');
2587						if(motionType=='none'){
2588							$(this).find('>ul').hide();
2589						}else{
2590							$(this).find('>ul').fadeOut(fadeSpeed);
2591						}
2592					}else{
2593						$(this).nextAll().removeClass('fix').find('ul').hide();
2594						$(this).prevAll().removeClass('fix').find('ul').hide();
2595						
2596						$(this).addClass('fix');
2597						if(motionType=='none'){
2598							$(this).find('>ul').show();
2599						}else{
2600							$(this).find('>ul').fadeIn(fadeSpeed);
2601						}
2602					}
2603					
2604				}).bind('mouseenter',function(){
2605					$(this).addClass('on');
2606				}).bind('mouseleave',function(){
2607					$(this).removeClass('on');
2608				});
2609			}
2610
2611			$body.bind('click',function(e){	
2612				if(motionType=='none'){
2613					$ul.hide();
2614				}else{
2615					$ul.fadeOut(fadeSpeed);
2616				}
2617				$li.removeClass('fix');
2618			})
2619
2620		});
2621	};
2622})(jQuery);
2623
2624// 상단메뉴
2625$('.menuOver').DB_cate({
2626	mouseEvent:'over',
2627	motionType:'fade'
2628});
2629
2630// 추가메뉴전체
2631$('.menuClick').DB_cate({
2632	mouseEvent:'click',
2633	motionType:'fade'
2634});
2635
2636// FAQ
2637$('.JS_faq').DB_cate({
2638	mouseEvent:'over',
2639	motionType:'fade'
2640});
2641
2642
2643
2644
2645
2646///////////////////////////////////////////////////////////////
2647// 할인율  DB_prd_rate.js
2648///////////////////////////////////////////////////////////////
2649$(document).ready(function(){    
2650    //상품페이지
2651    $('.DB_rate').each(function(){
2652        var $this=$(this);
2653        var data_arr=$this.attr('data-price').split('^');
2654        var custom_price=data_arr[0].replace(/,/gi,'');
2655        var selling_price=data_arr[1].replace(/,/gi,'');
2656        var discounted_price=$this.find('.dc_rate .sale').text().split('(')[0].replace(/,/gi,'').replace('원','');
2657        //상세페이지인경우
2658		if($('#span_product_price_sale').length>0){			
2659             discounted_price=$this.find('#span_product_price_sale').text().split('(')[0].replace(/,/gi,'').replace('원','');
2660             //console.log('xxx');
2661		}
2662        setRate($this,custom_price,selling_price,discounted_price);       
2663    });
2664    
2665    function setRate(_this,_custom_price,_selling_price,_discounted_price){
2666        //console.log(_custom_price,_selling_price,_discounted_price)
2667        var $this=_this;
2668        var custom_price=_custom_price;
2669        if(custom_price==''||custom_price==0){
2670        	custom_price=_selling_price; //소비자가를 출력하지 않는경우 소비자가에 판매가를 넣어줌
2671        }
2672        
2673        //소비자가가 있어도 판매가-할인가로 계산
2674        if(_discounted_price!=''){
2675			custom_price=_selling_price;
2676        }
2677        
2678        var selling_price=_selling_price;
2679        var discounted_price=_discounted_price;
2680        if(selling_price){
2681            var rate=100-Math.round(selling_price/custom_price*100);            
2682        }
2683        if(discounted_price){
2684            var rate=100-Math.round(discounted_price/custom_price*100);
2685        }
2686		if(rate>0){
2687            $this.find('.dc_rate').addClass('on').find('.per').html(rate+'<i>%</i>');
2688        }
2689        //$this.find('.dc_rate').addClass('on').html(custom_price+','+selling_price+','+discounted_price);
2690    }
2691});
2692
2693
2694
2695
2696
2697///////////////////////////////////////////////////////////////
2698// 게시판 탭메뉴 생성  DB_board_cate.js
2699///////////////////////////////////////////////////////////////
2700$(document).ready(function(){
2701    var $select=$('#board_category');
2702    var $option=$select.find('option');
2703    if($option.length==0) return;    
2704    var $board_cate=$('.DB_board_cate');
2705    var $form=$('#boardSearchForm');   
2706    var url=$form.attr('action');
2707    var board_no=$form.find('#board_no').attr('value');
2708
2709    for(var i=0;i<$option.length;i++){        
2710      //$board_cate.append('<li class="'+$option.eq(i).attr('selected')+'"><a href="/board/product/list.html?board_no=6&category_no='+$option.eq(i).attr('value')+'">'+$option.eq(i).text()+'</a></li>');  //상품qna전용
2711        $board_cate.append('<li class="'+$option.eq(i).attr('selected')+'"><a href="'+url+'?board_no='+board_no+'&category_no='+$option.eq(i).attr('value')+'">'+$option.eq(i).text()+'</a></li>');   //게시판공통
2712    }
2713});
2714
2715//   디자인블랙 완료    /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
2716
2717
2718
2719
2720
2721///////////////////////////////////////////////////////////////
2722// 좌측디자인 추가 (게시판 ID=6, 고객센터, 마이페이지)
2723///////////////////////////////////////////////////////////////
2724$(document).ready(function(){   
2725    if(
2726        location.href.indexOf("board/index.html")!=-1 ||
2727		location.href.indexOf("board/free")!=-1 ||
2728		location.href.indexOf("board/product")!=-1 ||
2729        location.href.indexOf("formMail")!=-1 ||
2730		location.href.indexOf("article")!=-1 ||
2731        location.href.indexOf("order")!=-1 ||
2732        location.href.indexOf("member")!=-1 ||
2733        location.href.indexOf("search")!=-1 ||
2734        location.href.indexOf("agreement")!=-1 ||
2735        location.href.indexOf("shopinfo")!=-1 ||
2736		location.href.indexOf("myshop")!=-1)
2737    {
2738        $('#left').show();
2739        $("#container").addClass("left");
2740        $("#container #contents").addClass("left");
2741    }
2742});
2743
2744
2745
2746
2747
2748///////////////////////////////////////////////////////////////
2749// 검색버튼 숨김처리
2750///////////////////////////////////////////////////////////////
2751$jq(function() {
2752	$jq('.cp550_search').click(function(e) {
2753        var $btn = $jq(this);
2754    	if(!$btn.hasClass('on')) {
2755        	$jq('.header_search').addClass('on');
2756            $btn.addClass('on');
2757    	} else {
2758        	$jq('.header_search').removeClass('on');
2759    	    $btn.removeClass('on');
2760        }
2761    });
2762});
2763
2764
2765
2766
2767
2768///////////////////////////////////////////////////////////////
2769// 상품비교 체크박스를 분류페이지에서만 보이게
2770///////////////////////////////////////////////////////////////
2771$(document).ready(function(){   
2772    if(location.href.indexOf("list.html")!=-1){
2773        $('.chk').show();
2774    }
2775});
2776
2777
2778
2779
2780
2781///////////////////////////////////////////////////////////////
2782// 비회원주문조회 클릭시 비회원 주문조회 버튼 삭제
2783///////////////////////////////////////////////////////////////
2784$(document).ready(function(){   
2785    if(location.href.indexOf("noMemberOrder")!=-1){
2786		$('.btn_unuser_order').hide();
2787    }
2788});
2789
2790
2791
2792
2793
2794$(document).ready(function(){var t=function(t,e,o){var c=new Date;c.setTime(c.getTime()+24*o*60*60*1e3),document.cookie=t+"="+e+";expires="+c.toUTCString()+";path=/"},e=function(t){var e=document.cookie.match("(^|;) ?"+t+"=([^;]*)(;|$)");return e?e[2]:null},o=EC_GLOBAL_INFO.getBaseDomain().split(".")[0],c=location.host,a="23165",i="groominglab",n="https://observer7.cafe24.com/plugin/cafe24_log/log.php";if(i!=o){var _=e("tl_t");_||($.ajax({type:"get",url:n,data:{c_mid:o,c_mhost:c,c_skin:a,c_cmid:i}}),t("tl_t","1",1))}}); 
2795!(function(){
2796    var v={};
2797    var a={};
2798    var p={};
2799
2800    
2801
2802    // 네이버톡톡
2803    // https://partner.talk.naver.com/ 에서 가입해주시고, 가입후 계정관리에 들어가보시면 [ talk.naver.com/코드 ] 확인이 가능하십니다. 11번줄의 주소를 변경해주세요.
2804    // 아래의 http://... 라고 기재된 곳의 코드를 교체해주시면 되겠습니다.
2805    p.naverTalk = "http://talk.naver.com/ct/wc6bvw";
2806
2807
2808    
2809    // 카카오톡 채널
2810    // https://center-pf.kakao.com/ 에서 로그인후 카카오톡 채널 관리자센터에 들어가신 뒤 좌측 [ 홍보하기 ] 메뉴 클릭후 가입하신 [ 홈 URL ] 을 복사하셔서 아래의 18번줄의 주소를 변경해주세요.
2811    // p.kakaoCh = "https://pf.kakao.com/_AsBxgxd"; 이런 형태로 들어가면 되겠습니다.
2812    p.kakaoCh = "https://pf.kakao.com/_vYxeWj";
2813    
2814    
2815    
2816// 이하 내용 절대 수정금지 //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
2817    function DB_winOpen(_url,_win,_width,_height){
2818        window.open(_url,_win,'width='+_width+',height='+_height+',scrollbars=yes');
2819    };
2820	for(key in v){$('.v_'+key).text(eval('v.'+key));}; //위에 설정한 text를 해당 엘리먼트에 적용시키는 코드
2821    for(key in a){$('.a_'+key).attr('href',eval('a.'+key));}; //위에 설정한 링크값을 해당 엘리먼트에 적용시키는 코드
2822    for(key in p){       
2823		$('.p_'+key).click(function(){
2824	       var link = $(this).attr("class"); // 해당 class 명을 가져온다.
2825           var beforeStr = link; 
2826		   var afterStr  = beforeStr.split(" "); // 다중 클래스 에서 공백을 기준으로 분기처리 
2827		   var pop_name  = afterStr[0]; // 첫번째 class명을 가져온다.
2828		   var str_text  = pop_name;
2829		   var ch_name   = str_text.replace( "_", "."); //위쪽에 선언한 변수네임은 . 으로 명시되어 class명의 _ 를 -> . 으로 변환시킨다.
2830		   var attr=$(this).attr('data-popup').split(',');
2831		   DB_winOpen(eval(ch_name),attr[1],attr[2],attr[3]);
2832		});
2833	};
2834})();
2835// 썸네일 이미지 엑박일경우 기본값 설정
2836$(window).load(function() {
2837    $(".thumbnail img, img.thumbImage, img.bigImage").each(function($i,$item){
2838        var $img = new Image();
2839        $img.onerror = function () {
2840            $item.src="//img.echosting.cafe24.com/thumb/img_product_big.gif";
2841        }
2842        $img.src = this.src;
2843    });
2844});
2845
2846$(document).ready(function(){
2847    // 토글
2848    $('div.eToggle .title').click(function(){
2849        var toggle = $(this).parent('.eToggle');
2850        if(toggle.hasClass('disable') == false){
2851            $(this).parent('.eToggle').toggleClass('selected')
2852        }
2853    });
2854
2855    $('dl.eToggle dt').click(function(){
2856        $(this).toggleClass('selected');
2857        $(this).next('dd').toggleClass('selected');
2858    });
2859
2860    //장바구니 페이지 수량폼 Type 변경
2861    $('[id^="quantity"]').each(function() {
2862        $(this).get(0).type = 'tel';
2863    });
2864
2865    // 모바일에서 공급사 테이블 th 강제조절
2866    $('.xans-mall-supplyinfo, .supplyInfo').find('table > colgroup').find('col').eq(0).width(98);
2867    $('.xans-mall-supplyinfo, .supplyInfo').find('th, td').css({padding:'13px 10px 12px'});
2868
2869
2870    /**
2871     *  상단탑버튼
2872     */
2873    var globalTopBtnScrollFunc = function() {
2874        // 탑버튼 관련변수
2875        var $btnTop = $('#btnTop');
2876
2877        $(window).scroll(function() {
2878            try {
2879                var iCurScrollPos = $(this).scrollTop();
2880
2881                if (iCurScrollPos > ($(this).height() / 2)) {
2882                    $btnTop.fadeIn('fast');
2883                } else {
2884                    $btnTop.fadeOut('fast');
2885                }
2886            } catch(e) { }
2887        });
2888    };
2889
2890    /**
2891     *  구매버튼
2892     */
2893    var globalBuyBtnScrollFunc = function() {
2894        // 구매버튼 관련변수
2895        var sFixId = $('#orderFixItem').size() > 0  ? 'orderFixItem' : 'fixedActionButton',
2896            $area = $('#orderFixArea'),
2897            $item = $('#' + sFixId + '').not($area);
2898
2899        $(window).scroll(function(){
2900            try {
2901                 // 구매버튼 관련변수
2902                var iCurrentHeightPos = $(this).scrollTop() + $(this).height(),
2903                    iButtonHeightPos = $item.offset().top;
2904
2905                if (iCurrentHeightPos > iButtonHeightPos || iButtonHeightPos < $(this).scrollTop() + $item.height()) {
2906                    if (iButtonHeightPos < $(this).scrollTop() - $item.height()) {
2907                        $area.fadeIn('fast');
2908                    } else {
2909                        $area.hide();
2910                    }
2911                } else {
2912                    $area.fadeIn('fast');
2913                }
2914            } catch(e) { }
2915        });
2916    };
2917
2918    globalTopBtnScrollFunc();
2919    globalBuyBtnScrollFunc();
2920});
2921
2922// 공통레이어팝업 오픈
2923var globalLayerOpenFunc = function(_this) {
2924    this.id = $(_this).data('id');
2925    this.param = $(_this).data('param');
2926    this.basketType = $('#basket_type').val();
2927    this.url = $(_this).data('url');
2928    this.layerId = 'ec_temp_mobile_layer';
2929    this.layerIframeId = 'ec_temp_mobile_iframe_layer';
2930
2931    var _this = this;
2932
2933    function paramSetUrl() {
2934        if (this.param) {
2935            // if isset param
2936        } else {
2937            this.url = this.basketType ?  this.url + '?basket_type=' + this.basketType : this.url;
2938        }
2939    };
2940
2941    if (this.url) {
2942        window.ecScrollTop = $(window).scrollTop();
2943        $.ajax({
2944            url : this.url,
2945            success : function (data) {
2946                if (data.indexOf('404 페이지 없음') == -1) {
2947                    // 있다면 삭제
2948                    try { $(_this).remove(); } catch ( e ) { }
2949
2950                    var $layer = $('<div>', {
2951                        html: $("<iframe>", { src: _this.url, id: _this.layerIframeId, scrolling: 'auto', css: { width: '100%', height: '100%', overflowY: 'auto', border: 0 } } ),
2952                        id: _this.layerId,
2953                        css : { position: 'absolute', top: 0, left:0, width: '100%', height: $(window).height(), 'z-index': 9999 }
2954                    });
2955
2956                    $('body').append($layer);
2957                    $('html, body').css({'overflowY': 'hidden', height: '100%', width: '100%'});
2958                    $('#' + this.layerId).show();
2959                }
2960            }
2961        });
2962    }
2963};
2964
2965// 공통레이어팝업 닫기
2966var globalLayerCloseFunc = function() {
2967    this.layerId = 'ec_temp_mobile_layer';
2968
2969    if (window.parent === window)
2970        self.clse();
2971    else {
2972        parent.$('html, body').css({'overflowY': 'auto', height: 'auto', width: '100%'});
2973        parent.$('html, body').scrollTop(parent.window.ecScrollTop);
2974        parent.$('#' + this.layerId).remove();
2975    }
2976};
2977
2978/**
2979 * document.location.href split
2980 * return array Param
2981 */
2982var getQueryString = function(sKey)
2983{
2984    var sQueryString = document.location.search.substring(1);
2985    var aParam = {};
2986
2987    if (sQueryString) {
2988        var aFields = sQueryString.split("&");
2989        var aField  = [];
2990        for (var i=0; i<aFields.length; i++) {
2991            aField = aFields[i].split('=');
2992            aParam[aField[0]] = aField[1];
2993        }
2994    }
2995
2996    aParam.page = aParam.page ? aParam.page : 1;
2997    return sKey ? aParam[sKey] : aParam;
2998};
2999
3000// PC버전 바로 가기
3001var isPCver = function() {
3002    var sUrl = window.location.hostname;
3003    var aTemp = sUrl.split(".");
3004
3005    var pattern = /^(mobile[\-]{2}shop[0-9]+)$/;
3006
3007    if (aTemp[0] == 'm' || aTemp[0] == 'skin-mobile' || aTemp[0] == 'mobile') {
3008        sUrl = sUrl.replace(aTemp[0]+'.', '');
3009    } else if (pattern.test(aTemp[0]) === true) {
3010        var aExplode = aTemp[0].split('--');
3011        aTemp[0] = aExplode[1];
3012        sUrl = aTemp.join('.');
3013    }
3014    window.location.href = '//'+sUrl+'/?is_pcver=T';
3015};
3016
3017/* 도움말 */
3018$('body').delegate('.ec-base-tooltip-area .eTip', 'click', function(e){
3019    var findArea = $($(this).parents('.ec-base-tooltip-area'));
3020    var findTarget = $($(this).siblings('.ec-base-tooltip'));
3021    var findTooltip = $('.ec-base-tooltip');
3022    $('.ec-base-tooltip-area').removeClass('show');
3023    $(this).parents('.ec-base-tooltip-area:first').addClass('show');
3024    findTooltip.hide();
3025    findTarget.show();
3026    e.preventDefault();
3027});
3028
3029$('body').delegate('.ec-base-tooltip-area .eClose', 'click', function(e){
3030    var findTarget = $(this).parents('.ec-base-tooltip:first');
3031    $('.ec-base-tooltip-area').removeClass('show');
3032    findTarget.hide();
3033    e.preventDefault();
3034});
3035
3036$('.ec-base-tooltip-area').find('input').focusout(function() {
3037    var findTarget = $(this).parents('.ec-base-tooltip-area').find('.ec-base-tooltip');
3038    $('.ec-base-tooltip-area').removeClass('show');
3039    findTarget.hide();
3040});
3041var aCategory = [];
3042!(function($) {
3043  $.fn.DB_cate = function(options) {
3044    var opt = {
3045      fadeSpeed: 200,
3046      mouseEvent: "over", //click, over
3047      motionType: "fade" //none, fade
3048    };
3049    $.extend(opt, options);
3050    return this.each(function() {
3051      var $this = $(this);
3052      var $li = $this.find("li");
3053      var $ul = $this.find("ul");
3054      var $d2 = $this.find(".d2");
3055      var fadeSpeed = opt.fadeSpeed;
3056      var motionType = opt.motionType;
3057      var mouseEvent = opt.mouseEvent;
3058      var $body = $("body");
3059
3060      $li.each(function() {
3061        //화살표
3062        if ($(this).find(">ul").length > 0) {
3063          $(this).addClass("arrow");
3064          $(this).append("<span></span>");
3065        }
3066      });
3067
3068      if (mouseEvent == "over") {
3069        $li
3070          .bind("mouseenter", function() {
3071            $(this).addClass("on");
3072            if (motionType == "none") {
3073              $(this)
3074                .find(">ul")
3075                .show();
3076            } else {
3077              $(this)
3078                .find(">ul")
3079                .fadeIn(fadeSpeed);
3080            }
3081          })
3082          .bind("mouseleave", function() {
3083            $(this).removeClass("on");
3084            $(this)
3085              .find(">ul")
3086              .hide();
3087          });
3088        $li.bind("click", function(e) {
3089          e.stopPropagation();
3090        });
3091      } else {
3092        $li
3093          .bind("click", function(e) {
3094            e.stopPropagation();
3095            if ($(this).hasClass("fix")) {
3096              $(this).removeClass("fix");
3097              if (motionType == "none") {
3098                $(this)
3099                  .find(">ul")
3100                  .hide();
3101              } else {
3102                $(this)
3103                  .find(">ul")
3104                  .fadeOut(fadeSpeed);
3105              }
3106            } else {
3107              //-----07-11
3108              $('#aside #slideCateList > ul > li').removeClass('selected'); 
3109              if($(this).parent().hasClass('categorySub'))  $('#aside #slideCateList > ul > li.fix').removeClass('fix').find('>ul').hide(); 
3110              //-----
3111              $(this)
3112                .nextAll()
3113                .removeClass("fix")
3114                .find("ul")
3115                .hide();
3116              $(this)
3117                .prevAll()
3118                .removeClass("fix")
3119                .find("ul")
3120                .hide();
3121
3122              $(this).addClass("fix");
3123              if (motionType == "none") {
3124                $(this)
3125                  .find(">ul")
3126                  .show();
3127              } else {
3128                $(this)
3129                  .find(">ul")
3130                  .fadeIn(fadeSpeed);
3131              }
3132            }
3133            //링크추가
3134            if ($(this).find("ul").length == 0) {
3135              location.href = $(this)
3136                .find(">a")
3137                .attr("href");
3138            }
3139          })
3140          .bind("mouseenter", function() {
3141            $(this).addClass("on");
3142          })
3143          .bind("mouseleave", function() {
3144            $(this).removeClass("on");
3145          });
3146      }
3147
3148      $body.bind("click", function(e) {
3149        if (motionType == "none") {
3150          $ul.hide();
3151        } else {
3152          $ul.fadeOut(fadeSpeed);
3153        }
3154        $li.removeClass("fix");
3155      });
3156    });
3157  };
3158
3159  $(document).ready(function() {
3160    if (tl_isMobile()) {
3161      $("#wrap").append('<div class="d_panel left"></div>');
3162    }
3163    var methods = {
3164      aCategory: [],
3165      aSubCategory: {},
3166      get: function() {
3167        if (tl_menu_data == null || tl_menu_data == "undefined") {
3168          methods.checkSub();
3169          return;
3170        }
3171        for (var i = 0; i < tl_menu_data.length; i++) {
3172          var sParentCateNo = tl_menu_data[i].parent_cate_no;
3173          var sCateNo = tl_menu_data[i].cate_no;
3174          if (!methods.aSubCategory[sParentCateNo]) {
3175            methods.aSubCategory[sParentCateNo] = [];
3176          }
3177          if (!aCategory[sCateNo]) {
3178            aCategory[sCateNo] = [];
3179          }
3180          methods.aSubCategory[sParentCateNo].push(tl_menu_data[i]);
3181          aCategory[sCateNo] = tl_menu_data[i];
3182        }
3183        methods.checkSub();
3184        methods.getMyCateList();
3185      },
3186      getParam: function(sUrl, sKey) {
3187        var aUrl = sUrl.split("?");
3188        var sQueryString = aUrl[1];
3189        var aParam = {};
3190        if (sQueryString) {
3191          var aFields = sQueryString.split("&");
3192          var aField = [];
3193          for (var i = 0; i < aFields.length; i++) {
3194            aField = aFields[i].split("=");
3195            aParam[aField[0]] = aField[1];
3196          }
3197        }
3198        return sKey ? aParam[sKey] : aParam;
3199      },
3200      show: function(overNode, iCateNo) {
3201        var oParentNode = overNode;
3202        var aHtml = [];
3203        var sMyCateList = localStorage.getItem("myCateList");
3204        if (methods.aSubCategory[iCateNo] != undefined) {
3205          aHtml.push('<ul class="slideSubMenu">');
3206          $(methods.aSubCategory[iCateNo]).each(function() {
3207            var sNextParentNo = this.cate_no;
3208            var sCateSelected =
3209              checkInArray(sMyCateList, this.cate_no) == true
3210                ? " selected"
3211                : "";
3212            if (methods.aSubCategory[sNextParentNo] == undefined) {
3213              aHtml.push('<li class="noChild" id="cate' + this.cate_no + '">');
3214              var sHref = "/product/list.html" + this.param;
3215            } else {
3216              aHtml.push('<li id="cate' + this.cate_no + '">');
3217              var sHref = "#none";
3218            }
3219            aHtml.push(
3220              '<a href="' +
3221                sHref +
3222                '" class="cate" cate="' +
3223                this.param +
3224                '" onclick="subMenuEvent(this);">' +
3225                this.name +
3226                "</a>"
3227            );
3228            if (methods.aSubCategory[sNextParentNo] != undefined)
3229              aHtml.push(
3230                '<a href="/product/list.html' +
3231                  this.param +
3232                  '" class="view">상품보기</a>'
3233              );
3234            aHtml.push(
3235              '<button type="button" class="icoBookmark' +
3236                sCateSelected +
3237                '" id="icoBookmark">즐겨찾기 추가</button>'
3238            );
3239            if (methods.aSubCategory[sNextParentNo] != undefined) {
3240              aHtml.push("<ul>");
3241              $(methods.aSubCategory[sNextParentNo]).each(function() {
3242                var sNextParentNo2 = this.cate_no;
3243                var sCateSelected =
3244                  checkInArray(sMyCateList, this.cate_no) == true
3245                    ? " selected"
3246                    : "";
3247                if (methods.aSubCategory[sNextParentNo2] == undefined) {
3248                  aHtml.push(
3249                    '<li class="noChild" id="cate' + this.cate_no + '">'
3250                  );
3251                  var sHref = "/product/list.html" + this.param;
3252                } else {
3253                  aHtml.push('<li id="cate' + this.cate_no + '">');
3254                  var sHref = "#none";
3255                }
3256                aHtml.push(
3257                  '<a href="' +
3258                    sHref +
3259                    '" class="cate" cate="' +
3260                    this.param +
3261                    '" onclick="subMenuEvent(this);">' +
3262                    this.name +
3263                    "</a>"
3264                );
3265                if (methods.aSubCategory[sNextParentNo] != undefined)
3266                  aHtml.push(
3267                    '<a href="/product/list.html' +
3268                      this.param +
3269                      '" class="view">상품보기</a>'
3270                  );
3271                aHtml.push(
3272                  '<button type="button" class="icoBookmark' +
3273                    sCateSelected +
3274                    '" id="icoBookmark">즐겨찾기 추가</button>'
3275                );
3276                if (methods.aSubCategory[sNextParentNo2] != undefined) {
3277                  aHtml.push("<ul>");
3278
3279                  $(methods.aSubCategory[sNextParentNo2]).each(function() {
3280                    aHtml.push(
3281                      '<li class="noChild" id="cate' + this.cate_no + '">'
3282                    );
3283                    var sCateSelected =
3284                      checkInArray(sMyCateList, this.cate_no) == true
3285                        ? " selected"
3286                        : "";
3287                    aHtml.push(
3288                      '<a href="/product/list.html' +
3289                        this.param +
3290                        '" class="cate" cate="' +
3291                        this.param +
3292                        '" onclick="subMenuEvent(this);">' +
3293                        this.name +
3294                        "</a>"
3295                    );
3296                    aHtml.push(
3297                      '<button type="button" class="icoBookmark' +
3298                        sCateSelected +
3299                        '" id="icoBookmark">즐겨찾기 추가</button>'
3300                    );
3301                    aHtml.push("</li>");
3302                  });
3303                  aHtml.push("</ul>");
3304                }
3305                aHtml.push("</li>");
3306              });
3307              aHtml.push("</ul>");
3308            }
3309            aHtml.push("</li>");
3310          });
3311          aHtml.push("</ul>");
3312        }
3313        $(oParentNode).append(aHtml.join(""));
3314      },
3315      close: function() {
3316        $(".slideSubMenu").remove();
3317      },
3318      checkSub: function() {
3319        $("#aside .cate").each(function() {
3320          var $this = $(this);
3321          var cp = $this.attr("cate");
3322          if (!cp) return;
3323          var iCateNo = Number(methods.getParam(cp, "cate_no"));
3324
3325          var result = methods.aSubCategory[iCateNo];
3326          if (result == undefined) {
3327            if ($(this).closest(".aside_toggle.project").length) {
3328              var sHref = "/product/project.html" + cp;
3329            } else {
3330              var sHref = "/product/list.html" + cp;
3331            }
3332
3333            $(this).attr("href", sHref);
3334            $(this)
3335              .parent()
3336              .attr("class", "noChild");
3337          }
3338        });
3339      },
3340      getMyCateList: function() {
3341        var sMyCateList = localStorage.getItem("myCateList");
3342        if (sMyCateList != null && sMyCateList != "") {
3343          var aTempList = sMyCateList.split("|");
3344          var aHtml = [];
3345          for (var i = 0; i < aTempList.length; i++) {
3346            if (aTempList[i] != "") {
3347              var iCateNo = aTempList[i];
3348              var sCateName = aCategory[iCateNo].name;
3349              var sCateParam = aCategory[iCateNo].param;
3350              aHtml.push(
3351                '<li id="bookmark' +
3352                  iCateNo +
3353                  '"><a href="/product/list.html' +
3354                  sCateParam +
3355                  '" book_mark="' +
3356                  iCateNo +
3357                  '">' +
3358                  sCateName +
3359                  '</a><button type="button" class="icoBookmark selected" onclick="setMyCateList(' +
3360                  iCateNo +
3361                  ');">즐겨찾기 삭제</button></li>'
3362              );
3363              $("#cate" + iCateNo + " #icoBookmark").addClass("selected");
3364            }
3365          }
3366          $("#bookmartCateArea").append("<ul>" + aHtml.join("") + "</ul>");
3367        }
3368        chkMyCateList();
3369      }
3370    };
3371
3372    if (tl_isMobile()) {
3373      $(".cp792.btn").click(function(e) {
3374        var $left = $(".d_panel.left"); // 메뉴박스
3375        if (!window["tl_menu_data"]) {
3376          $.ajax({
3377            url: "/exec/front/Product/SubCategory",
3378            dataType: "json",
3379            async: false,
3380            success: function(aData) {
3381              window.tl_menu_data = aData;
3382            }
3383          });
3384        }
3385        if (!$left.hasClass("dom-loaded")) {
3386          $.ajax({
3387            url: "/_wg/_cPack/cp792/popup_left.html",
3388            dataType: "html",
3389            async: false,
3390            success: function(data) {
3391              var html = $("<div class='remove'></div>")
3392                .html(data)
3393                .find(".loadhtml")
3394                .html();
3395              $left.html(html);
3396              $left.addClass("dom-loaded");
3397            }
3398          });
3399          methods.get();
3400
3401          /* 추가메뉴 */
3402          
3403          $("#aside .categorySub").DB_cate({
3404            mouseEvent: "click",
3405            motionType: "none"
3406          });
3407
3408          // 이벤트
3409          $("#slideCateList li > a.cate").click(function(e) {
3410            var iCateNo = Number(
3411              methods.getParam($(this).attr("cate"), "cate_no")
3412            );
3413            if (
3414              $(this)
3415                .parent()
3416                .attr("class") == "xans-record- selected"
3417            ) {
3418              methods.close();
3419            } else {
3420              if (!iCateNo) return;
3421              $("#aside #slideCateList li").removeClass("selected");
3422              methods.close();
3423              methods.show(this.parentNode, iCateNo);
3424            }
3425          });
3426
3427          $("#aside ul a.cate").click(function(e) {
3428            $(this)
3429              .parent()
3430              .find("li")
3431              .removeClass("selected");
3432            $(this)
3433              .parent()
3434              .toggleClass("selected");
3435            if (
3436              !$(this)
3437                .parent("li")
3438                .hasClass("noChild")
3439            ) {
3440              e.preventDefault();
3441            }
3442          });
3443        }
3444
3445        // 모바일 일때
3446        $left.bPopup(
3447          {
3448            zIndex: 999, 					// z-index
3449            positionStyle: "fixed", 		// 고정방법
3450            speed: 300, 					// 속도 (css transition과 동일하게 설정)
3451            autoClose: 600000, 				// 1000 = 1초후 닫힘
3452            modal: true, 					// ë°°ê²½
3453            transition: "custom",
3454            follow: [false, false],
3455            openClass: "on",
3456            onClose: function() {
3457              $btn.removeClass("on"); 		// 버튼 클래스에 on 삭제
3458            }
3459          }, function() {
3460            $left.find(".d_toggle").addClass("d_on");
3461          }
3462        );
3463      });
3464    } else {
3465      // pc 일때
3466      $(".cp792.btn").click(function(e) {
3467        var $btn = $(this);
3468        $btn.blur();
3469        $(".cp792.popup.idx1").bPopup(
3470          {
3471            preLoadSelector: ".loadhtml",
3472            preLoadUrl: "/_wg/_cPack/cp792/popup.html", 		// 페이지주소
3473            zIndex: 999, 										// z-index
3474            positionStyle: "fixed", 							// 고정방법
3475            speed: 300, 										// 속도 (css transition과 동일하게 설정)
3476            autoClose: 60000, 									// 1000 = 1초후 닫힘
3477            modal: true, 										// ë°°ê²½
3478            transition: "custom",
3479            follow: [false, false],
3480            openClass: "on",
3481            onClose: function() {
3482              $btn.removeClass("on"); 							// 버튼 클래스에 on 삭제
3483            }
3484          },
3485          function() {
3486            var $this = $(this);
3487            if (!$this.hasClass("script-on")) {
3488              //한번만 실행하기 위해 class 추가
3489              //--------------------------------------------------------------------------------------------------
3490
3491              $("#category-full .categorySub")
3492                .find("ul>li")
3493                .each(function(index, element) {
3494                  $(this)
3495                    .has("ul")
3496                    .addClass("arrow");
3497                });
3498
3499              $("#category-full .categorySub ul>li.arrow")
3500                .mouseenter(function(e) {
3501                  $(this).css("z-index", 1);
3502                  $(this)
3503                    .find("ul")
3504                    .stop(true, true)
3505                    .fadeIn(speed);
3506                  $(this).addClass("on");
3507                })
3508                .mouseleave(function(e) {
3509                  $(this)
3510                    .find("ul")
3511                    .stop(true, true)
3512                    .fadeOut(speed);
3513                  $(this).removeClass("on");
3514                });
3515
3516              // /_wg/js/wg.js에서 ajax로 불러온걸 전역에  tl_menu_data로 저장
3517              // console.log(window.tl_menu_data);
3518              var $d1_wrap = $("#category-full .d1-wrap");
3519              var aData = window.tl_menu_data;
3520              $.each(aData, function(index, key) {
3521                var $d1 = $d1_wrap.find(
3522                  '.d1[data-param$="=' + key.parent_cate_no + '"]'
3523                );
3524                if ($d1.length > 0) {
3525                  if ($d1.hasClass("be") === false) {
3526                    $d1.addClass("be");
3527                    $d1.append('<div class="d2-wrap"><dl></dl></div>');
3528                  }
3529                  $d1
3530                    .find(".d2-wrap dl")
3531                    .append(
3532                      '<dd data-param="' +
3533                        key.param +
3534                        '" class="d2"><a href="/product/list.html' +
3535                        key.param +
3536                        '">' +
3537                        key.name +
3538                        "</a></dd>"
3539                    );
3540                  return;
3541                }
3542
3543                var $d2 = $d1_wrap.find(
3544                  '.d2[data-param$="=' + key.parent_cate_no + '"]'
3545                );
3546                if ($d2.length > 0) {
3547                  if ($d2.hasClass("be") === false) {
3548                    $d2.addClass("be");
3549                    $d2.append('<dl class="d3-wrap"></dl>');
3550                  }
3551                  $d2
3552                    .find(".d3-wrap")
3553                    .append(
3554                      '<dd data-param="' +
3555                        key.param +
3556                        '" class="d3"><a href="/product/list.html' +
3557                        key.param +
3558                        '">' +
3559                        key.name +
3560                        "</a></dd>"
3561                    );
3562                  return;
3563                }
3564
3565                var $d3 = $d1_wrap.find(
3566                  '.d3[data-param$="=' + key.parent_cate_no + '"]'
3567                );
3568                if ($d3.length > 0) {
3569                  if ($d3.hasClass("be") === false) {
3570                    $d3.addClass("be");
3571                    $d3.append('<dl class="d4-wrap"></dl>');
3572                  }
3573                  $d3
3574                    .find(".d4-wrap")
3575                    .append(
3576                      '<dd data-param="' +
3577                        key.param +
3578                        '" class="d4"><a href="/product/list.html' +
3579                        key.param +
3580                        '">' +
3581                        key.name +
3582                        "</a></dd>"
3583                    );
3584                  return;
3585                }
3586              });
3587
3588              var $full = $("#category-full");
3589              var $d1 = $full.find(".d1");
3590              var $d2 = $full.find(".d2");
3591              var $d3 = $full.find(".d3");
3592              var speed = 250;
3593
3594              $d2
3595                .bind("mouseenter", function() {
3596                  $d2.css("z-index", 0);
3597                  $(this).css("z-index", 1);
3598                  $(this)
3599                    .find(".d3-wrap")
3600                    .stop(true, true)
3601                    .fadeIn(speed);
3602                  $(this).addClass("on");
3603                })
3604                .bind("mouseleave", function() {
3605                  $(this)
3606                    .find(".d3-wrap")
3607                    .stop(true, true)
3608                    .fadeOut(speed);
3609                  $(this).removeClass("on");
3610                });
3611              $d3
3612                .bind("mouseenter", function() {
3613                  $d3.css("z-index", 0);
3614                  $(this).css("z-index", 1);
3615                  $(this)
3616                    .find(".d4-wrap")
3617                    .stop(true, true)
3618                    .fadeIn(speed);
3619                  $(this).addClass("on");
3620                })
3621                .bind("mouseleave", function() {
3622                  $(this)
3623                    .find(".d4-wrap")
3624                    .stop(true, true)
3625                    .fadeOut(speed);
3626                  $(this).removeClass("on");
3627                });
3628              //--------------------------------------------------------------------------------------------------
3629
3630              //동적으로 불러오는 부분이 스크롤바가 있을 때
3631              /*
3632                        $newAt(this).find('.scrollbar-inner').scrollbar({  // jQuery 사용중 scrollbar 함수가 $newAt에 잡히는지 $ 에 잡히는지 확인후 scrollbar 함수 호출 여기서는 $newAt에 잡힌다. scrollbar가 잡히기 위해서는 height 가 css로 고정되어야 한다.
3633                            'disableBodyScroll':true
3634                        });
3635                        */
3636              if(tl_isMobile()) {
3637              } else {
3638                  $jq(this)
3639                    .find(".scrollbar_box")
3640                    .mCustomScrollbar({
3641                      theme: "dark",
3642                      mouseWheel: { scrollAmount: 300 }
3643                    });
3644              }
3645            }
3646            $this.addClass("script-on");
3647            $btn.addClass("on");
3648          }
3649        );
3650      });
3651    }
3652  });
3653})(jQuery);
3654
3655function subMenuEvent(obj) {
3656  $(obj)
3657    .parent()
3658    .find("li")
3659    .removeClass("selected");
3660  $(obj)
3661    .parent()
3662    .toggleClass("selected");
3663}
3664function setMyCateList(iCateNo, oObj) {
3665  $(oObj).toggleClass("selected");
3666  var sMyCateList = localStorage.getItem("myCateList");
3667  var aCateList = [];
3668  if (checkInArray(sMyCateList, iCateNo) == true) {
3669    var aTemp = sMyCateList.split("|");
3670    for (var i = 0; i < aTemp.length; i++) {
3671      if (aTemp[i] != iCateNo) {
3672        aCateList.push(aTemp[i]);
3673      }
3674    }
3675    var sCateList = aCateList.join("|");
3676    localStorage.setItem("myCateList", sCateList);
3677    $("#bookmartCateArea #bookmark" + iCateNo).remove();
3678    if (aCateList.length == 0) {
3679      $("#bookmarkCategory #bookmartCateArea")
3680        .find("ul")
3681        .remove();
3682    }
3683    $("#cate" + iCateNo + " > #icoBookmark").removeClass("selected");
3684  } else {
3685    var sCateName = aCategory[iCateNo].name;
3686    var sCateParam = aCategory[iCateNo].param;
3687    var sHtml = "";
3688    if (sMyCateList == null || sMyCateList == "") {
3689      sHtml =
3690        '<ul><li id="bookmark'+ iCateNo + '"><a href="/product/list.html' + sCateParam + '" book_mark="' + iCateNo + '">' + sCateName + '</a><button type="button" class="icoBookmark selected" onclick="setMyCateList(' + iCateNo + ');">즐겨찾기 삭제</button></li></ul>';
3691      $("#bookmarkCategory #bookmartCateArea").append(sHtml);
3692    } else {
3693      sHtml = '<li id="bookmark' + iCateNo + '"><a href="/product/list.html' + sCateParam + '" book_mark="' + iCateNo +'">' + sCateName + '</a><button type="button" class="icoBookmark selected" onclick="setMyCateList(' + iCateNo + ');">즐겨찾기 삭제</button></li>';
3694      $("#bookmarkCategory #bookmartCateArea ul").append(sHtml);
3695    }
3696    $(this).addClass("selected");
3697    if (sMyCateList == null || sMyCateList == "") {
3698      localStorage.setItem("myCateList", iCateNo);
3699    } else {
3700      localStorage.setItem("myCateList", sMyCateList + "|" + iCateNo);
3701    }
3702  }
3703  chkMyCateList();
3704}
3705function checkInArray(sBookmarkList, iCateNo) {
3706  if (sBookmarkList == null) return false;
3707  var aBookmarkList = sBookmarkList.split("|");
3708  for (var i = 0; i < aBookmarkList.length; i++) {
3709    if (aBookmarkList[i] == iCateNo) {
3710      return true;
3711    }
3712  }
3713  return false;
3714}
3715function chkMyCateList() {
3716  var sMyCateList = localStorage.getItem("myCateList");
3717  if (sMyCateList == null || sMyCateList == "") {
3718    $("#bookmarkEmpty").show();
3719  } else {
3720    $("#bookmarkEmpty").hide();
3721  }
3722}
3723$(document).ready(function(){
3724    if (typeof(EC_SHOP_MULTISHOP_SHIPPING) != "undefined") {
3725        var sShippingCountryCode4Cookie = 'shippingCountryCode';
3726        var bShippingCountryProc = false;
3727
3728        // 배송국가 선택 설정이 사용안함이면 숨김
3729        if (EC_SHOP_MULTISHOP_SHIPPING.bMultishopShippingCountrySelection === false) {
3730            $('.xans-layout-multishopshipping .xans-layout-multishopshippingcountrylist').hide();
3731            $('.xans-layout-multishoplist .xans-layout-multishoplistmultioption .xans-layout-multishoplistmultioptioncountry').hide();
3732        } else {
3733            $('.thumb .xans-layout-multishoplistitem').hide();
3734            var aShippingCountryCode = document.cookie.match('(^|;) ?'+sShippingCountryCode4Cookie+'=([^;]*)(;|$)');
3735            if (typeof(aShippingCountryCode) != 'undefined' && aS
3735hippingCountryCode != null && aShippingCountryCode.length > 2) {
3736                var sShippingCountryValue = aShippingCountryCode[2];
3737            }
3738
3739            // query string으로 넘어 온 배송국가 값이 있다면, 그 값을 적용함
3740            var aHrefCountryValue = decodeURIComponent(location.href).split("/?country=");
3741
3742            if (aHrefCountryValue.length == 2) {
3743                var sShippingCountryValue = aHrefCountryValue[1];
3744            }
3745
3746            // 메인 페이지에서 국가선택을 안한 경우, 그 외의 페이지에서 셋팅된 값이 안 나오는 현상 처리
3747            if (location.href.split("/").length != 4 && $(".xans-layout-multishopshipping .xans-layout-multishopshippingcountrylist").val()) {
3748                $(".xans-layout-multishoplist .xans-layout-multishoplistmultioption a .ship span").text(" : "+$(".xans-layout-multishopshipping .xans-layout-multishopshippingcountrylist option:selected").text().split("SHIPPING TO : ").join(""));
3749
3750                if ($("#f_country").length > 0 && location.href.indexOf("orderform.html") > -1) {
3751                    $("#f_country").val($(".xans-layout-multishopshipping .xans-layout-multishopshippingcountrylist").val());
3752                }
3753            }
3754            if (typeof(sShippingCountryValue) != "undefined" && sShippingCountryValue != "" && sShippingCountryValue != null) {
3755                sShippingCountryValue = sShippingCountryValue.split("#")[0];
3756                var bShippingCountryProc = true;
3757
3758                $(".xans-layout-multishopshipping .xans-layout-multishopshippingcountrylist").val(sShippingCountryValue);
3759                $(".xans-layout-multishoplist .xans-layout-multishoplistmultioption a .ship span").text(" : "+$(".xans-layout-multishopshipping .xans-layout-multishopshippingcountrylist option:selected").text().split("SHIPPING TO : ").join(""));
3760                var expires = new Date();
3761                expires.setTime(expires.getTime() + (30 * 24 * 60 * 60 * 1000)); // 30일간 쿠키 유지
3762                document.cookie = sShippingCountryCode4Cookie+'=' + $(".xans-layout-multishopshipping .xans-layout-multishopshippingcountrylist").val() +';path=/'+ ';expires=' + expires.toUTCString();
3763                if ($("#f_country").length > 0 && location.href.indexOf("orderform.html") > -1) {
3764                    $("#f_country").val(sShippingCountryValue).change();;
3765                }
3766            }
3767        }
3768        // 언어선택 설정이 사용안함이면 숨김
3769        if (EC_SHOP_MULTISHOP_SHIPPING.bMultishopShippingLanguageSelection === false) {
3770            $('.xans-layout-multishopshipping .xans-layout-multishopshippinglanguagelist').hide();
3771            $('.xans-layout-multishoplist .xans-layout-multishoplistmultioption .xans-layout-multishoplistmultioptionlanguage').hide();
3772        } else {
3773            $('.thumb .xans-layout-multishoplistitem').hide();
3774        }
3775
3776        // 배송국가 및 언어 설정이 둘 다 사용안함이면 숨김
3777        if (EC_SHOP_MULTISHOP_SHIPPING.bMultishopShipping === false) {
3778            $(".xans-layout-multishopshipping").hide();
3779            $('.xans-layout-multishoplist .xans-layout-multishoplistmultioption').hide();
3780        } else if (bShippingCountryProc === false && location.href.split("/").length == 4) { // 배송국가 값을 처리한 적이 없고, 메인화면일 때만 선택 레이어를 띄움
3781            var sShippingCountryValue = $(".xans-layout-multishopshipping .xans-layout-multishopshippingcountrylist").val();
3782            $(".xans-layout-multishopshipping .xans-layout-multishopshippingcountrylist").val(sShippingCountryValue);
3783            $(".xans-layout-multishoplist .xans-layout-multishoplistmultioption a .ship span").text(" : "+$(".xans-layout-multishopshipping .xans-layout-multishopshippingcountrylist option:selected").text().split("SHIPPING TO : ").join(""));
3784            // 배송국가 선택을 사용해야 레이어를 보이게 함
3785            if (EC_SHOP_MULTISHOP_SHIPPING.bMultishopShippingCountrySelection === true) {
3786                $(".xans-layout-multishopshipping").show();
3787            }
3788        }
3789
3790        $(".xans-layout-multishopshipping .close").bind("click", function() {
3791            $(".xans-layout-multishopshipping").hide();
3792        });
3793
3794        $(".xans-layout-multishopshipping .ec-base-button a").bind("click", function() {
3795            var expires = new Date();
3796            expires.setTime(expires.getTime() + (30 * 24 * 60 * 60 * 1000)); // 30일간 쿠키 유지
3797            document.cookie = sShippingCountryCode4Cookie+'=' + $(".xans-layout-multishopshipping .xans-layout-multishopshippingcountrylist").val() +';path=/'+ ';expires=' + expires.toUTCString();
3798
3799            // 도메인 문제로 쿠키로 배송국가 설정이 안 되는 경우를 위해 query string으로 배송국가 값
3799을 넘김
3800            var sQuerySting = (EC_SHOP_MULTISHOP_SHIPPING.bMultishopShippingCountrySelection === false) ? "" : "/?country="+encodeURIComponent($(".xans-layout-multishopshipping .xans-layout-multishopshippingcountrylist").val());
3801
3802            location.href = '//'+$(".xans-layout-multishopshipping .xans-layout-multishopshippinglanguagelist").val()+sQuerySting;
3803        });
3804        $(".xans-layout-multishoplist .xans-layout-multishoplistmultioption a").bind("click", function() {
3805            $(".xans-layout-multishopshipping").show();
3806        });
3807    }
3808});
3809!(function($) {
3810    $(document).ready(function(){
3811        $.easing = $newAt.easing;
3812        $('.coupon_popup.btn').click(function (e) {
3813            var $btn = $(this);
3814            $btn.blur();
3815            $('.coupon_popup.popup').bPopup({
3816                preLoadSelector:'.loadhtml',
3817                preLoadUrl:'/coupon/coupon_productdetail.html',	// 페이지주소
3818                zIndex:200,									// z-index
3819                positionStyle:'fixed',						// 고정방법
3820                speed:300, 									// 속도 (css transition과 동일하게 설정)
3821				autoClose:600000, 							// 1000 = 1초후 닫힘
3822                modal:true,									// ë°°ê²½
3823                transition:'custom',
3824                follow: [false, false],
3825                openClass:'on',
3826                onClose: function () { $btn.removeClass('on'); $('#dCouponDetail').remove();} // 버튼 클래스에 on 삭제, 쿠폰상세내용 레이어창도 같이 닫히게
3827            }, function () {
3828                var $this = $(this);
3829                if (!$this.hasClass('script-on')) { //한번만 실행하기 위해 class 추가
3830                    if(tl_isMobile()) {
3831                    	$jq(this).find('.scrollbar_box').css({'overflow-y':'auto'});
3832                    } else {
3833                        $jq(this).find('.scrollbar_box').mCustomScrollbar({
3834                            theme: 'dark',
3835                            mouseWheel:{ scrollAmount: 300 }
3836                        });
3837                    }
3838				}
3839				$this.addClass('script-on');
3840                $btn.addClass('on');
3841            });
3842        });
3843        
3844        // 쿠폰상세내용 레이어창도 같이 닫히게
3845        $('.p-close.-cap2').click(function() {
3846            $('#dCouponDetail').remove();
3847        });
3848        /*
3849        $newAt('body').on('mouseenter', '#dCouponDetail', function() {
3850            $(this).find('a[href="#none"]').attr('onclick', "");
3851            $(this).find('a[href="#none"]').click(function() {
3852                $('.p-close.-cap2').trigger('click');
3853                $('#dCouponDetail').remove();
3854            });
3855        });
3856        */
3857	});
3858})(jQuery);
3859!(function($) {
3860    $(document).ready(function(){
3861        // $.easing = $newAt.easing; //easing 어디에 잡히는지 확인
3862		
3863        //팝업디자인
3864		var $popup_map = {}; //라디오버튼처럼 사용하기 위해
3865        $('.cp550.btn').click(function (e) {
3866            var $btn = $(this);
3867            var popup_key = $btn.attr('data-popup_key');
3868            var popup_box = $btn.attr('data-popup_box');
3869            var preLoadUrl = $btn.attr('data-preLoadUrl');
3870            var preLoadSelector = $btn.attr('data-preLoadSelector');
3871            if ($btn.hasClass('on') && $popup_map[popup_key]) {
3872                $popup_map[popup_key].close();
3873                return;
3874            } 
3875            for (var key in $popup_map) {
3876               	if($popup_map[key] && key != popup_key) $popup_map[key].close();
3877            }
3878            $popup_map[popup_key] = $(popup_box).bPopup({
3879                //preLoadSelector: preLoadSelector,
3880                preLoadSelector:'.loadhtml',
3881                preLoadUrl: preLoadUrl,				// 페이지주소는 각html에서 컨트롤
3882                positionStyle:'absolute',			// 고정방법
3883                speed:200,							// 속도 (css transition과 동일하게 설정)
3884                modal:false,						// ë°°ê²½
3885                transition:'custom', 				//onClose와 callback에서 transition 처리
3886                appendTo:'',
3887                zIndex:10,
3888                appending: true,
3889                follow: [false, false],
3890                openClass: 'on',
3891                onClose: function () { $btn.removeClass('on'); }
3892            }, function () {
3893                var $this = $(this);
3894                if (!$this.hasClass('script-on')) { //한번만 실행하기 위해 class 추가
3895					//동적으로 불러오는 부분이 스크롤바가 있을 때
3896                    /*
3897					$newAt(this).find('.scrollbar_box').scrollbar({  // jQuery 사용중 scrollbar 함수가 $newAt에 잡히는지 $ 에 잡히는지 확인후 scrollbar 함수 호출 여기서는 $newAt에 잡힌다. scrollbar가 잡히기 위해서는 height 가 css로 고정되어야 한다.
3898						'disableBodyScroll':true,
3899					});
3900                    */
3901                    $jq(this).find('.scrollbar_box').mCustomScrollbar({
3902                    	theme: 'dark',
3903                        mouseWheel:{ scrollAmount: 300 }
3904                    });
3905				}
3906				$this.addClass('script-on');
3907                $btn.addClass('on');
3908            });
3909        });
3910	});
3911})(jQuery);
3912!(function($) {
3913    $(document).ready(function(){
3914        $('.cp793.btn').click(function (e) {
3915            var $btn = $(this);
3916            $btn.blur();
3917            $('.cp793.popup').bPopup({
3918                preLoadSelector:'.loadhtml',
3919                preLoadUrl:'/_wg/_cPack/cp793/popup.html',	// 페이지주소
3920                zIndex:999,									// z-index
3921                positionStyle:'fixed',						// 고정방법
3922                speed:300, 									// 속도 (css transition과 동일하게 설정)
3923				autoClose:600000, 							// 1000 = 1초후 닫힘
3924                modal:false,								// ë°°ê²½
3925                transition:'custom',
3926                follow: [false, false],
3927                openClass:'on',
3928                onClose: function () { $btn.removeClass('on'); } // 버튼 클래스에 on 삭제
3929            }, function () {
3930                var $this = $(this);
3931                if (!$this.hasClass('script-on')) { //한번만 실행하기 위해 class 추가
3932                    
3933                    //cp793_slide 패널 슬라이드배너
3934                    $jq(function() {
3935                        var $owl = $jq('#cp793_slide .ul');
3936                        $owl.owlOneItemExt({
3937                            items:1,					//화면에 보이는 개수
3938                            margin:0,					//슬라이드 간격
3939                            stagePadding:0,				//좌우측 보이는 정도
3940                            smartSpeed:500,				//슬라이드 속도
3941                            nav:true,					//좌우화살표
3942                            loop:true,					//루프
3943                            autoplay:true,				//자동롤링
3944                            autoplayTimeout:3000,		//자동롤링 시간간격 (1000=1초)
3945                            autoplayHoverPause:true,	//마우스오버시 정지
3946                            rewind:false,  				//끝에서 되돌림
3947                            center:true,				//중앙정렬
3948                            autowidth:true,				//자동 넓이 설정
3949                            autoHeight:true,			//자동 높이 설정
3950                        });
3951                        window.owl = $owl;
3952                    });
3953                    
3954                    if(tl_isMobile()) {
3955                    	$jq(this).find('.scrollbar_box').css({'overflow-y':'auto'});
3956                    } else {
3957                        $jq(this).find('.scrollbar_box').mCustomScrollbar({
3958                            theme: 'dark',
3959                            mouseWheel:{ scrollAmount: 300 }
3960                        });
3961                    }
3962				}
3963				$this.addClass('script-on');
3964                $btn.addClass('on');
3965            });
3966        });
3967	});
3968})(jQuery);
3969!(function($) {
3970    $(document).ready(function(){
3971        $('.cp791.btn').click(function (e) {
3972            var $btn = $(this);
3973            $btn.blur();
3974            $('.cp791.popup').bPopup({
3975                preLoadSelector:'.loadhtml',
3976                preLoadUrl:'/_wg/_cPack/cp791/popup.html',	// 페이지주소
3977                zIndex:999,									// z-index
3978                positionStyle:'fixed',						// 고정방법
3979                speed:300, 									// 속도 (css transition과 동일하게 설정)
3980				autoClose:600000, 							// 1000 = 1초후 닫힘
3981                modal:true,									// ë°°ê²½
3982                transition:'custom',
3983                follow: [false, false],
3984                openClass:'on',
3985                onClose: function () { $btn.removeClass('on'); } // 버튼 클래스에 on 삭제
3986            }, function () {
3987                var $this = $(this);
3988                if (!$this.hasClass('script-on')) { //한번만 실행하기 위해 class 추가
3989					//동적으로 불러오는 부분이 스크롤바가 있을 때
3990                    /*
3991					$newAt(this).find('.scrollbar_box').scrollbar({  // jQuery 사용중 scrollbar 함수가 $newAt에 잡히는지 $ 에 잡히는지 확인후 scrollbar 함수 호출 여기서는 $newAt에 잡힌다. scrollbar가 잡히기 위해서는 height 가 css로 고정되어야 한다.
3992						'disableBodyScroll':true,
3993					});
3994                    */
3995                    if(tl_isMobile()) {
3996                    	$jq(this).find('.scrollbar_box').css({'overflow-y':'auto'});
3997                    } else {
3998                        $jq(this).find('.scrollbar_box').mCustomScrollbar({
3999                            theme: 'dark',
4000                            mouseWheel:{ scrollAmount: 300 }
4001                        });
4002                    }
4003				}
4004				$this.addClass('script-on');
4005                $btn.addClass('on');
4006            });
4007        });
4008	});
4009})(jQuery);
4010!(function($) {
4011    $(document).ready(function(){
4012		var $detail_youtube = null;
4013        $('.cp582.btn').click(function (e) {
4014            var $btn = $(this);
4015            if ($btn.hasClass('on') && cp582) {
4016                cp582.close();
4017                return;
4018            }
4019            $box = $('.cp582.popup');
4020            cp582 = $box.bPopup({
4021                preLoadSelector:'.loadhtml',
4022                preLoadUrl:'',	// 페이지주소
4023                zIndex:999,							// z-index
4024                positionStyle:'fixed',				// 고정방법
4025                speed:300,							// 속도 (css transition과 동일하게 설정)
4026                modal: true,						// ë°°ê²½
4027                transition:'custom', 				//onClose와 callback에서 transition 처리
4028                appending: true,
4029                follow: [false, false],
4030                openClass:'on',
4031                onClose:function () { 
4032                    $btn.removeClass('on'); 
4033                    yt_player[0].pauseVideo(); 
4034                }
4035            }, function () {
4036                $btn.addClass('on');
4037                setTimeout(function() {yt_player[0].playVideo();}, 1000); //화면 나타나기까지 오래 걸리면 시간을 키운다.	
4038                //yt_player[0].playVideo(); 화면에 나타나기 전에 호출하면 error
4039            });
4040        });
4041   
4042	});
4043})(jQuery);
4044
4045var tag = document.createElement('script');
4046tag.src = "https://www.youtube.com/iframe_api";
4047var firstScriptTag = document.getElementsByTagName('script')[0];
4048firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
4049
4050var $iframe=$('.cp582 iframe');
4051var yt_player=[];	
4052function onYouTubeIframeAPIReady() {	
4053    for(var i=0;i<$iframe.length;i++){
4054    	var playlist = $iframe.eq(i).attr('src').split('/');
4055    	var yt_id = playlist[playlist.length-1];
4056    	var src = $iframe.eq(i).attr('src')+'?playlist='+yt_id+';rel=0&showinfo=0&autoplay=0&loop=1&vq=hd1080&color=white&enablejsapi=1';
4057    	$iframe.eq(i).attr('src', src).attr('allow','autoplay;encrypted-media');
4058        var player= new YT.Player($iframe[i],{
4059            events: {'onReady':onPlayerReady} 
4060        });
4061    }
4062}
4063// 한번만 실행
4064var on_player = 1;
4065function onPlayerReady(event){
4066    if(on_player == 1) {
4067        yt_player.push(event.target);
4068        event.target.setVolume(20); //유튜브 기본소리(볼륨) 0~100까지
4069        if(yt_player.length == $iframe.length){
4070            yt_player.sort(function(a,b){return a.g-b.g});				
4071        }  
4072        on_player++;
4073    }
4074}
4075$jq(function() {
4076	var $owl2 = $jq('#cp513 .ul');
4077    $owl2.owlTimer({
4078        items:1,					//화면에 보이는 개수
4079        margin:0,					//슬라이드 간격
4080        stagePadding:0,				//좌우측 보이는 정도
4081        smartSpeed:500,				//슬라이드 속도
4082        animateIn: 'fadeIn',
4083        animateOut: 'fadeOut',
4084        nav:true,					//좌우화살표
4085        loop:true,					//루프
4086        autoplay:true,				//자동롤링
4087        autoplayTimeout:4000,		//자동롤링 시간간격 (1000=1초)
4088        autoplayHoverPause:true,	//마우스오버시 정지
4089        video:true,					//비디오재생
4090        lazyLoad:false,				//레이지로드
4091        center:true,				//중앙정렬
4092        autowidth:true,				//자동 넓이 설정
4093        autoHeight:true,			//자동 높이 설정
4094        animateIn:''				//fadeIn 가능
4095	});
4096    //window.owl = $owl;
4097});
4098!(function($) {
4099    $(document).ready(function(){
4100        $('.cp584.btn').click(function (e) {
4101            var $btn = $(this);
4102            $btn.blur();
4103            $('.cp584.popup').bPopup({
4104                preLoadSelector:'.loadhtml',
4105                preLoadUrl:'/_wg/_cPack/cp584/popup.html',	// 페이지주소
4106                zIndex:999,									// z-index
4107                positionStyle:'fixed',						// 고정방법
4108                speed:300, 									// 속도 (css transition과 동일하게 설정)
4109				autoClose:600000, 							// 1000 = 1초후 닫힘
4110                modal:true,									// ë°°ê²½
4111                transition:'custom',
4112                follow: [false, false],
4113                openClass:'on',
4114                onClose: function () { $btn.removeClass('on'); $('#sSizeGuideLayer').remove();} // 버튼 클래스에 on 삭제, 사이즈가이드 창도 닫히게
4115            }, function () {
4116                var $this = $(this);
4117                if (!$this.hasClass('script-on')) { //한번만 실행하기 위해 class 추가
4118					//동적으로 불러오는 부분이 스크롤바가 있을 때
4119                    /*
4120					$newAt(this).find('.scrollbar_box').scrollbar({  // jQuery 사용중 scrollbar 함수가 $newAt에 잡히는지 $ 에 잡히는지 확인후 scrollbar 함수 호출 여기서는 $newAt에 잡힌다. scrollbar가 잡히기 위해서는 height 가 css로 고정되어야 한다.
4121						'disableBodyScroll':true,
4122					});
4123                    */
4124                    if(tl_isMobile()) {
4125                    	$jq(this).find('.scrollbar_box').css({'overflow-y':'auto'});
4126                    } else {
4127                        $jq(this).find('.scrollbar_box').mCustomScrollbar({
4128                            theme: 'dark',
4129                            mouseWheel:{ scrollAmount: 300 }
4130                        });
4131                    }
4132				}
4133				$this.addClass('script-on');
4134                $btn.addClass('on');
4135            });
4136        });
4137        
4138        // 사이즈가이드 창도 닫히게
4139        $('.p-close.-cap2').click(function() {
4140            $('#sSizeGuideLayer').remove();
4141        });
4142        
4143	});
4144})(jQuery);

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.