Subversion-Projekte lars-tiefland.cienc

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
5 lars 1
/*
2
 *  jQuery OwlCarousel v1.3.3
3
 *
4
 *  Copyright (c) 2013 Bartosz Wojciechowski
5
 *  http://www.owlgraphic.com/owlcarousel/
6
 *
7
 *  Licensed under MIT
8
 *
9
 */
10
 
11
/*JS Lint helpers: */
12
/*global dragMove: false, dragEnd: false, $, jQuery, alert, window, document */
13
/*jslint nomen: true, continue:true */
14
 
15
if (typeof Object.create !== "function") {
16
    Object.create = function (obj) {
17
        function F() {}
18
        F.prototype = obj;
19
        return new F();
20
    };
21
}
22
(function ($, window, document) {
23
 
24
    var Carousel = {
25
        init : function (options, el) {
26
            var base = this;
27
 
28
            base.$elem = $(el);
29
            base.options = $.extend({}, $.fn.owlCarousel.options, base.$elem.data(), options);
30
 
31
            base.userOptions = options;
32
            base.loadContent();
33
        },
34
 
35
        loadContent : function () {
36
            var base = this, url;
37
 
38
            function getData(data) {
39
                var i, content = "";
40
                if (typeof base.options.jsonSuccess === "function") {
41
                    base.options.jsonSuccess.apply(this, [data]);
42
                } else {
43
                    for (i in data.owl) {
44
                        if (data.owl.hasOwnProperty(i)) {
45
                            content += data.owl[i].item;
46
                        }
47
                    }
48
                    base.$elem.html(content);
49
                }
50
                base.logIn();
51
            }
52
 
53
            if (typeof base.options.beforeInit === "function") {
54
                base.options.beforeInit.apply(this, [base.$elem]);
55
            }
56
 
57
            if (typeof base.options.jsonPath === "string") {
58
                url = base.options.jsonPath;
59
                $.getJSON(url, getData);
60
            } else {
61
                base.logIn();
62
            }
63
        },
64
 
65
        logIn : function () {
66
            var base = this;
67
 
68
            base.$elem.data("owl-originalStyles", base.$elem.attr("style"));
69
            base.$elem.data("owl-originalClasses", base.$elem.attr("class"));
70
 
71
            base.$elem.css({opacity: 0});
72
            base.orignalItems = base.options.items;
73
            base.checkBrowser();
74
            base.wrapperWidth = 0;
75
            base.checkVisible = null;
76
            base.setVars();
77
        },
78
 
79
        setVars : function () {
80
            var base = this;
81
            if (base.$elem.children().length === 0) {return false; }
82
            base.baseClass();
83
            base.eventTypes();
84
            base.$userItems = base.$elem.children();
85
            base.itemsAmount = base.$userItems.length;
86
            base.wrapItems();
87
            base.$owlItems = base.$elem.find(".owl-item");
88
            base.$owlWrapper = base.$elem.find(".owl-wrapper");
89
            base.playDirection = "next";
90
            base.prevItem = 0;
91
            base.prevArr = [0];
92
            base.currentItem = 0;
93
            base.customEvents();
94
            base.onStartup();
95
        },
96
 
97
        onStartup : function () {
98
            var base = this;
99
            base.updateItems();
100
            base.calculateAll();
101
            base.buildControls();
102
            base.updateControls();
103
            base.response();
104
            base.moveEvents();
105
            base.stopOnHover();
106
            base.owlStatus();
107
 
108
            if (base.options.transitionStyle !== false) {
109
                base.transitionTypes(base.options.transitionStyle);
110
            }
111
            if (base.options.autoPlay === true) {
112
                base.options.autoPlay = 5000;
113
            }
114
            base.play();
115
 
116
            base.$elem.find(".owl-wrapper").css("display", "block");
117
 
118
            if (!base.$elem.is(":visible")) {
119
                base.watchVisibility();
120
            } else {
121
                base.$elem.css("opacity", 1);
122
            }
123
            base.onstartup = false;
124
            base.eachMoveUpdate();
125
            if (typeof base.options.afterInit === "function") {
126
                base.options.afterInit.apply(this, [base.$elem]);
127
            }
128
        },
129
 
130
        eachMoveUpdate : function () {
131
            var base = this;
132
 
133
            if (base.options.lazyLoad === true) {
134
                base.lazyLoad();
135
            }
136
            if (base.options.autoHeight === true) {
137
                base.autoHeight();
138
            }
139
            base.onVisibleItems();
140
 
141
            if (typeof base.options.afterAction === "function") {
142
                base.options.afterAction.apply(this, [base.$elem]);
143
            }
144
        },
145
 
146
        updateVars : function () {
147
            var base = this;
148
            if (typeof base.options.beforeUpdate === "function") {
149
                base.options.beforeUpdate.apply(this, [base.$elem]);
150
            }
151
            base.watchVisibility();
152
            base.updateItems();
153
            base.calculateAll();
154
            base.updatePosition();
155
            base.updateControls();
156
            base.eachMoveUpdate();
157
            if (typeof base.options.afterUpdate === "function") {
158
                base.options.afterUpdate.apply(this, [base.$elem]);
159
            }
160
        },
161
 
162
        reload : function () {
163
            var base = this;
164
            window.setTimeout(function () {
165
                base.updateVars();
166
            }, 0);
167
        },
168
 
169
        watchVisibility : function () {
170
            var base = this;
171
 
172
            if (base.$elem.is(":visible") === false) {
173
                base.$elem.css({opacity: 0});
174
                window.clearInterval(base.autoPlayInterval);
175
                window.clearInterval(base.checkVisible);
176
            } else {
177
                return false;
178
            }
179
            base.checkVisible = window.setInterval(function () {
180
                if (base.$elem.is(":visible")) {
181
                    base.reload();
182
                    base.$elem.animate({opacity: 1}, 200);
183
                    window.clearInterval(base.checkVisible);
184
                }
185
            }, 500);
186
        },
187
 
188
        wrapItems : function () {
189
            var base = this;
190
            base.$userItems.wrapAll("<div class=\"owl-wrapper\">").wrap("<div class=\"owl-item\"></div>");
191
            base.$elem.find(".owl-wrapper").wrap("<div class=\"owl-wrapper-outer\">");
192
            base.wrapperOuter = base.$elem.find(".owl-wrapper-outer");
193
            base.$elem.css("display", "block");
194
        },
195
 
196
        baseClass : function () {
197
            var base = this,
198
                hasBaseClass = base.$elem.hasClass(base.options.baseClass),
199
                hasThemeClass = base.$elem.hasClass(base.options.theme);
200
 
201
            if (!hasBaseClass) {
202
                base.$elem.addClass(base.options.baseClass);
203
            }
204
 
205
            if (!hasThemeClass) {
206
                base.$elem.addClass(base.options.theme);
207
            }
208
        },
209
 
210
        updateItems : function () {
211
            var base = this, width, i;
212
 
213
            if (base.options.responsive === false) {
214
                return false;
215
            }
216
            if (base.options.singleItem === true) {
217
                base.options.items = base.orignalItems = 1;
218
                base.options.itemsCustom = false;
219
                base.options.itemsDesktop = false;
220
                base.options.itemsDesktopSmall = false;
221
                base.options.itemsTablet = false;
222
                base.options.itemsTabletSmall = false;
223
                base.options.itemsMobile = false;
224
                return false;
225
            }
226
 
227
            width = $(base.options.responsiveBaseWidth).width();
228
 
229
            if (width > (base.options.itemsDesktop[0] || base.orignalItems)) {
230
                base.options.items = base.orignalItems;
231
            }
232
            if (base.options.itemsCustom !== false) {
233
                //Reorder array by screen size
234
                base.options.itemsCustom.sort(function (a, b) {return a[0] - b[0]; });
235
 
236
                for (i = 0; i < base.options.itemsCustom.length; i += 1) {
237
                    if (base.options.itemsCustom[i][0] <= width) {
238
                        base.options.items = base.options.itemsCustom[i][1];
239
                    }
240
                }
241
 
242
            } else {
243
 
244
                if (width <= base.options.itemsDesktop[0] && base.options.itemsDesktop !== false) {
245
                    base.options.items = base.options.itemsDesktop[1];
246
                }
247
 
248
                if (width <= base.options.itemsDesktopSmall[0] && base.options.itemsDesktopSmall !== false) {
249
                    base.options.items = base.options.itemsDesktopSmall[1];
250
                }
251
 
252
                if (width <= base.options.itemsTablet[0] && base.options.itemsTablet !== false) {
253
                    base.options.items = base.options.itemsTablet[1];
254
                }
255
 
256
                if (width <= base.options.itemsTabletSmall[0] && base.options.itemsTabletSmall !== false) {
257
                    base.options.items = base.options.itemsTabletSmall[1];
258
                }
259
 
260
                if (width <= base.options.itemsMobile[0] && base.options.itemsMobile !== false) {
261
                    base.options.items = base.options.itemsMobile[1];
262
                }
263
            }
264
 
265
            //if number of items is less than declared
266
            if (base.options.items > base.itemsAmount && base.options.itemsScaleUp === true) {
267
                base.options.items = base.itemsAmount;
268
            }
269
        },
270
 
271
        response : function () {
272
            var base = this,
273
                smallDelay,
274
                lastWindowWidth;
275
 
276
            if (base.options.responsive !== true) {
277
                return false;
278
            }
279
            lastWindowWidth = $(window).width();
280
 
281
            base.resizer = function () {
282
                if ($(window).width() !== lastWindowWidth) {
283
                    if (base.options.autoPlay !== false) {
284
                        window.clearInterval(base.autoPlayInterval);
285
                    }
286
                    window.clearTimeout(smallDelay);
287
                    smallDelay = window.setTimeout(function () {
288
                        lastWindowWidth = $(window).width();
289
                        base.updateVars();
290
                    }, base.options.responsiveRefreshRate);
291
                }
292
            };
293
            $(window).resize(base.resizer);
294
        },
295
 
296
        updatePosition : function () {
297
            var base = this;
298
            base.jumpTo(base.currentItem);
299
            if (base.options.autoPlay !== false) {
300
                base.checkAp();
301
            }
302
        },
303
 
304
        appendItemsSizes : function () {
305
            var base = this,
306
                roundPages = 0,
307
                lastItem = base.itemsAmount - base.options.items;
308
 
309
            base.$owlItems.each(function (index) {
310
                var $this = $(this);
311
                $this
312
                    .css({"width": base.itemWidth})
313
                    .data("owl-item", Number(index));
314
 
315
                if (index % base.options.items === 0 || index === lastItem) {
316
                    if (!(index > lastItem)) {
317
                        roundPages += 1;
318
                    }
319
                }
320
                $this.data("owl-roundPages", roundPages);
321
            });
322
        },
323
 
324
        appendWrapperSizes : function () {
325
            var base = this,
326
                width = base.$owlItems.length * base.itemWidth;
327
 
328
            base.$owlWrapper.css({
329
                "width": width * 2,
330
                "left": 0
331
            });
332
            base.appendItemsSizes();
333
        },
334
 
335
        calculateAll : function () {
336
            var base = this;
337
            base.calculateWidth();
338
            base.appendWrapperSizes();
339
            base.loops();
340
            base.max();
341
        },
342
 
343
        calculateWidth : function () {
344
            var base = this;
345
            base.itemWidth = Math.round(base.$elem.width() / base.options.items);
346
        },
347
 
348
        max : function () {
349
            var base = this,
350
                maximum = ((base.itemsAmount * base.itemWidth) - base.options.items * base.itemWidth) * -1;
351
            if (base.options.items > base.itemsAmount) {
352
                base.maximumItem = 0;
353
                maximum = 0;
354
                base.maximumPixels = 0;
355
            } else {
356
                base.maximumItem = base.itemsAmount - base.options.items;
357
                base.maximumPixels = maximum;
358
            }
359
            return maximum;
360
        },
361
 
362
        min : function () {
363
            return 0;
364
        },
365
 
366
        loops : function () {
367
            var base = this,
368
                prev = 0,
369
                elWidth = 0,
370
                i,
371
                item,
372
                roundPageNum;
373
 
374
            base.positionsInArray = [0];
375
            base.pagesInArray = [];
376
 
377
            for (i = 0; i < base.itemsAmount; i += 1) {
378
                elWidth += base.itemWidth;
379
                base.positionsInArray.push(-elWidth);
380
 
381
                if (base.options.scrollPerPage === true) {
382
                    item = $(base.$owlItems[i]);
383
                    roundPageNum = item.data("owl-roundPages");
384
                    if (roundPageNum !== prev) {
385
                        base.pagesInArray[prev] = base.positionsInArray[i];
386
                        prev = roundPageNum;
387
                    }
388
                }
389
            }
390
        },
391
 
392
        buildControls : function () {
393
            var base = this;
394
            if (base.options.navigation === true || base.options.pagination === true) {
395
                base.owlControls = $("<div class=\"owl-controls\"/>").toggleClass("clickable", !base.browser.isTouch).appendTo(base.$elem);
396
            }
397
            if (base.options.pagination === true) {
398
                base.buildPagination();
399
            }
400
            if (base.options.navigation === true) {
401
                base.buildButtons();
402
            }
403
        },
404
 
405
        buildButtons : function () {
406
            var base = this,
407
                buttonsWrapper = $("<div class=\"owl-buttons\"/>");
408
            base.owlControls.append(buttonsWrapper);
409
 
410
            base.buttonPrev = $("<div/>", {
411
                "class" : "owl-prev",
412
                "html" : base.options.navigationText[0] || ""
413
            });
414
 
415
            base.buttonNext = $("<div/>", {
416
                "class" : "owl-next",
417
                "html" : base.options.navigationText[1] || ""
418
            });
419
 
420
            buttonsWrapper
421
                .append(base.buttonPrev)
422
                .append(base.buttonNext);
423
 
424
            buttonsWrapper.on("touchstart.owlControls mousedown.owlControls", "div[class^=\"owl\"]", function (event) {
425
                event.preventDefault();
426
            });
427
 
428
            buttonsWrapper.on("touchend.owlControls mouseup.owlControls", "div[class^=\"owl\"]", function (event) {
429
                event.preventDefault();
430
                if ($(this).hasClass("owl-next")) {
431
                    base.next();
432
                } else {
433
                    base.prev();
434
                }
435
            });
436
        },
437
 
438
        buildPagination : function () {
439
            var base = this;
440
 
441
            base.paginationWrapper = $("<div class=\"owl-pagination\"/>");
442
            base.owlControls.append(base.paginationWrapper);
443
 
444
            base.paginationWrapper.on("touchend.owlControls mouseup.owlControls", ".owl-page", function (event) {
445
                event.preventDefault();
446
                if (Number($(this).data("owl-page")) !== base.currentItem) {
447
                    base.goTo(Number($(this).data("owl-page")), true);
448
                }
449
            });
450
        },
451
 
452
        updatePagination : function () {
453
            var base = this,
454
                counter,
455
                lastPage,
456
                lastItem,
457
                i,
458
                paginationButton,
459
                paginationButtonInner;
460
 
461
            if (base.options.pagination === false) {
462
                return false;
463
            }
464
 
465
            base.paginationWrapper.html("");
466
 
467
            counter = 0;
468
            lastPage = base.itemsAmount - base.itemsAmount % base.options.items;
469
 
470
            for (i = 0; i < base.itemsAmount; i += 1) {
471
                if (i % base.options.items === 0) {
472
                    counter += 1;
473
                    if (lastPage === i) {
474
                        lastItem = base.itemsAmount - base.options.items;
475
                    }
476
                    paginationButton = $("<div/>", {
477
                        "class" : "owl-page"
478
                    });
479
                    paginationButtonInner = $("<span></span>", {
480
                        "text": base.options.paginationNumbers === true ? counter : "",
481
                        "class": base.options.paginationNumbers === true ? "owl-numbers" : ""
482
                    });
483
                    paginationButton.append(paginationButtonInner);
484
 
485
                    paginationButton.data("owl-page", lastPage === i ? lastItem : i);
486
                    paginationButton.data("owl-roundPages", counter);
487
 
488
                    base.paginationWrapper.append(paginationButton);
489
                }
490
            }
491
            base.checkPagination();
492
        },
493
        checkPagination : function () {
494
            var base = this;
495
            if (base.options.pagination === false) {
496
                return false;
497
            }
498
            base.paginationWrapper.find(".owl-page").each(function () {
499
                if ($(this).data("owl-roundPages") === $(base.$owlItems[base.currentItem]).data("owl-roundPages")) {
500
                    base.paginationWrapper
501
                        .find(".owl-page")
502
                        .removeClass("active");
503
                    $(this).addClass("active");
504
                }
505
            });
506
        },
507
 
508
        checkNavigation : function () {
509
            var base = this;
510
 
511
            if (base.options.navigation === false) {
512
                return false;
513
            }
514
            if (base.options.rewindNav === false) {
515
                if (base.currentItem === 0 && base.maximumItem === 0) {
516
                    base.buttonPrev.addClass("disabled");
517
                    base.buttonNext.addClass("disabled");
518
                } else if (base.currentItem === 0 && base.maximumItem !== 0) {
519
                    base.buttonPrev.addClass("disabled");
520
                    base.buttonNext.removeClass("disabled");
521
                } else if (base.currentItem === base.maximumItem) {
522
                    base.buttonPrev.removeClass("disabled");
523
                    base.buttonNext.addClass("disabled");
524
                } else if (base.currentItem !== 0 && base.currentItem !== base.maximumItem) {
525
                    base.buttonPrev.removeClass("disabled");
526
                    base.buttonNext.removeClass("disabled");
527
                }
528
            }
529
        },
530
 
531
        updateControls : function () {
532
            var base = this;
533
            base.updatePagination();
534
            base.checkNavigation();
535
            if (base.owlControls) {
536
                if (base.options.items >= base.itemsAmount) {
537
                    base.owlControls.hide();
538
                } else {
539
                    base.owlControls.show();
540
                }
541
            }
542
        },
543
 
544
        destroyControls : function () {
545
            var base = this;
546
            if (base.owlControls) {
547
                base.owlControls.remove();
548
            }
549
        },
550
 
551
        next : function (speed) {
552
            var base = this;
553
 
554
            if (base.isTransition) {
555
                return false;
556
            }
557
 
558
            base.currentItem += base.options.scrollPerPage === true ? base.options.items : 1;
559
            if (base.currentItem > base.maximumItem + (base.options.scrollPerPage === true ? (base.options.items - 1) : 0)) {
560
                if (base.options.rewindNav === true) {
561
                    base.currentItem = 0;
562
                    speed = "rewind";
563
                } else {
564
                    base.currentItem = base.maximumItem;
565
                    return false;
566
                }
567
            }
568
            base.goTo(base.currentItem, speed);
569
        },
570
 
571
        prev : function (speed) {
572
            var base = this;
573
 
574
            if (base.isTransition) {
575
                return false;
576
            }
577
 
578
            if (base.options.scrollPerPage === true && base.currentItem > 0 && base.currentItem < base.options.items) {
579
                base.currentItem = 0;
580
            } else {
581
                base.currentItem -= base.options.scrollPerPage === true ? base.options.items : 1;
582
            }
583
            if (base.currentItem < 0) {
584
                if (base.options.rewindNav === true) {
585
                    base.currentItem = base.maximumItem;
586
                    speed = "rewind";
587
                } else {
588
                    base.currentItem = 0;
589
                    return false;
590
                }
591
            }
592
            base.goTo(base.currentItem, speed);
593
        },
594
 
595
        goTo : function (position, speed, drag) {
596
            var base = this,
597
                goToPixel;
598
 
599
            if (base.isTransition) {
600
                return false;
601
            }
602
            if (typeof base.options.beforeMove === "function") {
603
                base.options.beforeMove.apply(this, [base.$elem]);
604
            }
605
            if (position >= base.maximumItem) {
606
                position = base.maximumItem;
607
            } else if (position <= 0) {
608
                position = 0;
609
            }
610
 
611
            base.currentItem = base.owl.currentItem = position;
612
            if (base.options.transitionStyle !== false && drag !== "drag" && base.options.items === 1 && base.browser.support3d === true) {
613
                base.swapSpeed(0);
614
                if (base.browser.support3d === true) {
615
                    base.transition3d(base.positionsInArray[position]);
616
                } else {
617
                    base.css2slide(base.positionsInArray[position], 1);
618
                }
619
                base.afterGo();
620
                base.singleItemTransition();
621
                return false;
622
            }
623
            goToPixel = base.positionsInArray[position];
624
 
625
            if (base.browser.support3d === true) {
626
                base.isCss3Finish = false;
627
 
628
                if (speed === true) {
629
                    base.swapSpeed("paginationSpeed");
630
                    window.setTimeout(function () {
631
                        base.isCss3Finish = true;
632
                    }, base.options.paginationSpeed);
633
 
634
                } else if (speed === "rewind") {
635
                    base.swapSpeed(base.options.rewindSpeed);
636
                    window.setTimeout(function () {
637
                        base.isCss3Finish = true;
638
                    }, base.options.rewindSpeed);
639
 
640
                } else {
641
                    base.swapSpeed("slideSpeed");
642
                    window.setTimeout(function () {
643
                        base.isCss3Finish = true;
644
                    }, base.options.slideSpeed);
645
                }
646
                base.transition3d(goToPixel);
647
            } else {
648
                if (speed === true) {
649
                    base.css2slide(goToPixel, base.options.paginationSpeed);
650
                } else if (speed === "rewind") {
651
                    base.css2slide(goToPixel, base.options.rewindSpeed);
652
                } else {
653
                    base.css2slide(goToPixel, base.options.slideSpeed);
654
                }
655
            }
656
            base.afterGo();
657
        },
658
 
659
        jumpTo : function (position) {
660
            var base = this;
661
            if (typeof base.options.beforeMove === "function") {
662
                base.options.beforeMove.apply(this, [base.$elem]);
663
            }
664
            if (position >= base.maximumItem || position === -1) {
665
                position = base.maximumItem;
666
            } else if (position <= 0) {
667
                position = 0;
668
            }
669
            base.swapSpeed(0);
670
            if (base.browser.support3d === true) {
671
                base.transition3d(base.positionsInArray[position]);
672
            } else {
673
                base.css2slide(base.positionsInArray[position], 1);
674
            }
675
            base.currentItem = base.owl.currentItem = position;
676
            base.afterGo();
677
        },
678
 
679
        afterGo : function () {
680
            var base = this;
681
 
682
            base.prevArr.push(base.currentItem);
683
            base.prevItem = base.owl.prevItem = base.prevArr[base.prevArr.length - 2];
684
            base.prevArr.shift(0);
685
 
686
            if (base.prevItem !== base.currentItem) {
687
                base.checkPagination();
688
                base.checkNavigation();
689
                base.eachMoveUpdate();
690
 
691
                if (base.options.autoPlay !== false) {
692
                    base.checkAp();
693
                }
694
            }
695
            if (typeof base.options.afterMove === "function" && base.prevItem !== base.currentItem) {
696
                base.options.afterMove.apply(this, [base.$elem]);
697
            }
698
        },
699
 
700
        stop : function () {
701
            var base = this;
702
            base.apStatus = "stop";
703
            window.clearInterval(base.autoPlayInterval);
704
        },
705
 
706
        checkAp : function () {
707
            var base = this;
708
            if (base.apStatus !== "stop") {
709
                base.play();
710
            }
711
        },
712
 
713
        play : function () {
714
            var base = this;
715
            base.apStatus = "play";
716
            if (base.options.autoPlay === false) {
717
                return false;
718
            }
719
            window.clearInterval(base.autoPlayInterval);
720
            base.autoPlayInterval = window.setInterval(function () {
721
                base.next(true);
722
            }, base.options.autoPlay);
723
        },
724
 
725
        swapSpeed : function (action) {
726
            var base = this;
727
            if (action === "slideSpeed") {
728
                base.$owlWrapper.css(base.addCssSpeed(base.options.slideSpeed));
729
            } else if (action === "paginationSpeed") {
730
                base.$owlWrapper.css(base.addCssSpeed(base.options.paginationSpeed));
731
            } else if (typeof action !== "string") {
732
                base.$owlWrapper.css(base.addCssSpeed(action));
733
            }
734
        },
735
 
736
        addCssSpeed : function (speed) {
737
            return {
738
                "-webkit-transition": "all " + speed + "ms ease",
739
                "-moz-transition": "all " + speed + "ms ease",
740
                "-o-transition": "all " + speed + "ms ease",
741
                "transition": "all " + speed + "ms ease"
742
            };
743
        },
744
 
745
        removeTransition : function () {
746
            return {
747
                "-webkit-transition": "",
748
                "-moz-transition": "",
749
                "-o-transition": "",
750
                "transition": ""
751
            };
752
        },
753
 
754
        doTranslate : function (pixels) {
755
            return {
756
                "-webkit-transform": "translate3d(" + pixels + "px, 0px, 0px)",
757
                "-moz-transform": "translate3d(" + pixels + "px, 0px, 0px)",
758
                "-o-transform": "translate3d(" + pixels + "px, 0px, 0px)",
759
                "-ms-transform": "translate3d(" + pixels + "px, 0px, 0px)",
760
                "transform": "translate3d(" + pixels + "px, 0px,0px)"
761
            };
762
        },
763
 
764
        transition3d : function (value) {
765
            var base = this;
766
            base.$owlWrapper.css(base.doTranslate(value));
767
        },
768
 
769
        css2move : function (value) {
770
            var base = this;
771
            base.$owlWrapper.css({"left" : value});
772
        },
773
 
774
        css2slide : function (value, speed) {
775
            var base = this;
776
 
777
            base.isCssFinish = false;
778
            base.$owlWrapper.stop(true, true).animate({
779
                "left" : value
780
            }, {
781
                duration : speed || base.options.slideSpeed,
782
                complete : function () {
783
                    base.isCssFinish = true;
784
                }
785
            });
786
        },
787
 
788
        checkBrowser : function () {
789
            var base = this,
790
                translate3D = "translate3d(0px, 0px, 0px)",
791
                tempElem = document.createElement("div"),
792
                regex,
793
                asSupport,
794
                support3d,
795
                isTouch;
796
 
797
            tempElem.style.cssText = "  -moz-transform:" + translate3D +
798
                                  "; -ms-transform:"     + translate3D +
799
                                  "; -o-transform:"      + translate3D +
800
                                  "; -webkit-transform:" + translate3D +
801
                                  "; transform:"         + translate3D;
802
            regex = /translate3d\(0px, 0px, 0px\)/g;
803
            asSupport = tempElem.style.cssText.match(regex);
804
            support3d = (asSupport !== null && asSupport.length === 1);
805
 
806
            isTouch = "ontouchstart" in window || window.navigator.msMaxTouchPoints;
807
 
808
            base.browser = {
809
                "support3d" : support3d,
810
                "isTouch" : isTouch
811
            };
812
        },
813
 
814
        moveEvents : function () {
815
            var base = this;
816
            if (base.options.mouseDrag !== false || base.options.touchDrag !== false) {
817
                base.gestures();
818
                base.disabledEvents();
819
            }
820
        },
821
 
822
        eventTypes : function () {
823
            var base = this,
824
                types = ["s", "e", "x"];
825
 
826
            base.ev_types = {};
827
 
828
            if (base.options.mouseDrag === true && base.options.touchDrag === true) {
829
                types = [
830
                    "touchstart.owl mousedown.owl",
831
                    "touchmove.owl mousemove.owl",
832
                    "touchend.owl touchcancel.owl mouseup.owl"
833
                ];
834
            } else if (base.options.mouseDrag === false && base.options.touchDrag === true) {
835
                types = [
836
                    "touchstart.owl",
837
                    "touchmove.owl",
838
                    "touchend.owl touchcancel.owl"
839
                ];
840
            } else if (base.options.mouseDrag === true && base.options.touchDrag === false) {
841
                types = [
842
                    "mousedown.owl",
843
                    "mousemove.owl",
844
                    "mouseup.owl"
845
                ];
846
            }
847
 
848
            base.ev_types.start = types[0];
849
            base.ev_types.move = types[1];
850
            base.ev_types.end = types[2];
851
        },
852
 
853
        disabledEvents :  function () {
854
            var base = this;
855
            base.$elem.on("dragstart.owl", function (event) { event.preventDefault(); });
856
            base.$elem.on("mousedown.disableTextSelect", function (e) {
857
                return $(e.target).is('input, textarea, select, option');
858
            });
859
        },
860
 
861
        gestures : function () {
862
            /*jslint unparam: true*/
863
            var base = this,
864
                locals = {
865
                    offsetX : 0,
866
                    offsetY : 0,
867
                    baseElWidth : 0,
868
                    relativePos : 0,
869
                    position: null,
870
                    minSwipe : null,
871
                    maxSwipe: null,
872
                    sliding : null,
873
                    dargging: null,
874
                    targetElement : null
875
                };
876
 
877
            base.isCssFinish = true;
878
 
879
            function getTouches(event) {
880
                if (event.touches !== undefined) {
881
                    return {
882
                        x : event.touches[0].pageX,
883
                        y : event.touches[0].pageY
884
                    };
885
                }
886
 
887
                if (event.touches === undefined) {
888
                    if (event.pageX !== undefined) {
889
                        return {
890
                            x : event.pageX,
891
                            y : event.pageY
892
                        };
893
                    }
894
                    if (event.pageX === undefined) {
895
                        return {
896
                            x : event.clientX,
897
                            y : event.clientY
898
                        };
899
                    }
900
                }
901
            }
902
 
903
            function swapEvents(type) {
904
                if (type === "on") {
905
                    $(document).on(base.ev_types.move, dragMove);
906
                    $(document).on(base.ev_types.end, dragEnd);
907
                } else if (type === "off") {
908
                    $(document).off(base.ev_types.move);
909
                    $(document).off(base.ev_types.end);
910
                }
911
            }
912
 
913
            function dragStart(event) {
914
                var ev = event.originalEvent || event || window.event,
915
                    position;
916
 
917
                if (ev.which === 3) {
918
                    return false;
919
                }
920
                if (base.itemsAmount <= base.options.items) {
921
                    return;
922
                }
923
                if (base.isCssFinish === false && !base.options.dragBeforeAnimFinish) {
924
                    return false;
925
                }
926
                if (base.isCss3Finish === false && !base.options.dragBeforeAnimFinish) {
927
                    return false;
928
                }
929
 
930
                if (base.options.autoPlay !== false) {
931
                    window.clearInterval(base.autoPlayInterval);
932
                }
933
 
934
                if (base.browser.isTouch !== true && !base.$owlWrapper.hasClass("grabbing")) {
935
                    base.$owlWrapper.addClass("grabbing");
936
                }
937
 
938
                base.newPosX = 0;
939
                base.newRelativeX = 0;
940
 
941
                $(this).css(base.removeTransition());
942
 
943
                position = $(this).position();
944
                locals.relativePos = position.left;
945
 
946
                locals.offsetX = getTouches(ev).x - position.left;
947
                locals.offsetY = getTouches(ev).y - position.top;
948
 
949
                swapEvents("on");
950
 
951
                locals.sliding = false;
952
                locals.targetElement = ev.target || ev.srcElement;
953
            }
954
 
955
            function dragMove(event) {
956
                var ev = event.originalEvent || event || window.event,
957
                    minSwipe,
958
                    maxSwipe;
959
 
960
                base.newPosX = getTouches(ev).x - locals.offsetX;
961
                base.newPosY = getTouches(ev).y - locals.offsetY;
962
                base.newRelativeX = base.newPosX - locals.relativePos;
963
 
964
                if (typeof base.options.startDragging === "function" && locals.dragging !== true && base.newRelativeX !== 0) {
965
                    locals.dragging = true;
966
                    base.options.startDragging.apply(base, [base.$elem]);
967
                }
968
 
969
                if ((base.newRelativeX > 8 || base.newRelativeX < -8) && (base.browser.isTouch === true)) {
970
                    if (ev.preventDefault !== undefined) {
971
                        ev.preventDefault();
972
                    } else {
973
                        ev.returnValue = false;
974
                    }
975
                    locals.sliding = true;
976
                }
977
 
978
                if ((base.newPosY > 10 || base.newPosY < -10) && locals.sliding === false) {
979
                    $(document).off("touchmove.owl");
980
                }
981
 
982
                minSwipe = function () {
983
                    return base.newRelativeX / 5;
984
                };
985
 
986
                maxSwipe = function () {
987
                    return base.maximumPixels + base.newRelativeX / 5;
988
                };
989
 
990
                base.newPosX = Math.max(Math.min(base.newPosX, minSwipe()), maxSwipe());
991
                if (base.browser.support3d === true) {
992
                    base.transition3d(base.newPosX);
993
                } else {
994
                    base.css2move(base.newPosX);
995
                }
996
            }
997
 
998
            function dragEnd(event) {
999
                var ev = event.originalEvent || event || window.event,
1000
                    newPosition,
1001
                    handlers,
1002
                    owlStopEvent;
1003
 
1004
                ev.target = ev.target || ev.srcElement;
1005
 
1006
                locals.dragging = false;
1007
 
1008
                if (base.browser.isTouch !== true) {
1009
                    base.$owlWrapper.removeClass("grabbing");
1010
                }
1011
 
1012
                if (base.newRelativeX < 0) {
1013
                    base.dragDirection = base.owl.dragDirection = "left";
1014
                } else {
1015
                    base.dragDirection = base.owl.dragDirection = "right";
1016
                }
1017
 
1018
                if (base.newRelativeX !== 0) {
1019
                    newPosition = base.getNewPosition();
1020
                    base.goTo(newPosition, false, "drag");
1021
                    if (locals.targetElement === ev.target && base.browser.isTouch !== true) {
1022
                        $(ev.target).on("click.disable", function (ev) {
1023
                            ev.stopImmediatePropagation();
1024
                            ev.stopPropagation();
1025
                            ev.preventDefault();
1026
                            $(ev.target).off("click.disable");
1027
                        });
1028
                        handlers = $._data(ev.target, "events").click;
1029
                        owlStopEvent = handlers.pop();
1030
                        handlers.splice(0, 0, owlStopEvent);
1031
                    }
1032
                }
1033
                swapEvents("off");
1034
            }
1035
            base.$elem.on(base.ev_types.start, ".owl-wrapper", dragStart);
1036
        },
1037
 
1038
        getNewPosition : function () {
1039
            var base = this,
1040
                newPosition = base.closestItem();
1041
 
1042
            if (newPosition > base.maximumItem) {
1043
                base.currentItem = base.maximumItem;
1044
                newPosition  = base.maximumItem;
1045
            } else if (base.newPosX >= 0) {
1046
                newPosition = 0;
1047
                base.currentItem = 0;
1048
            }
1049
            return newPosition;
1050
        },
1051
        closestItem : function () {
1052
            var base = this,
1053
                array = base.options.scrollPerPage === true ? base.pagesInArray : base.positionsInArray,
1054
                goal = base.newPosX,
1055
                closest = null;
1056
 
1057
            $.each(array, function (i, v) {
1058
                if (goal - (base.itemWidth / 20) > array[i + 1] && goal - (base.itemWidth / 20) < v && base.moveDirection() === "left") {
1059
                    closest = v;
1060
                    if (base.options.scrollPerPage === true) {
1061
                        base.currentItem = $.inArray(closest, base.positionsInArray);
1062
                    } else {
1063
                        base.currentItem = i;
1064
                    }
1065
                } else if (goal + (base.itemWidth / 20) < v && goal + (base.itemWidth / 20) > (array[i + 1] || array[i] - base.itemWidth) && base.moveDirection() === "right") {
1066
                    if (base.options.scrollPerPage === true) {
1067
                        closest = array[i + 1] || array[array.length - 1];
1068
                        base.currentItem = $.inArray(closest, base.positionsInArray);
1069
                    } else {
1070
                        closest = array[i + 1];
1071
                        base.currentItem = i + 1;
1072
                    }
1073
                }
1074
            });
1075
            return base.currentItem;
1076
        },
1077
 
1078
        moveDirection : function () {
1079
            var base = this,
1080
                direction;
1081
            if (base.newRelativeX < 0) {
1082
                direction = "right";
1083
                base.playDirection = "next";
1084
            } else {
1085
                direction = "left";
1086
                base.playDirection = "prev";
1087
            }
1088
            return direction;
1089
        },
1090
 
1091
        customEvents : function () {
1092
            /*jslint unparam: true*/
1093
            var base = this;
1094
            base.$elem.on("owl.next", function () {
1095
                base.next();
1096
            });
1097
            base.$elem.on("owl.prev", function () {
1098
                base.prev();
1099
            });
1100
            base.$elem.on("owl.play", function (event, speed) {
1101
                base.options.autoPlay = speed;
1102
                base.play();
1103
                base.hoverStatus = "play";
1104
            });
1105
            base.$elem.on("owl.stop", function () {
1106
                base.stop();
1107
                base.hoverStatus = "stop";
1108
            });
1109
            base.$elem.on("owl.goTo", function (event, item) {
1110
                base.goTo(item);
1111
            });
1112
            base.$elem.on("owl.jumpTo", function (event, item) {
1113
                base.jumpTo(item);
1114
            });
1115
        },
1116
 
1117
        stopOnHover : function () {
1118
            var base = this;
1119
            if (base.options.stopOnHover === true && base.browser.isTouch !== true && base.options.autoPlay !== false) {
1120
                base.$elem.on("mouseover", function () {
1121
                    base.stop();
1122
                });
1123
                base.$elem.on("mouseout", function () {
1124
                    if (base.hoverStatus !== "stop") {
1125
                        base.play();
1126
                    }
1127
                });
1128
            }
1129
        },
1130
 
1131
        lazyLoad : function () {
1132
            var base = this,
1133
                i,
1134
                $item,
1135
                itemNumber,
1136
                $lazyImg,
1137
                follow;
1138
 
1139
            if (base.options.lazyLoad === false) {
1140
                return false;
1141
            }
1142
            for (i = 0; i < base.itemsAmount; i += 1) {
1143
                $item = $(base.$owlItems[i]);
1144
 
1145
                if ($item.data("owl-loaded") === "loaded") {
1146
                    continue;
1147
                }
1148
 
1149
                itemNumber = $item.data("owl-item");
1150
                $lazyImg = $item.find(".lazyOwl");
1151
 
1152
                if (typeof $lazyImg.data("src") !== "string") {
1153
                    $item.data("owl-loaded", "loaded");
1154
                    continue;
1155
                }
1156
                if ($item.data("owl-loaded") === undefined) {
1157
                    $lazyImg.hide();
1158
                    $item.addClass("loading").data("owl-loaded", "checked");
1159
                }
1160
                if (base.options.lazyFollow === true) {
1161
                    follow = itemNumber >= base.currentItem;
1162
                } else {
1163
                    follow = true;
1164
                }
1165
                if (follow && itemNumber < base.currentItem + base.options.items && $lazyImg.length) {
1166
                    base.lazyPreload($item, $lazyImg);
1167
                }
1168
            }
1169
        },
1170
 
1171
        lazyPreload : function ($item, $lazyImg) {
1172
            var base = this,
1173
                iterations = 0,
1174
                isBackgroundImg;
1175
 
1176
            if ($lazyImg.prop("tagName") === "DIV") {
1177
                $lazyImg.css("background-image", "url(" + $lazyImg.data("src") + ")");
1178
                isBackgroundImg = true;
1179
            } else {
1180
                $lazyImg[0].src = $lazyImg.data("src");
1181
            }
1182
 
1183
            function showImage() {
1184
                $item.data("owl-loaded", "loaded").removeClass("loading");
1185
                $lazyImg.removeAttr("data-src");
1186
                if (base.options.lazyEffect === "fade") {
1187
                    $lazyImg.fadeIn(400);
1188
                } else {
1189
                    $lazyImg.show();
1190
                }
1191
                if (typeof base.options.afterLazyLoad === "function") {
1192
                    base.options.afterLazyLoad.apply(this, [base.$elem]);
1193
                }
1194
            }
1195
 
1196
            function checkLazyImage() {
1197
                iterations += 1;
1198
                if (base.completeImg($lazyImg.get(0)) || isBackgroundImg === true) {
1199
                    showImage();
1200
                } else if (iterations <= 100) {//if image loads in less than 10 seconds
1201
                    window.setTimeout(checkLazyImage, 100);
1202
                } else {
1203
                    showImage();
1204
                }
1205
            }
1206
 
1207
            checkLazyImage();
1208
        },
1209
 
1210
        autoHeight : function () {
1211
            var base = this,
1212
                $currentimg = $(base.$owlItems[base.currentItem]).find("img"),
1213
                iterations;
1214
 
1215
            function addHeight() {
1216
                var $currentItem = $(base.$owlItems[base.currentItem]).height();
1217
                base.wrapperOuter.css("height", $currentItem + "px");
1218
                if (!base.wrapperOuter.hasClass("autoHeight")) {
1219
                    window.setTimeout(function () {
1220
                        base.wrapperOuter.addClass("autoHeight");
1221
                    }, 0);
1222
                }
1223
            }
1224
 
1225
            function checkImage() {
1226
                iterations += 1;
1227
                if (base.completeImg($currentimg.get(0))) {
1228
                    addHeight();
1229
                } else if (iterations <= 100) { //if image loads in less than 10 seconds
1230
                    window.setTimeout(checkImage, 100);
1231
                } else {
1232
                    base.wrapperOuter.css("height", ""); //Else remove height attribute
1233
                }
1234
            }
1235
 
1236
            if ($currentimg.get(0) !== undefined) {
1237
                iterations = 0;
1238
                checkImage();
1239
            } else {
1240
                addHeight();
1241
            }
1242
        },
1243
 
1244
        completeImg : function (img) {
1245
            var naturalWidthType;
1246
 
1247
            if (!img.complete) {
1248
                return false;
1249
            }
1250
            naturalWidthType = typeof img.naturalWidth;
1251
            if (naturalWidthType !== "undefined" && img.naturalWidth === 0) {
1252
                return false;
1253
            }
1254
            return true;
1255
        },
1256
 
1257
        onVisibleItems : function () {
1258
            var base = this,
1259
                i;
1260
 
1261
            if (base.options.addClassActive === true) {
1262
                base.$owlItems.removeClass("active");
1263
            }
1264
            base.visibleItems = [];
1265
            for (i = base.currentItem; i < base.currentItem + base.options.items; i += 1) {
1266
                base.visibleItems.push(i);
1267
 
1268
                if (base.options.addClassActive === true) {
1269
                    $(base.$owlItems[i]).addClass("active");
1270
                }
1271
            }
1272
            base.owl.visibleItems = base.visibleItems;
1273
        },
1274
 
1275
        transitionTypes : function (className) {
1276
            var base = this;
1277
            //Currently available: "fade", "backSlide", "goDown", "fadeUp"
1278
            base.outClass = "owl-" + className + "-out";
1279
            base.inClass = "owl-" + className + "-in";
1280
        },
1281
 
1282
        singleItemTransition : function () {
1283
            var base = this,
1284
                outClass = base.outClass,
1285
                inClass = base.inClass,
1286
                $currentItem = base.$owlItems.eq(base.currentItem),
1287
                $prevItem = base.$owlItems.eq(base.prevItem),
1288
                prevPos = Math.abs(base.positionsInArray[base.currentItem]) + base.positionsInArray[base.prevItem],
1289
                origin = Math.abs(base.positionsInArray[base.currentItem]) + base.itemWidth / 2,
1290
                animEnd = 'webkitAnimationEnd oAnimationEnd MSAnimationEnd animationend';
1291
 
1292
            base.isTransition = true;
1293
 
1294
            base.$owlWrapper
1295
                .addClass('owl-origin')
1296
                .css({
1297
                    "-webkit-transform-origin" : origin + "px",
1298
                    "-moz-perspective-origin" : origin + "px",
1299
                    "perspective-origin" : origin + "px"
1300
                });
1301
            function transStyles(prevPos) {
1302
                return {
1303
                    "position" : "relative",
1304
                    "left" : prevPos + "px"
1305
                };
1306
            }
1307
 
1308
            $prevItem
1309
                .css(transStyles(prevPos, 10))
1310
                .addClass(outClass)
1311
                .on(animEnd, function () {
1312
                    base.endPrev = true;
1313
                    $prevItem.off(animEnd);
1314
                    base.clearTransStyle($prevItem, outClass);
1315
                });
1316
 
1317
            $currentItem
1318
                .addClass(inClass)
1319
                .on(animEnd, function () {
1320
                    base.endCurrent = true;
1321
                    $currentItem.off(animEnd);
1322
                    base.clearTransStyle($currentItem, inClass);
1323
                });
1324
        },
1325
 
1326
        clearTransStyle : function (item, classToRemove) {
1327
            var base = this;
1328
            item.css({
1329
                "position" : "",
1330
                "left" : ""
1331
            }).removeClass(classToRemove);
1332
 
1333
            if (base.endPrev && base.endCurrent) {
1334
                base.$owlWrapper.removeClass('owl-origin');
1335
                base.endPrev = false;
1336
                base.endCurrent = false;
1337
                base.isTransition = false;
1338
            }
1339
        },
1340
 
1341
        owlStatus : function () {
1342
            var base = this;
1343
            base.owl = {
1344
                "userOptions"   : base.userOptions,
1345
                "baseElement"   : base.$elem,
1346
                "userItems"     : base.$userItems,
1347
                "owlItems"      : base.$owlItems,
1348
                "currentItem"   : base.currentItem,
1349
                "prevItem"      : base.prevItem,
1350
                "visibleItems"  : base.visibleItems,
1351
                "isTouch"       : base.browser.isTouch,
1352
                "browser"       : base.browser,
1353
                "dragDirection" : base.dragDirection
1354
            };
1355
        },
1356
 
1357
        clearEvents : function () {
1358
            var base = this;
1359
            base.$elem.off(".owl owl mousedown.disableTextSelect");
1360
            $(document).off(".owl owl");
1361
            $(window).off("resize", base.resizer);
1362
        },
1363
 
1364
        unWrap : function () {
1365
            var base = this;
1366
            if (base.$elem.children().length !== 0) {
1367
                base.$owlWrapper.unwrap();
1368
                base.$userItems.unwrap().unwrap();
1369
                if (base.owlControls) {
1370
                    base.owlControls.remove();
1371
                }
1372
            }
1373
            base.clearEvents();
1374
            base.$elem
1375
                .attr("style", base.$elem.data("owl-originalStyles") || "")
1376
                .attr("class", base.$elem.data("owl-originalClasses"));
1377
        },
1378
 
1379
        destroy : function () {
1380
            var base = this;
1381
            base.stop();
1382
            window.clearInterval(base.checkVisible);
1383
            base.unWrap();
1384
            base.$elem.removeData();
1385
        },
1386
 
1387
        reinit : function (newOptions) {
1388
            var base = this,
1389
                options = $.extend({}, base.userOptions, newOptions);
1390
            base.unWrap();
1391
            base.init(options, base.$elem);
1392
        },
1393
 
1394
        addItem : function (htmlString, targetPosition) {
1395
            var base = this,
1396
                position;
1397
 
1398
            if (!htmlString) {return false; }
1399
 
1400
            if (base.$elem.children().length === 0) {
1401
                base.$elem.append(htmlString);
1402
                base.setVars();
1403
                return false;
1404
            }
1405
            base.unWrap();
1406
            if (targetPosition === undefined || targetPosition === -1) {
1407
                position = -1;
1408
            } else {
1409
                position = targetPosition;
1410
            }
1411
            if (position >= base.$userItems.length || position === -1) {
1412
                base.$userItems.eq(-1).after(htmlString);
1413
            } else {
1414
                base.$userItems.eq(position).before(htmlString);
1415
            }
1416
 
1417
            base.setVars();
1418
        },
1419
 
1420
        removeItem : function (targetPosition) {
1421
            var base = this,
1422
                position;
1423
 
1424
            if (base.$elem.children().length === 0) {
1425
                return false;
1426
            }
1427
            if (targetPosition === undefined || targetPosition === -1) {
1428
                position = -1;
1429
            } else {
1430
                position = targetPosition;
1431
            }
1432
 
1433
            base.unWrap();
1434
            base.$userItems.eq(position).remove();
1435
            base.setVars();
1436
        }
1437
 
1438
    };
1439
 
1440
    $.fn.owlCarousel = function (options) {
1441
        return this.each(function () {
1442
            if ($(this).data("owl-init") === true) {
1443
                return false;
1444
            }
1445
            $(this).data("owl-init", true);
1446
            var carousel = Object.create(Carousel);
1447
            carousel.init(options, this);
1448
            $.data(this, "owlCarousel", carousel);
1449
        });
1450
    };
1451
 
1452
    $.fn.owlCarousel.options = {
1453
 
1454
        items : 5,
1455
        itemsCustom : false,
1456
        itemsDesktop : [1199, 4],
1457
        itemsDesktopSmall : [979, 3],
1458
        itemsTablet : [768, 2],
1459
        itemsTabletSmall : false,
1460
        itemsMobile : [479, 1],
1461
        singleItem : false,
1462
        itemsScaleUp : false,
1463
 
1464
        slideSpeed : 200,
1465
        paginationSpeed : 800,
1466
        rewindSpeed : 1000,
1467
 
1468
        autoPlay : false,
1469
        stopOnHover : false,
1470
 
1471
        navigation : false,
1472
        navigationText : ["prev", "next"],
1473
        rewindNav : true,
1474
        scrollPerPage : false,
1475
 
1476
        pagination : true,
1477
        paginationNumbers : false,
1478
 
1479
        responsive : true,
1480
        responsiveRefreshRate : 200,
1481
        responsiveBaseWidth : window,
1482
 
1483
        baseClass : "owl-carousel",
1484
        theme : "owl-theme",
1485
 
1486
        lazyLoad : false,
1487
        lazyFollow : true,
1488
        lazyEffect : "fade",
1489
 
1490
        autoHeight : false,
1491
 
1492
        jsonPath : false,
1493
        jsonSuccess : false,
1494
 
1495
        dragBeforeAnimFinish : true,
1496
        mouseDrag : true,
1497
        touchDrag : true,
1498
 
1499
        addClassActive : false,
1500
        transitionStyle : false,
1501
 
1502
        beforeUpdate : false,
1503
        afterUpdate : false,
1504
        beforeInit : false,
1505
        afterInit : false,
1506
        beforeMove : false,
1507
        afterMove : false,
1508
        afterAction : false,
1509
        startDragging : false,
1510
        afterLazyLoad: false
1511
    };
1512
}(jQuery, window, document));