(function($) { 'use strict'; function getVideoId(url) { if ('false' === url) return false; var result = /(?:\?v=|\/embed\/|\.be\/)([-a-z0-9_]+)/i.exec(url) || /^([-a-z0-9_]+)$/i.exec(url); return result ? result[1] : false; } function onPlayerReady(event) { if ($(event.target).closest('.mbr-slider').hasClass('in')) { event.target.playVideo(); } } var isBuilder = $('html').hasClass('is-builder'); /* get youtube id */ if (!isBuilder) { /* google iframe */ var tag = document.createElement('script'); tag.src = "https://www.youtube.com/iframe_api"; var firstScriptTag = document.getElementsByTagName('script')[0]; firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); var players = []; $('.carousel-item.video-container img').css('display','none'); /* google iframe api init function */ window.onYouTubeIframeAPIReady = function() { var ytp = ytp || {}; ytp.YTAPIReady || (ytp.YTAPIReady = !0, jQuery(document).trigger("YTAPIReady")); $('.video-slide').each(function(i) { $('.video-container').eq(i).append('
') .append(''); $(this).attr('data-video-num', i); if ($(this).attr('data-video-url').indexOf('vimeo.com') !== -1) { var options = { id: $(this).attr('data-video-url'), width: '100%', height: '100%', loop: true }; var player = new Vimeo.Player('mbr-video-' + i, options); player.playVideo = Vimeo.play; } else { var player = new YT.Player('mbr-video-' + i, { height: '100%', width: '100%', videoId: getVideoId($(this).attr('data-video-url')), events: { 'onReady': onPlayerReady }, playerVars: { rel: 0 } }); } players.push(player); }); }; } function updateMasonry(event) { var $section = $(event.target); if(!$section[0]._masonryProgress) { $section[0]._masonryProgress = true; if (typeof $.fn.masonry !== 'undefined') { $section.outerFind('.mbr-gallery').each(function() { var $msnr = $(this).find('.mbr-gallery-row'); $msnr.one('layoutComplete', function(){ $section[0]._masonryProgress = false; }) //wait load standart images $msnr.imagesLoaded().progress(function() { $msnr.masonry({ itemSelector: '.mbr-gallery-item:not(.mbr-gallery-item__hided)', percentPosition: true, horizontalOrder: true, transitionDuration: 0 }); // reload masonry (need for adding new or re-sort items) $msnr.masonry('reloadItems'); }) $msnr.off('filter') $msnr.on('filter', function() { $msnr.masonry('reloadItems'); $msnr.masonry('layout'); // update parallax backgrounds $(window).trigger('update.parallax'); }); }); } }; }; /* Masonry Grid */ $(document).on('add.cards', function(event) { var $section = $(event.target); $section.on('click', '.mbr-gallery-filter li', function(e) { e.preventDefault(); var $li = $(this).closest('li'); $li.parent().find('li').removeClass('active'); $li.addClass('active'); var $mas = $li.closest('section').find('.mbr-gallery-row'); var filter = $(this)[0].textContent.trim(); $section.find('.mbr-gallery-item').each(function(i, el) { var $elem = $(this); var tagsAttr = $elem.attr('data-tags'); var tags = tagsAttr.split(','); var tagsTrimmed = tags.map(function(el) { return el.trim(); }); if ($.inArray(filter, tagsTrimmed) === -1 && !$li.hasClass('mbr-gallery-filter-all')) { $elem.addClass('mbr-gallery-item__hided'); $elem.css('left', '300px'); } else { $elem.removeClass('mbr-gallery-item__hided'); } }); $mas.closest('.mbr-gallery-row').trigger('filter'); }); }); if (isBuilder) { $(document).on('changeButtonColor.cards', function(event) { var $section = $(event.target); if ($section.find('.mbr-gallery-filter').length > 0 && $(event.target).find('.mbr-gallery-filter').hasClass('gallery-filter-active')) { var classAttr = ($section.find('.mbr-gallery-filter .mbr-gallery-filter-all').find('a').attr('class') || '').replace(/(^|\s)active(\s|$)/, ' ').trim(); $section.find('.mbr-gallery-filter ul li:not(.mbr-gallery-filter-all) a').attr('class', classAttr); } updateMasonry(event); }); } $(document).on('add.cards changeParameter.cards', function(event) { var $section = $(event.target); var filterList = []; $section.find('.mbr-gallery-item').each(function(el) { var tagsList = ($(this).attr('data-tags') || "").trim().split(','); tagsList.map(function(el) { el = el.trim(); if ($.inArray(el, filterList) === -1) filterList.push(el); }); }); if ($section.find('.mbr-gallery-filter').length > 0 && $(event.target).find('.mbr-gallery-filter').hasClass('gallery-filter-active')) { var filterHtml = ''; $section.find('.mbr-gallery-filter ul li:not(.mbr-gallery-filter-all)').remove(); var allItem = $section.find('.mbr-gallery-filter .mbr-gallery-filter-all'), childItem = allItem.clone(); childItem.find('a').removeClass('active'); filterList.map(function(el) { if(childItem.find('a').length) childItem.find('a').text(el); else childItem.text(el); filterHtml += '