function initOwlCarousel(carousel) {
            var
                aliaces = ['-', '-sm-', '-md-', '-lg-', '-xl-', '-xxl-'],
                values = [0, 576, 768, 992, 1200, 1600],
                responsive = {};

            for (var j = 0; j < values.length; j++) {
                responsive[values[j]] = {};
                for (var k = j; k >= -1; k--) {
                    if (!responsive[values[j]]['items'] && carousel.attr('data' + aliaces[k] + 'items')) {
                        responsive[values[j]]['items'] = k < 0 ? 1 : parseInt(carousel.attr('data' + aliaces[k] + 'items'), 10);
                    }
                    if (!responsive[values[j]]['stagePadding'] && responsive[values[j]]['stagePadding'] !== 0 && carousel.attr('data' + aliaces[k] + 'stage-padding')) {
                        responsive[values[j]]['stagePadding'] = k < 0 ? 0 : parseInt(carousel.attr('data' + aliaces[k] + 'stage-padding'), 10);
                    }
                    if (!responsive[values[j]]['margin'] && responsive[values[j]]['margin'] !== 0 && carousel.attr('data' + aliaces[k] + 'margin')) {
                        responsive[values[j]]['margin'] = k < 0 ? 30 : parseInt(carousel.attr('data' + aliaces[k] + 'margin'), 10);
                    }
                }
            }

            // Enable custom pagination
            if (carousel.attr('data-dots-custom')) {
                carousel.on('initialized.owl.carousel', function(event) {
                    var
                        carousel = $(event.currentTarget),
                        customPag = $(carousel.attr('data-dots-custom')),
                        active = 0;

                    if (carousel.attr('data-active')) {
                        active = parseInt(carousel.attr('data-active'), 10);
                    }

                    carousel.trigger('to.owl.carousel', [active, 300, true]);
                    customPag.find('[data-owl-item="' + active + '"]').addClass('active');

                    customPag.find('[data-owl-item]').on('click', function(event) {
                        event.preventDefault();
                        carousel.trigger('to.owl.carousel', [parseInt(this.getAttribute('data-owl-item'), 10), 300, true]);
                    });

                    carousel.on('translate.owl.carousel', function(event) {
                        customPag.find('.active').removeClass('active');
                        customPag.find('[data-owl-item="' + event.item.index + '"]').addClass('active')
                    });
                });
            }

            // Initialize lightgallery items in cloned owl items
            carousel.on('initialized.owl.carousel', function() {
                initLightGalleryItem(carousel.find('[data-lightgallery="item"]'), 'lightGallery-in-carousel');
            });

            carousel.owlCarousel({
                autoplay: isNoviBuilder ? false : carousel.attr('data-autoplay') !== 'false',
                autoplayTimeout: carousel.attr("data-autoplay") ? Number(carousel.attr("data-autoplay")) : 7000,
                autoplayHoverPause: true,
                loop: isNoviBuilder ? false : carousel.attr('data-loop') !== 'false',
                items: 1,
                center: carousel.attr('data-center') === 'true',
                dotsContainer: carousel.attr('data-pagination-class') || false,
                navContainer: carousel.attr('data-navigation-class') || false,
                mouseDrag: isNoviBuilder ? false : carousel.attr('data-mouse-drag') !== 'false',
                nav: carousel.attr('data-nav') === 'true',
                dots: carousel.attr('data-dots') === 'true',
                dotsEach: carousel.attr('data-dots-each') ? parseInt(carousel.attr('data-dots-each'), 10) : false,
                animateIn: carousel.attr('data-animation-in') ? carousel.attr('data-animation-in') : false,
                animateOut: carousel.attr('data-animation-out') ? carousel.attr('data-animation-out') : false,
                responsive: responsive,
                navText: carousel.attr('data-nav-text') ? $.parseJSON(carousel.attr('data-nav-text')) : [],
                navClass: carousel.attr('data-nav-class') ? $.parseJSON(carousel.attr('data-nav-class')) : ['owl-prev', 'owl-next']
            });
        }
/**
         * @desc Initialize owl carousel plugin
         * @param {object} carousel - carousel jQuery object
         */
@desc Initialize owl carousel plugin
@param {object} carousel - carousel jQuery object
@desc Initialize owl carousel plugin @param { object } carousel - carousel jQuery object
function initOwlCarousel(carousel) {
            var
                aliaces = ['-', '-sm-', '-md-', '-lg-', '-xl-', '-xxl-'],
                values = [0, 576, 768, 992, 1200, 1600],
                responsive = {};
            for (var j = 0; j < values.length; j++) {
                responsive[values[j]] = {};
                for (var k = j; k >= -1; k--) {
                    if (!responsive[values[j]]['items'] && carousel.attr('data' + aliaces[k] + 'items')) {
                        responsive[values[j]]['items'] = k < 0 ? 1 : parseInt(carousel.attr('data' + aliaces[k] + 'items'), 10);
                    }
                    if (!responsive[values[j]]['stagePadding'] && responsive[values[j]]['stagePadding'] !== 0 && carousel.attr('data' + aliaces[k] + 'stage-padding')) {
                        responsive[values[j]]['stagePadding'] = k < 0 ? 0 : parseInt(carousel.attr('data' + aliaces[k] + 'stage-padding'), 10);
                    }
                    if (!responsive[values[j]]['margin'] && responsive[values[j]]['margin'] !== 0 && carousel.attr('data' + aliaces[k] + 'margin')) {
                        responsive[values[j]]['margin'] = k < 0 ? 30 : parseInt(carousel.attr('data' + aliaces[k] + 'margin'), 10);
                    }
                }
            }
            if (carousel.attr('data-dots-custom')) {
                carousel.on('initialized.owl.carousel', function(event) {
                    var
                        carousel = $(event.currentTarget),
                        customPag = $(carousel.attr('data-dots-custom')),
                        active = 0;
                    if (carousel.attr('data-active')) {
                        active = parseInt(carousel.attr('data-active'), 10);
                    }
                    carousel.trigger('to.owl.carousel', [active, 300, true]);
                    customPag.find('[data-owl-item="' + active + '"]').addClass('active');
                    customPag.find('[data-owl-item]').on('click', function(event) {
                        event.preventDefault();
                        carousel.trigger('to.owl.carousel', [parseInt(this.getAttribute('data-owl-item'), 10), 300, true]);
                    });
                    carousel.on('translate.owl.carousel', function(event) {
                        customPag.find('.active').removeClass('active');
                        customPag.find('[data-owl-item="' + event.item.index + '"]').addClass('active')
                    });
                });
            }
            carousel.on('initialized.owl.carousel', function() {
                initLightGalleryItem(carousel.find('[data-lightgallery="item"]'), 'lightGallery-in-carousel');
            });
            carousel.owlCarousel({
                autoplay: isNoviBuilder ? false : carousel.attr('data-autoplay') !== 'false',
                autoplayTimeout: carousel.attr("data-autoplay") ? Number(carousel.attr("data-autoplay")) : 7000,
                autoplayHoverPause: true,
                loop: isNoviBuilder ? false : carousel.attr('data-loop') !== 'false',
                items: 1,
                center: carousel.attr('data-center') === 'true',
                dotsContainer: carousel.attr('data-pagination-class') || false,
                navContainer: carousel.attr('data-navigation-class') || false,
                mouseDrag: isNoviBuilder ? false : carousel.attr('data-mouse-drag') !== 'false',
                nav: carousel.attr('data-nav') === 'true',
                dots: carousel.attr('data-dots') === 'true',
                dotsEach: carousel.attr('data-dots-each') ? parseInt(carousel.attr('data-dots-each'), 10) : false,
                animateIn: carousel.attr('data-animation-in') ? carousel.attr('data-animation-in') : false,
                animateOut: carousel.attr('data-animation-out') ? carousel.attr('data-animation-out') : false,
                responsive: responsive,
                navText: carousel.attr('data-nav-text') ? $.parseJSON(carousel.attr('data-nav-text')) : [],
                navClass: carousel.attr('data-nav-class') ? $.parseJSON(carousel.attr('data-nav-class')) : ['owl-prev', 'owl-next']
            });
        }
function initOwlCarousel ( carousel ) { var aliaces = [ '-' , '-sm-' , '-md-' , '-lg-' , '-xl-' , '-xxl-' ] , values = [ 0 , 576 , 768 , 992 , 1200 , 1600 ] , responsive = { } ; for ( var j = 0 ; j < values . length ; j ++ ) { responsive [ values [ j ] ] = { } ; for ( var k = j ; k >= - 1 ; k -- ) { if ( ! responsive [ values [ j ] ] [ 'items' ] && carousel . attr ( 'data' + aliaces [ k ] + 'items' ) ) { responsive [ values [ j ] ] [ 'items' ] = k < 0 ? 1 : parseInt ( carousel . attr ( 'data' + aliaces [ k ] + 'items' ) , 10 ) ; } if ( ! responsive [ values [ j ] ] [ 'stagePadding' ] && responsive [ values [ j ] ] [ 'stagePadding' ] !== 0 && carousel . attr ( 'data' + aliaces [ k ] + 'stage-padding' ) ) { responsive [ values [ j ] ] [ 'stagePadding' ] = k < 0 ? 0 : parseInt ( carousel . attr ( 'data' + aliaces [ k ] + 'stage-padding' ) , 10 ) ; } if ( ! responsive [ values [ j ] ] [ 'margin' ] && responsive [ values [ j ] ] [ 'margin' ] !== 0 && carousel . attr ( 'data' + aliaces [ k ] + 'margin' ) ) { responsive [ values [ j ] ] [ 'margin' ] = k < 0 ? 30 : parseInt ( carousel . attr ( 'data' + aliaces [ k ] + 'margin' ) , 10 ) ; } } } if ( carousel . attr ( 'data-dots-custom' ) ) { carousel . on ( 'initialized.owl.carousel' , function ( event ) { var carousel = $ ( event . currentTarget ) , customPag = $ ( carousel . attr ( 'data-dots-custom' ) ) , active = 0 ; if ( carousel . attr ( 'data-active' ) ) { active = parseInt ( carousel . attr ( 'data-active' ) , 10 ) ; } carousel . trigger ( 'to.owl.carousel' , [ active , 300 , true ] ) ; customPag . find ( '[data-owl-item="' + active + '"]' ) . addClass ( 'active' ) ; customPag . find ( '[data-owl-item]' ) . on ( 'click' , function ( event ) { event . preventDefault ( ) ; carousel . trigger ( 'to.owl.carousel' , [ parseInt ( this . getAttribute ( 'data-owl-item' ) , 10 ) , 300 , true ] ) ; } ) ; carousel . on ( 'translate.owl.carousel' , function ( event ) { customPag . find ( '.active' ) . removeClass ( 'active' ) ; customPag . find ( '[data-owl-item="' + event . item . index + '"]' ) . addClass ( 'active' ) } ) ; } ) ; } carousel . on ( 'initialized.owl.carousel' , function ( ) { initLightGalleryItem ( carousel . find ( '[data-lightgallery="item"]' ) , 'lightGallery-in-carousel' ) ; } ) ; carousel . owlCarousel ( { autoplay : isNoviBuilder ? false : carousel . attr ( 'data-autoplay' ) !== 'false' , autoplayTimeout : carousel . attr ( "data-autoplay" ) ? Number ( carousel . attr ( "data-autoplay" ) ) : 7000 , autoplayHoverPause : true , loop : isNoviBuilder ? false : carousel . attr ( 'data-loop' ) !== 'false' , items : 1 , center : carousel . attr ( 'data-center' ) === 'true' , dotsContainer : carousel . attr ( 'data-pagination-class' ) || false , navContainer : carousel . attr ( 'data-navigation-class' ) || false , mouseDrag : isNoviBuilder ? false : carousel . attr ( 'data-mouse-drag' ) !== 'false' , nav : carousel . attr ( 'data-nav' ) === 'true' , dots : carousel . attr ( 'data-dots' ) === 'true' , dotsEach : carousel . attr ( 'data-dots-each' ) ? parseInt ( carousel . attr ( 'data-dots-each' ) , 10 ) : false , animateIn : carousel . attr ( 'data-animation-in' ) ? carousel . attr ( 'data-animation-in' ) : false , animateOut : carousel . attr ( 'data-animation-out' ) ? carousel . attr ( 'data-animation-out' ) : false , responsive : responsive , navText : carousel . attr ( 'data-nav-text' ) ? $ . parseJSON ( carousel . attr ( 'data-nav-text' ) ) : [ ] , navClass : carousel . attr ( 'data-nav-class' ) ? $ . parseJSON ( carousel . attr ( 'data-nav-class' ) ) : [ 'owl-prev' , 'owl-next' ] } ) ; }
@desc Initialize owl carousel plugin
 @param {object} carousel - carousel jQuery object
@desc Initialize owl carousel plugin @param { object } carousel - carousel jQuery object
// Enable custom pagination // Initialize lightgallery items in cloned owl items