1(function($) { 2 3 $.fn.buildSimpleGalleries = function() { 4 $('.gem-simple-gallery:not(.activated)', this).each(function() { 5 6 var $galleryElement = $(this); 7 $galleryElement.addClass('activated'); 8 9 var $thumbItems = $('.gem-gallery-item', $galleryElement); 10 11 var $galleryItemsWrap = $('<div class="gem-gallery-items-carousel-wrap"/>') 12 .appendTo($galleryElement); 13 var $galleryItemsCarousel = $('<div class="gem-gallery-items-carousel"/>') 14 .appendTo($galleryItemsWrap); 15 var $galleryItemsNavigation = $('<div class="gem-gallery-items-navigation"/>') 16 .appendTo($galleryItemsWrap); 17 var $galleryItemsPrev = $('<a href="#" class="gem-prev gem-gallery-items-prev" aria-label="arrow-left"></a>') 18 .appendTo($galleryItemsNavigation); 19 var $galleryItemsNext = $('<a href="#" class="gem-next gem-gallery-items-next" aria-label="arrow-right"></a>') 20 .appendTo($galleryItemsNavigation); 21 $thumbItems.appendTo($galleryItemsCarousel); 22 $('a', $galleryItemsCarousel).addClass('fancy-gallery'); 23 $galleryItemsCarousel.initGalleryFancybox(); 24 }); 25 } 26 27 $.fn.updateGalleries = function() { 28 $('.gem-gallery', this).each(updateGallery); 29 } 30 31 $.fn.updateSimpleGalleries = function() { 32 $('.gem-simple-gallery', this).each(updateSimpleGallery); 33 } 34 35 36 $(function() { 37 38 function gallery_images_loaded($box, image_selector, callback) { 39 function check_image_loaded(img) { 40 return img.getAttribute('loading') === 'lazy' || img.getAttribute('src') === '' || (img.complete && img.naturalWidth !== undefined && img.naturalWidth !== 0); 41 } 42 43 var $images = $(image_selector, $box).filter(function() { 44 return !check_image_loaded(this); 45 }), 46 images_count = $images.length; 47 48 if (images_count == 0) { 49 return callback(); 50 } 51 52 if (window.gemBrowser.name == 'ie' && !isNaN(parseInt(window.gemBrowser.version)) && parseInt(window.gemBrowser.version) <= 10) { 53 function image_load_event() { 54 images_count--; 55 if (images_count == 0) { 56 callback(); 57 } 58 } 59 60 $images.each(function() { 61 if (check_image_loaded(this)) { 62 return; 63 } 64 65 var proxyImage = new Image(); 66 proxyImage.addEventListener( 'load', image_load_event ); 67 proxyImage.addEventListener( 'error', image_load_event ); 68 proxyImage.src = this.src; 69 }); 70 return; 71 } 72 73 $images.on('load error', function() { 74 images_count--; 75 if (images_count == 0) { 76 callback(); 77 } 78 }); 79 } 80 81 function init_circular_overlay($gallery, $set) { 82 if (!$gallery.hasClass('hover-circular')) { 83 return; 84 } 85 86 $('.gallery-item', $set).on('mouseenter touchstart', function() { 87 var overlayWidth = $('.overlay', this).width(), 88 overlayHeight = $('.overlay', this).height(), 89 $overlayCircle = $('.overlay-circle', this), 90 maxSize = 0; 91 92 if (overlayWidth > overlayHeight) { 93 maxSize = overlayWidth; 94 $overlayCircle.height(overlayWidth) 95 } else { 96 maxSize = overlayHeight; 97 $overlayCircle.width(overlayHeight); 98 } 99 maxSize += overlayWidth * 0.3; 100 101 $overlayCircle.css({ 102 marginLeft: -maxSize / 2, 103 marginTop: -maxSize / 2 104 }); 105 }); 106 } 107 108 function initGalleryGrid() { 109 var layoutMode = 'masonry-custom'; 110 if ($(this).hasClass('metro')) { 111 layoutMode = 'metro' 112 } 113 114 if (window.tgpLazyItems !== undefined) { 115 var isShowed = window.tgpLazyItems.checkGroupShowed(this, function (node) { 116 initGalleryGrid.call(node); 117 }); 118 if (!isShowed) { 119 return; 120 } 121 } 122 123 var $gallery = $(this); 124 var $set = $('.gallery-set', this); 125 126 gallery_images_loaded($set, '.image-wrap img', function () { 127 $gallery.closest('.gallery-preloader-wrapper').prev('.preloader').remove(); 128 129 init_circular_overlay($gallery, $set); 130 131 if ($gallery.hasClass('loading-animation')) { 132 var itemsAnimations = $gallery.itemsAnimations({ 133 itemSelector: '.gallery-item', 134 scrollMonitor: true 135 }); 136 } 137 138 var init_gallery = true; 139 140 if (!$gallery.hasClass('disable-isotope')) { 141 let size_container = $('.portfolio-item-size-container .gallery-item', $gallery); 142 let active_filter = $gallery.data('filter'); 143 let filter = ''; 144 if (active_filter.length) { 145 active_filter.forEach(function (item, index) { 146 if (index != 0) { 147 filter += ', '; 148 } 149 filter += '.' + item; 150 }); 151 } else { 152 filter = '*'; 153 } 154 $set 155 .on('arrangeComplete', function (event, filteredItems) { 156 if (init_gallery) { 157 init_gallery = false;
158 159 var items = []; 160 filteredItems.forEach(function (item) { 161 items.push(item.element); 162 }); 163 164 if ($gallery.hasClass('loading-animation')) { 165 itemsAnimations.show($(items)); 166 } 167 } 168 }).on('layoutComplete', function (event, laidOutItems) { 169 let items = []; 170 laidOutItems.forEach(function (item) { 171 items.push(item.element); 172 }); 173 174 if (!init_gallery && $gallery.hasClass('loading-animation')) { 175 itemsAnimations.reinitItems($(items)); 176 itemsAnimations.show($(items)); 177 } 178 }) 179 .thegem_isotope({ 180 itemSelector: '.gallery-item', 181 itemImageWrapperSelector: '.image-wrap', 182 fixHeightDoubleItems: $gallery.hasClass('gallery-style-justified'), 183 layoutMode: layoutMode, 184 'masonry-custom': { 185 columnWidth: (size_container.length > 0) ? size_container[0] : '.gallery-item:not(.double-item)' 186 }, 187 filter: filter 188 }); 189 } else { 190 if ($gallery.hasClass('loading-animation')) { 191 $gallery.itemsAnimations('instance').show($('.gallery-item', $gallery)); 192 } 193 } 194 }); 195 196 if ($('.portfolio-filters', $gallery).length) { 197 $('.portfolio-filters, .portfolio-filters-resp ul li', $gallery).on('click', 'a', function (e) { 198 let thisFilter = $(this).data('filter'); 199 let filtersPanel = $(this).parents('.portfolio-top-panel-left'); 200 let isMultiple = filtersPanel.hasClass('multiple'); 201 202 if (thisFilter) { 203 e.preventDefault(); 204 } else { 205 return; 206 } 207 208 let filtersArr = $gallery.data('gallery-filter') ? $gallery.data('gallery-filter') : []; 209 210 if (thisFilter === '*') { 211 filtersArr = []; 212 filtersPanel.find('a').removeClass('active'); 213 $(this).addClass('active'); 214 } else if ($(this).hasClass('active')) { 215 $(this).removeClass('active'); 216 if (filtersArr.includes(thisFilter)) { 217 const index = filtersArr.indexOf(thisFilter); 218 if (index > -1) { 219 filtersArr.splice(index, 1); 220 } 221 if (filtersArr.length === 0) { 222 filtersPanel.find('a.all').addClass('active'); 223 } 224 } 225 } else { 226 if (!isMultiple) { 227 filtersPanel.find('a').removeClass('active'); 228 filtersArr = []; 229 } else { 230 filtersPanel.find('a.all').removeClass('active'); 231 } 232 $(this).addClass('active'); 233 filtersArr.push(thisFilter); 234 } 235 236 $gallery.data('gallery-filter', filtersArr); 237 238 filterGallery($gallery, filtersArr); 239 240 if ($('.portfolio-filters-resp', $gallery).length > 0 && typeof $.fn.dlmenu === 'function') { 241 $('.portfolio-filters-resp', $gallery).dlmenu('closeMenu'); 242 } 243 244 return false; 245 }); 246 247 if (typeof $.fn.dlmenu === 'function') { 248 $('.portfolio-filters-resp', $gallery).dlmenu({ 249 animationClasses: { 250 classin: 'dl-animate-in', 251 classout: 'dl-animate-out' 252 } 253 }); 254 } 255 256 initFiltersMore($gallery); 257 } 258 259 if ($set.closest('.gem_tab').size() > 0) { 260 $set.closest('.gem_tab').bind('tab-update', function () { 261 if (!$gallery.hasClass('disable-isotope')) { 262 $set.thegem_isotope('layout'); 263 } 264 }); 265 } 266 $(document).on('show.vc.tab', '[data-vc-tabs]', function () { 267 var $tab = $(this).data('vc.tabs').getTarget(); 268 if ($tab.find($set).length && !$gallery.hasClass('disable-isotope')) { 269 $set.thegem_isotope('layout'); 270 } 271 }); 272 } 273 274 function filterGallery($gallery, filtersArr) { 275 276 let uid = $gallery.data('uid'), 277 queryParams = new URLSearchParams(window.location.search), 278 delArr = []; 279 for (let p of queryParams) { 280 if (p[0].includes(uid)) {
281 delArr.push(p[0]); 282 } 283 } 284 for (let del of delArr) { 285 queryParams.delete(del); 286 } 287 288 if ($gallery.hasClass('loading-animation') && $gallery.itemsAnimations('instance').getAnimationName() != 'disabled') { 289 $('.gallery-item', $gallery).addClass('item-animations-not-inited'); 290 } else { 291 $('.gallery-item', $gallery).removeClass('item-animations-not-inited'); 292 } 293 294 if (!$gallery.hasClass('disable-isotope')) { 295 296 let $set = $('.gallery-set', $gallery); 297 298 if (filtersArr.length) { 299 queryParams.set('grid_' + uid + '-filter', filtersArr); 300 let filter = ''; 301 filtersArr.forEach(function (item, index) { 302 if (index != 0) { 303 filter += ', '; 304 } 305 filter += '.' + item; 306 }); 307 $set.thegem_isotope({filter: filter}); 308 } else { 309 $set.thegem_isotope({filter: '*'}); 310 } 311 } else { 312 313 if (filtersArr.length === 0) { 314 $gallery.find('.gallery-item').show(); 315 } else { 316 queryParams.set('grid_' + uid + '-filter', filtersArr); 317 318 $gallery.find('.gallery-item:not(.size-item)').hide(); 319 320 filtersArr.forEach(function (item, index) { 321 $gallery.find('.gallery-item.' + item).show(); 322 }); 323 } 324 325 if ($gallery.hasClass('loading-animation')) { 326 if (filtersArr.length === 0) { 327 $gallery.itemsAnimations('instance').reinitItems($('.gallery-item', $gallery)); 328 $gallery.itemsAnimations('instance').show($('.gallery-item', $gallery)); 329 } else { 330 filtersArr.forEach(function (item, index) { 331 $gallery.itemsAnimations('instance').reinitItems($('.gallery-item.' + item, $gallery)); 332 $gallery.itemsAnimations('instance').show($('.gallery-item.' + item, $gallery)); 333 }); 334 } 335 } 336 } 337 338 if (queryParams.toString().length > 0) { 339 history.replaceState(null, null, "?" + queryParams.toString()); 340 } else { 341 history.replaceState(null, null, location.href.split("?")[0]); 342 } 343 } 344 345 function initFiltersMore($gallery) { 346 if (!$('.portfolio-filters-more', $gallery).length) 347 return false; 348 349 $('.portfolio-filters-more', $gallery).on('mouseover', function () { 350 $(this).addClass('active'); 351 }).on('mouseout', function () { 352 $(this).removeClass('active'); 353 }); 354 355 $('.portfolio-filters-more a', $gallery).on('click', function (e) { 356 $('.portfolio-filters-more', $gallery).mouseout(); 357 }); 358 } 359 360 if (typeof $.fn.scSticky === 'function') { 361 $('.filters-top-sticky').scSticky({hideStickyHeader: true, fullWidth: true}); 362 } 363 364 function initGallerySlider() { 365 if (window.tgpLazyItems !== undefined) { 366 var isShowed = window.tgpLazyItems.checkGroupShowed(this, function(node) { 367 initGallerySlider.call(node); 368 }); 369 if (!isShowed) { 370 return; 371 } 372 } 373 374 var $gallery = $(this); 375 var $set = $('.gallery-set', this); 376 var $items = $('.gallery-item', $set); 377 378 init_circular_overlay($gallery, $set); 379 380 // update images list 381 $set.wrap('<div class="gem-gallery-preview-carousel-wrap clearfix"/>'); 382 var $galleryPreviewWrap = $('.gem-gallery-preview-carousel-wrap', this); 383 $galleryPreviewWrap.wrap('<div class="gem-gallery-preview-carousel-padding clearfix"/>'); 384 var $galleryPreviewNavigation = $('<div class="gem-gallery-preview-navigation"/>') 385 .appendTo($galleryPreviewWrap); 386 var $galleryPreviewPrev = $('<a href="#" class="gem-prev gem-gallery-preview-prev" aria-label="arrow-left"></a>') 387 .appendTo($galleryPreviewNavigation); 388 var $galleryPreviewNext = $('<a href="#" class="gem-next gem-gallery-preview-next" aria-label="arrow-right"></a>') 389 .appendTo($galleryPreviewNavigation); 390 391 // create thumbs list 392 var $galleryThumbsWrap = $('<div class="gem-gallery-thumbs-carousel-wrap col-lg-12 col-md-12 col-sm-12 clearfix" style="opacity: 0"/>') 393 .appendTo($gallery); 394 var $galleryThumbsCarousel = $('<ul class="gem-gallery-thumbs-carousel"/>') 395 .appendTo($galleryThumbsWrap); 396 var $galleryThumbsNavigation = $('<div class="gem-gallery-thumbs-navigation"/>') 397 .appendTo($galleryThumbsWrap); 398 var $galleryThumbsPrev = $('<a href="#" class="gem-prev gem-gallery-thumbs-prev" aria-label="arrow-left"></a>') 399 .appendTo($galleryThumbsNavigation); 400 var $galleryThumbsNext = $('<a href="#" class="gem-next gem-gallery-thumbs-next" aria-label="arrow-right"></a>') 401 .appendTo($galleryThumbsNavigation); 402 var thumbItems = ''; 403 $items.each(function() { 404 thumbItems += '<li><span><img src="' + $('.image-wrap img', this).data('thumb-url') + '" alt="" /></span></li>'; 405 }); 406 var $thumbItems = $(thumbItems);
407 $thumbItems.appendTo($galleryThumbsCarousel); 408 $thumbItems.each(function(index) { 409 $(this).data('gallery-item-num', index); 410 }); 411 412 var $galleryPreview = $set.carouFredSel({ 413 auto: false, 414 circular: false, 415 infinite: false, 416 responsive: true, 417 width: '100%', 418 height: '100%', 419 items: 1, 420 align: 'center', 421 prev: $galleryPreviewPrev, 422 next: $galleryPreviewNext, 423 swipe: true, 424 scroll: { 425 items: 1, 426 onBefore: function(data) { 427 var current = $(this).triggerHandler('currentPage'); 428 var thumbCurrent = $galleryThumbs.triggerHandler('slice', [current, current+1]); 429 var thumbsVisible = $galleryThumbs.triggerHandler('currentVisible'); 430 $thumbItems.filter('.active').removeClass('active'); 431 if(thumbsVisible.index(thumbCurrent) === -1) { 432 $galleryThumbs.trigger('slideTo', current); 433 } 434 $('span', thumbCurrent).trigger('click'); 435 } 436 } 437 }); 438 439 var $galleryThumbs = null; 440 gallery_images_loaded($galleryThumbsCarousel, 'img', function() { 441 $galleryThumbs = $galleryThumbsCarousel.carouFredSel({ 442 auto: false, 443 circular: false, 444 infinite: false, 445 width: '100%', 446 height: 'variable', 447 align: 'center', 448 prev: $galleryThumbsPrev, 449 next: $galleryThumbsNext, 450 swipe: true, 451 onCreate: function(data) { 452 $('span', $thumbItems).click(function(e) { 453 e.preventDefault(); 454 $thumbItems.filter('.active').removeClass('active'); 455 $(this).closest('li').addClass('active'); 456 $galleryPreview.trigger('slideTo', $(this).closest('li').data('gallery-item-num')); 457 }); 458 $thumbItems.eq(0).addClass('active'); 459 } 460 }); 461 $galleryThumbsWrap.animate({opacity: 1}, 400); 462 if($thumbItems.length < 2) { 463 $galleryThumbsWrap.hide(); 464 } 465 }); 466 } 467 468 function initGallery() { 469 if (window.tgpLazyItems !== undefined) { 470 var isShowed = window.tgpLazyItems.checkGroupShowed(this, function(node) { 471 initGallery.call(node); 472 }); 473 if (!isShowed) { 474 return; 475 } 476 } 477 478 var $galleryElement = $(this); 479 480 var $thumbItems = $('.gem-gallery-item', $galleryElement); 481 482 var $galleryPreviewWrap = $('<div class="gem-gallery-preview-carousel-wrap"/>') 483 .appendTo($galleryElement); 484 var $galleryPreviewCarousel = $('<div class="gem-gallery-preview-carousel "/>') 485 .appendTo($galleryPreviewWrap); 486 var $galleryPreviewNavigation = $('<div class="gem-gallery-preview-navigation"/>') 487 .appendTo($galleryPreviewWrap); 488 var $galleryPreviewPrev = $('<a href="#" class="gem-prev gem-gallery-preview-prev" aria-label="arrow-left"></a>') 489 .appendTo($galleryPreviewNavigation); 490 var $galleryPreviewNext = $('<a href="#" class="gem-next gem-gallery-preview-next" aria-label="arrow-right"></a>') 491 .appendTo($galleryPreviewNavigation); 492 if($galleryElement.hasClass('with-pagination')) { 493 var $galleryPreviewPagination = $('<div class="gem-gallery-preview-pagination gem-mini-pagination"/>') 494 .appendTo($galleryPreviewWrap); 495 } 496 var $previewItems = $thumbItems.clone(true, true); 497 $previewItems.appendTo($galleryPreviewCarousel); 498 $previewItems.each(function() { 499 $('img', this).attr('src', $('a', this).attr('href')); 500 $('a', this) 501 .attr('href', $('a', this) 502 .data('full-image-url')) 503 .attr('data-fancybox', $('a', this).data('fancybox-group')) 504 .addClass('fancy-gallery'); 505 }); 506 507 $galleryPreviewCarousel.initGalleryFancybox(); 508 509 var $galleryThumbsWrap = $('<div class="gem-gallery-thumbs-carousel-wrap"/>') 510 .appendTo($galleryElement); 511 var $galleryThumbsCarousel = $('<div class="gem-gallery-thumbs-carousel"/>') 512 .appendTo($galleryThumbsWrap); 513 var $galleryThumbsNavigation = $('<div class="gem-gallery-thumbs-navigation"/>') 514 .appendTo($galleryThumbsWrap); 515 var $galleryThumbsPrev = $('<a href="#" class="gem-prev gem-gallery-thumbs-prev" aria-label="arrow-left"></a>') 516 .appendTo($galleryThumbsNavigation); 517 var $galleryThumbsNext = $('<a href="#" class="gem-next gem-gallery-thumbs-next" aria-label="arrow-right"></a>') 518 .appendTo($galleryThumbsNavigation);
519 $thumbItems.appendTo($galleryThumbsCarousel); 520 $thumbItems.each(function(index) { 521 $(this).data('gallery-item-num', index); 522 }); 523 } 524 525 $('.gem-gallery-grid').not('.gallery-slider').each(initGalleryGrid); 526 $('.gallery-slider').each(initGallerySlider); 527 528 $('.gem-gallery-grid').on('click', '.gallery-item', function() { 529 $(this).mouseover(); 530 }); 531 532 $('.gem-gallery').each(initGallery); 533 534 $('body').updateGalleries(); 535 $('body').buildSimpleGalleries(); 536 $('body').updateSimpleGalleries(); 537 538 $('.gem_tab').on('tab-update', function() { 539 $(this).updateGalleries(); 540 }); 541 $(document).on('gem.show.vc.tabs', '[data-vc-accordion]', function() { 542 $(this).data('vc.accordion').getTarget().updateGalleries(); 543 }); 544 $(document).on('gem.show.vc.accordion', '[data-vc-accordion]', function() { 545 $(this).data('vc.accordion').getTarget().updateGalleries(); 546 }); 547 }); 548 549 function updateGallery() { 550 if (window.tgpLazyItems !== undefined) { 551 var isShowed = window.tgpLazyItems.checkGroupShowed(this, function(node) { 552 updateGallery.call(node); 553 }); 554 if (!isShowed) { 555 return; 556 } 557 } 558 559 var $galleryElement = $(this); 560 561 var $galleryPreviewCarousel = $('.gem-gallery-preview-carousel', $galleryElement); 562 var $galleryThumbsWrap = $('.gem-gallery-thumbs-carousel-wrap', $galleryElement); 563 var $galleryThumbsCarousel = $('.gem-gallery-thumbs-carousel', $galleryElement); 564 var $thumbItems = $('.gem-gallery-item', $galleryThumbsCarousel); 565 var $galleryPreviewPrev = $('.gem-gallery-preview-prev', $galleryElement); 566 var $galleryPreviewNext = $('.gem-gallery-preview-next', $galleryElement); 567 var $galleryPreviewPagination = $('.gem-gallery-preview-pagination', $galleryElement); 568 var $galleryThumbsPrev = $('.gem-gallery-thumbs-prev', $galleryElement); 569 var $galleryThumbsNext = $('.gem-gallery-thumbs-next', $galleryElement); 570 571 $galleryElement.thegemPreloader(function() { 572 573 var $galleryThumbs = $galleryThumbsCarousel, $galleryPreview = $galleryPreviewCarousel; 574 575 $('img', $galleryPreviewCarousel).removeAttr('data-tgpli-image-inited'); 576 577 $galleryPreview = $galleryPreviewCarousel.carouFredSel({ 578 auto: $galleryElement.data('autoscroll') ? $galleryElement.data('autoscroll') : false, 579 circular: true, 580 infinite: true, 581 responsive: true, 582 width: '100%', 583 height: 'auto', 584 items: 1, 585 align: 'center', 586 prev: $galleryPreviewPrev, 587 next: $galleryPreviewNext, 588 pagination: $galleryElement.hasClass('with-pagination') ? $galleryPreviewPagination : false, 589 swipe: true, 590 scroll: { 591 pauseOnHover: true, 592 items: 1, 593 onBefore: function(data) { 594 var current = $(this).triggerHandler('currentPage'); 595 var thumbCurrent = $galleryThumbs.triggerHandler('slice', [current, current+1]); 596 var thumbsVisible = $galleryThumbs.triggerHandler('currentVisible'); 597 $thumbItems.filter('.active').removeClass('active'); 598 if(thumbsVisible.index(thumbCurrent) === -1) { 599 $galleryThumbs.trigger('slideTo', current); 600 } 601 $('a', thumbCurrent).trigger('gemActivate'); 602 } 603 }, 604 onCreate: function () { 605 $(window).on('resize', function () { 606 $galleryPreviewCarousel.parent().add($galleryPreviewCarousel).height($galleryPreviewCarousel.children().first().height()); 607 }).trigger('resize'); 608 } 609 }); 610 611 $('img', $galleryThumbsCarousel).removeAttr('data-tgpli-image-inited'); 612 613 $galleryThumbs = $galleryThumbsCarousel.carouFredSel({ 614 auto: false, 615 circular: true, 616 infinite: true, 617 width: '100%', 618 height: 'variable', 619 align: 'center', 620 prev: $galleryThumbsPrev, 621 next: $galleryThumbsNext, 622 swipe: true, 623 onCreate: function(data) { 624 $('a', $thumbItems).on('gemActivate', function(e) { 625 $thumbItems.filter('.active').removeClass('active'); 626 $(this).closest('.gem-gallery-item').addClass('active'); 627 $galleryPreview.trigger('slideTo', $(this).closest('.gem-gallery-item').data('gallery-item-num')); 628 }); 629 $('a', $thumbItems).click(function(e) { 630 e.preventDefault(); 631 $(this).trigger('gemActivate'); 632 }); 633 } 634 }); 635 636 if($thumbItems.filter('.active').length) { 637 $thumbItems.filter('.active').eq(0).find('a').trigger('click'); 638 } else { 639 $thumbItems.eq(0).find('a').trigger('gemActivate'); 640 } 641 642 if($thumbItems.length < 2) { 643 $galleryThumbsWrap.hide(); 644 } 645 646 }); 647 } 648 649 function updateSimpleGallery() { 650 if (window.tgpLazyItems !== undefined) {
651 var isShowed = window.tgpLazyItems.checkGroupShowed(this, function(node) { 652 updateSimpleGallery.call(node); 653 }); 654 if (!isShowed) { 655 return; 656 } 657 } 658 659 var $galleryElement = $(this); 660 661 var $galleryItemsCarousel = $('.gem-gallery-items-carousel', $galleryElement); 662 var $thumbItems = $('.gem-gallery-item', $galleryItemsCarousel); 663 var $galleryItemsPrev = $('.gem-gallery-items-prev', $galleryElement); 664 var $galleryItemsNext = $('.gem-gallery-items-next', $galleryElement); 665 666 $galleryElement.thegemPreloader(function() { 667 var $galleryItems = $galleryItemsCarousel.carouFredSel({ 668 auto: ($galleryElement.data('autoscroll') > 0 ? $galleryElement.data('autoscroll') : false), 669 circular: true, 670 infinite: true, 671 responsive: $galleryElement.hasClass('responsive'), 672 width: '100%', 673 height: 'variable', 674 align: 'center', 675 prev: $galleryItemsPrev, 676 next: $galleryItemsNext, 677 swipe: true, 678 scroll: { 679 pauseOnHover: true 680 }, 681 onCreate: function(data) { 682 $galleryElement.trigger('gallery-inited'); 683 } 684 }); 685 686 }); 687 } 688 689})(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.