// source --> https://postelematrace.cz/wp-content/plugins/woo-photo-reviews/js/script.min.js?ver=1.2.26 
jQuery(document).ready((function(e){let r=woocommerce_photo_reviews_params.hasOwnProperty("comments_container_id")?woocommerce_photo_reviews_params.comments_container_id:"comments",t=e("#"+r);function a(){t=e("#"+r),(e(".wcpr-filter-container").length>0&&0===t.find(".wcpr-filter-container").length||e(".wcpr-overall-rating-and-rating-count").length>0&&0===t.find(".wcpr-overall-rating-and-rating-count").length)&&t.prepend(e(".wcpr-filter-container")).prepend(e(".wcpr-overall-rating-and-rating-count")).prepend(e(".woocommerce-Reviews-title").eq(0))}t.length>0?a():e(document).on("skeleton-loaded",(function(){a()})),e(window).on("load",(function(){a()})),e(document).on("click",".reviews_tab",(function(){a()}));let o=woocommerce_photo_reviews_params.max_files;function i(e,r,t=""){let a,o=`<img title="${r}" src="${e}" class="wcpr-selected-image-preview">`;return a=t?`<div class="wcpr-selected-image">${o}<div class="wcpr-selected-image-info"><div class="wcpr-selected-image-name wcpr-comment-form-error" >${t}</div></div></div>`:`<div class="wcpr-selected-image">${o}<div class="wcpr-selected-image-info"><div class="wcpr-selected-image-name" title="${r}">${r}</div></div></div>`,a}e("#commentform").on("change",".wcpr_image_upload",(function(r){if(e(this).parent().find(".wcpr-selected-image-container").html(""),this.files.length>o)return alert(woocommerce_photo_reviews_params.warning_max_files),e(this).val(""),!1;this.files.length>0&&function(r){let t=1024*parseFloat(woocommerce_photo_reviews_params.max_file_size);for(let o=0;o<r.files.length;o++){var a=new FileReader;a.onload=function(a){let n="";-1===woocommerce_photo_reviews_params.upload_allow.indexOf(r.files[o].type)?n=woocommerce_photo_reviews_params.warning_upload_allow.replace("%file_name%",r.files[o].name):r.files[o].size>t&&(n=woocommerce_photo_reviews_params.warning_max_file_size.replace("%file_name%",r.files[o].name)),e(r).parent().find(".wcpr-selected-image-container").append(i(a.target.result,r.files[o].name,n))},a.readAsDataURL(r.files[o])}}(this)})),e("#commentform").find('input[type="submit"]').on("click",(function(r){let t=e(this);if(t.hasClass("viwcpr_form_checked"))return!0;let a=e(this).closest("form"),i=a.find('textarea[id="comment"]')||a.find('textarea[name="comment"]'),n=a.find('input[name="author"]'),c=a.find('input[name="email"]');if(i.length>0&&!i.val())return alert(woocommerce_photo_reviews_params.i18n_required_comment_text),r.preventDefault(),i.focus(),!1;if("on"===woocommerce_photo_reviews_params.enable_photo){a.attr("enctype")&&"multipart/form-data"===a.attr("enctype")||a.attr("enctype","multipart/form-data");let e=a.find(".wcpr_image_upload");if(e.length>0){let t=e.get(0).files,a=parseInt(t.length);if("on"===woocommerce_photo_reviews_params.required_image&&0===a)return alert(woocommerce_photo_reviews_params.warning_required_image),r.preventDefault(),!1;if(a>o)return alert(woocommerce_photo_reviews_params.warning_max_files),r.preventDefault(),!1;let i=[],n=1024*parseFloat(woocommerce_photo_reviews_params.max_file_size);if(jQuery.each(t,(function(e,r){if(-1===woocommerce_photo_reviews_params.upload_allow.indexOf(r.type))return i.push(woocommerce_photo_reviews_params.warning_upload_allow.replace("%file_name%",r.name)),!0;r.size>n&&i.push(woocommerce_photo_reviews_params.warning_max_file_size.replace("%file_name%",r.name))})),i.length)return alert(i.join("\n")),r.preventDefault(),!1}else if("on"===woocommerce_photo_reviews_params.required_image)return alert(woocommerce_photo_reviews_params.warning_required_image),r.preventDefault(),!1}if(n.length>0&&n.attr("required")&&!n.val())return alert(woocommerce_photo_reviews_params.i18n_required_name_text),r.preventDefault(),n.focus(),!1;if(c.length>0&&c.attr("required")&&!c.val())return alert(woocommerce_photo_reviews_params.i18n_required_email_text),r.preventDefault(),c.focus(),!1;if(!1===a.find('input[name="wcpr_gdpr_checkbox"]').prop("checked"))return alert(woocommerce_photo_reviews_params.warning_gdpr),r.preventDefault(),!1;if(woocommerce_photo_reviews_params.ajax_check_content_reviews){t.attr("type","button"),async function(){let r="";return await new Promise((function(t){e.ajax({type:"post",url:woocommerce_photo_reviews_params.wc_ajax_url.toString().replace("%%endpoint%%","viwcpr_restrict_number_of_reviews"),processData:!1,cache:!1,contentType:!1,data:new FormData(a[0]),success:function(e){e.error?r=e.error:(e.remove_upload_file&&a.find(".wcpr_image_upload").val(""),e.img_id&&a.append(`<input type="hidden" name="wcpr_image_upload_id" value="${e.img_id}">`)),t(r)},error:function(e){r="-1"===e.responseText?e.statusText:e.responseText,t(r)}})})),r}().then((function(e){if(t.attr("type","submit"),e)return alert(e),r.preventDefault(),!1;t.addClass("viwcpr_form_checked").trigger("click")}))}}))}));
// source --> https://postelematrace.cz/wp-content/plugins/woo-photo-reviews/js/jquery.swipebox.js?ver=1.2.26 
/*! Swipebox v1.4.4 | Constantin Saguin csag.co | MIT License | github.com/brutaldesign/swipebox */

;(function (window, document, $, undefined) {

    $.swipebox = function (elem, options) {

        // Default options
        var ui,
            defaults = {
                useCSS: true,
                useSVG: true,
                initialIndexOnArray: 0,
                removeBarsOnMobile: false,
                hideCloseButtonOnMobile: false,
                hideBarsDelay: 3000,
                videoMaxWidth: 1140,
                vimeoColor: 'cccccc',
                beforeOpen: null,
                afterOpen: null,
                afterClose: null,
                afterMedia: null,
                nextSlide: null,
                prevSlide: null,
                loopAtEnd: false,
                autoplayVideos: false,
                queryStringData: {},
                toggleClassOnLoad: ''
            },

            plugin = this,
            elements = [], // slides array [ { href:'...', title:'...' }, ...],
            $elem,
            selector = elem.selector,
            isMobile = navigator.userAgent.match(/(iPad)|(iPhone)|(iPod)|(Android)|(PlayBook)|(BB10)|(BlackBerry)|(Opera Mini)|(IEMobile)|(webOS)|(MeeGo)/i),
            isTouch = isMobile !== null || document.createTouch !== undefined || ('ontouchstart' in window) || ('onmsgesturechange' in window) || navigator.msMaxTouchPoints,
            supportSVG = !!document.createElementNS && !!document.createElementNS('http://www.w3.org/2000/svg', 'svg').createSVGRect,
            winWidth = window.innerWidth ? window.innerWidth : $(window).width(),
            winHeight = window.innerHeight ? window.innerHeight : $(window).height(),
            currentX = 0,
            /* jshint multistr: true */
            html = '<div id="wcpr-swipebox-overlay">\
					<div id="wcpr-swipebox-container">\
						<div id="wcpr-swipebox-slider"></div>\
						<div id="wcpr-swipebox-top-bar">\
							<div id="wcpr-swipebox-title"></div>\
						</div>\
						<div id="wcpr-swipebox-bottom-bar">\
							<div id="wcpr-swipebox-arrows">\
								<a id="wcpr-swipebox-prev"></a>\
								<a id="wcpr-swipebox-next"></a>\
							</div>\
						</div>\
						<a id="wcpr-swipebox-close"></a>\
					</div>\
			</div>';

        plugin.settings = {};

        $.swipebox.close = function () {
            ui.closeSlide();
        };

        $.swipebox.extend = function () {
            return ui;
        };

        plugin.init = function () {

            plugin.settings = $.extend({}, defaults, options);

            if ($.isArray(elem)) {

                elements = elem;
                ui.target = $(window);
                ui.init(plugin.settings.initialIndexOnArray);

            } else {

                $(document).on('click', selector, function (event) {
                    event.preventDefault();
                    // console.log( isTouch );

                    if (event.target.parentNode.className === 'slide current') {

                        return false;
                    }

                    if (!$.isArray(elem)) {
                        ui.destroy();
                        $elem = $(selector);
                        ui.actions();
                    }

                    elements = [];
                    var index, relType, relVal;

                    // Allow for HTML5 compliant attribute before legacy use of rel
                    if (!relVal) {
                        relType = 'data-rel';
                        relVal = $(this).attr(relType);
                    }

                    if (!relVal) {
                        relType = 'rel';
                        relVal = $(this).attr(relType);
                    }

                    if (relVal && relVal !== '' && relVal !== 'nofollow') {
                        $elem = $(selector).filter('[' + relType + '="' + relVal + '"]');
                    } else {
                        $elem = $(selector);
                    }

                    $elem.each(function () {

                        var title = null,
                            href = null;

                        if ($(this).attr('title')) {
                            title = $(this).attr('title');
                        }


                        if ($(this).attr('href')) {
                            href = $(this).attr('href');
                        }

                        elements.push({
                            href: href,
                            title: title
                        });
                    });

                    index = $elem.index($(this));
                    event.preventDefault();
                    event.stopPropagation();
                    ui.target = $(event.target);
                    ui.init(index);
                });
            }
        };

        ui = {

            /**
             * Initiate Swipebox
             */
            init: function (index) {
                if (plugin.settings.beforeOpen) {
                    plugin.settings.beforeOpen();
                }
                this.target.trigger('wcpr-swipebox-start');
                $.swipebox.isOpen = true;
                this.build();
                this.openSlide(index);
                this.openMedia(index);
                this.preloadMedia(index + 1);
                this.preloadMedia(index - 1);
                if (plugin.settings.afterOpen) {
                    plugin.settings.afterOpen(index);
                }
            },

            /**
             * Built HTML containers and fire main functions
             */
            build: function () {
                var $this = this, bg;

                $('body').append(html);

                if (supportSVG && plugin.settings.useSVG === true) {
                    bg = $('#wcpr-swipebox-close').css('background-image');
                    bg = bg.replace('png', 'svg');
                    $('#wcpr-swipebox-prev, #wcpr-swipebox-next, #wcpr-swipebox-close').css({
                        'background-image': bg
                    });
                }

                if (isMobile && plugin.settings.removeBarsOnMobile) {
                    $('#wcpr-swipebox-bottom-bar, #wcpr-swipebox-top-bar').remove();
                }

                $.each(elements, function () {
                    $('#wcpr-swipebox-slider').append('<div class="slide"></div>');
                });

                $this.setDim();
                $this.actions();

                if (isTouch) {
                    $this.gesture();
                }

                // Devices can have both touch and keyboard input so always allow key events
                $this.keyboard();

                $this.animBars();
                $this.resize();

            },

            /**
             * Set dimensions depending on windows width and height
             */
            setDim: function () {

                var width, height, sliderCss = {};

                // Reset dimensions on mobile orientation change
                if ('onorientationchange' in window) {

                    window.addEventListener('orientationchange', function () {
                        if (window.orientation === 0) {
                            width = winWidth;
                            height = winHeight;
                        } else if (window.orientation === 90 || window.orientation === -90) {
                            width = winHeight;
                            height = winWidth;
                        }
                    }, false);


                } else {

                    width = window.innerWidth ? window.innerWidth : $(window).width();
                    height = window.innerHeight ? window.innerHeight : $(window).height();
                }

                sliderCss = {
                    width: width,
                    height: height
                };

                $('#wcpr-swipebox-overlay').css(sliderCss);

            },

            /**
             * Reset dimensions on window resize envent
             */
            resize: function () {
                var $this = this;

                $(window).resize(function () {
                    $this.setDim();
                }).resize();
            },

            /**
             * Check if device supports CSS transitions
             */
            supportTransition: function () {

                var prefixes = 'transition WebkitTransition MozTransition OTransition msTransition KhtmlTransition'.split(' '),
                    i;

                for (i = 0; i < prefixes.length; i++) {
                    if (document.createElement('div').style[prefixes[i]] !== undefined) {
                        return prefixes[i];
                    }
                }
                return false;
            },

            /**
             * Check if CSS transitions are allowed (options + devicesupport)
             */
            doCssTrans: function () {
                if (plugin.settings.useCSS && this.supportTransition()) {
                    return true;
                }
            },

            /**
             * Touch navigation
             */
            gesture: function () {

                var $this = this,
                    index,
                    hDistance,
                    vDistance,
                    hDistanceLast,
                    vDistanceLast,
                    hDistancePercent,
                    vSwipe = false,
                    hSwipe = false,
                    hSwipMinDistance = 10,
                    vSwipMinDistance = 50,
                    startCoords = {},
                    endCoords = {},
                    bars = $('#wcpr-swipebox-top-bar, #wcpr-swipebox-bottom-bar'),
                    slider = $('#wcpr-swipebox-slider');

                bars.addClass('visible-bars');
                $this.setTimeout();

                $('body').bind('touchstart', function (event) {

                    $(this).addClass('wcpr-touching');
                    index = $('#wcpr-swipebox-slider .slide').index($('#wcpr-swipebox-slider .slide.current'));
                    endCoords = event.originalEvent.targetTouches[0];
                    startCoords.pageX = event.originalEvent.targetTouches[0].pageX;
                    startCoords.pageY = event.originalEvent.targetTouches[0].pageY;

                    $('#wcpr-swipebox-slider').css({
                        '-webkit-transform': 'translate3d(' + currentX + '%, 0, 0)',
                        'transform': 'translate3d(' + currentX + '%, 0, 0)'
                    });

                    $('.wcpr-touching').bind('touchmove', function (event) {
                        event.preventDefault();
                        event.stopPropagation();
                        endCoords = event.originalEvent.targetTouches[0];

                        if (!hSwipe) {
                            vDistanceLast = vDistance;
                            vDistance = endCoords.pageY - startCoords.pageY;
                            if (Math.abs(vDistance) >= vSwipMinDistance || vSwipe) {
                                var opacity = 0.75 - Math.abs(vDistance) / slider.height();

                                slider.css({'top': vDistance + 'px'});
                                slider.css({'opacity': opacity});

                                vSwipe = true;
                            }
                        }

                        hDistanceLast = hDistance;
                        hDistance = endCoords.pageX - startCoords.pageX;
                        hDistancePercent = hDistance * 100 / winWidth;

                        if (!hSwipe && !vSwipe && Math.abs(hDistance) >= hSwipMinDistance) {
                            $('#wcpr-swipebox-slider').css({
                                '-webkit-transition': '',
                                'transition': ''
                            });
                            hSwipe = true;
                        }

                        if (hSwipe) {

                            // swipe left
                            if (0 < hDistance) {

                                // first slide
                                if (0 === index) {
                                    // console.log( 'first' );
                                    $('#wcpr-swipebox-overlay').addClass('leftSpringTouch');
                                } else {
                                    // Follow gesture
                                    $('#wcpr-swipebox-overlay').removeClass('leftSpringTouch').removeClass('rightSpringTouch');
                                    $('#wcpr-swipebox-slider').css({
                                        '-webkit-transform': 'translate3d(' + (currentX + hDistancePercent) + '%, 0, 0)',
                                        'transform': 'translate3d(' + (currentX + hDistancePercent) + '%, 0, 0)'
                                    });
                                }

                                // swipe rught
                            } else if (0 > hDistance) {

                                // last Slide
                                if (elements.length === index + 1) {
                                    // console.log( 'last' );
                                    $('#wcpr-swipebox-overlay').addClass('rightSpringTouch');
                                } else {
                                    $('#wcpr-swipebox-overlay').removeClass('leftSpringTouch').removeClass('rightSpringTouch');
                                    $('#wcpr-swipebox-slider').css({
                                        '-webkit-transform': 'translate3d(' + (currentX + hDistancePercent) + '%, 0, 0)',
                                        'transform': 'translate3d(' + (currentX + hDistancePercent) + '%, 0, 0)'
                                    });
                                }

                            }
                        }
                    });

                    return false;

                }).bind('touchend', function (event) {
                    event.preventDefault();
                    event.stopPropagation();

                    $('#wcpr-swipebox-slider').css({
                        '-webkit-transition': '-webkit-transform 0.4s ease',
                        'transition': 'transform 0.4s ease'
                    });

                    vDistance = endCoords.pageY - startCoords.pageY;
                    hDistance = endCoords.pageX - startCoords.pageX;
                    hDistancePercent = hDistance * 100 / winWidth;

                    // Swipe to bottom to close
                    if (vSwipe) {
                        vSwipe = false;
                        if (Math.abs(vDistance) >= 2 * vSwipMinDistance && Math.abs(vDistance) > Math.abs(vDistanceLast)) {
                            var vOffset = vDistance > 0 ? slider.height() : -slider.height();
                            slider.animate({top: vOffset + 'px', 'opacity': 0},
                                300,
                                function () {
                                    $this.closeSlide();
                                });
                        } else {
                            slider.animate({top: 0, 'opacity': 1}, 300);
                        }

                    } else if (hSwipe) {

                        hSwipe = false;

                        // swipeLeft
                        if (hDistance >= hSwipMinDistance && hDistance >= hDistanceLast) {

                            $this.getPrev();

                            // swipeRight
                        } else if (hDistance <= -hSwipMinDistance && hDistance <= hDistanceLast) {

                            $this.getNext();
                        }

                    } else { // Top and bottom bars have been removed on touchable devices
                        // tap
                        if (!bars.hasClass('visible-bars')) {
                            $this.showBars();
                            $this.setTimeout();
                        } else {
                            $this.clearTimeout();
                            $this.hideBars();
                        }
                    }

                    $('#wcpr-swipebox-slider').css({
                        '-webkit-transform': 'translate3d(' + currentX + '%, 0, 0)',
                        'transform': 'translate3d(' + currentX + '%, 0, 0)'
                    });

                    $('#wcpr-swipebox-overlay').removeClass('leftSpringTouch').removeClass('rightSpringTouch');
                    $('.wcpr-touching').off('touchmove').removeClass('wcpr-touching');

                });
            },

            /**
             * Set timer to hide the action bars
             */
            setTimeout: function () {
                if (plugin.settings.hideBarsDelay > 0) {
                    var $this = this;
                    $this.clearTimeout();
                    $this.timeout = window.setTimeout(function () {
                            $this.hideBars();
                        },

                        plugin.settings.hideBarsDelay
                    );
                }
            },

            /**
             * Clear timer
             */
            clearTimeout: function () {
                window.clearTimeout(this.timeout);
                this.timeout = null;
            },

            /**
             * Show navigation and title bars
             */
            showBars: function () {
                var bars = $('#wcpr-swipebox-top-bar, #wcpr-swipebox-bottom-bar');
                if (this.doCssTrans()) {
                    bars.addClass('visible-bars');
                } else {
                    $('#wcpr-swipebox-top-bar').animate({top: 0}, 500);
                    $('#wcpr-swipebox-bottom-bar').animate({bottom: 0}, 500);
                    setTimeout(function () {
                        bars.addClass('visible-bars');
                    }, 1000);
                }
            },

            /**
             * Hide navigation and title bars
             */
            hideBars: function () {
                var bars = $('#wcpr-swipebox-top-bar, #wcpr-swipebox-bottom-bar');
                if (this.doCssTrans()) {
                    bars.removeClass('visible-bars');
                } else {
                    $('#wcpr-swipebox-top-bar').animate({top: '-50px'}, 500);
                    $('#wcpr-swipebox-bottom-bar').animate({bottom: '-50px'}, 500);
                    setTimeout(function () {
                        bars.removeClass('visible-bars');
                    }, 1000);
                }
            },

            /**
             * Animate navigation and top bars
             */
            animBars: function () {
                var $this = this,
                    bars = $('#wcpr-swipebox-top-bar, #wcpr-swipebox-bottom-bar');

                bars.addClass('visible-bars');
                $this.setTimeout();

                $('#wcpr-swipebox-slider').click(function () {
                    if (!bars.hasClass('visible-bars')) {
                        $this.showBars();
                        $this.setTimeout();
                    }
                });

                $('#wcpr-swipebox-bottom-bar').hover(function () {
                    $this.showBars();
                    bars.addClass('visible-bars');
                    $this.clearTimeout();

                }, function () {
                    if (plugin.settings.hideBarsDelay > 0) {
                        bars.removeClass('visible-bars');
                        $this.setTimeout();
                    }

                });
            },

            /**
             * Keyboard navigation
             */
            keyboard: function () {
                var $this = this;
                $(window).bind('keyup', function (event) {
                    event.preventDefault();
                    event.stopPropagation();

                    if (event.keyCode === 37) {

                        $this.getPrev();

                    } else if (event.keyCode === 39) {

                        $this.getNext();

                    } else if (event.keyCode === 27) {

                        $this.closeSlide();
                    }
                });
            },

            /**
             * Navigation events : go to next slide, go to prevous slide and close
             */
            actions: function () {
                var $this = this,
                    action = 'touchend click'; // Just detect for both event types to allow for multi-input

                if (elements.length < 2) {

                    $('#wcpr-swipebox-bottom-bar').hide();

                    if (undefined === elements[1]) {
                        $('#wcpr-swipebox-top-bar').hide();
                    }

                } else {
                    $('#wcpr-swipebox-prev').bind(action, function (event) {
                        event.preventDefault();
                        event.stopPropagation();
                        $this.getPrev();
                        $this.setTimeout();
                    });

                    $('#wcpr-swipebox-next').bind(action, function (event) {
                        event.preventDefault();
                        event.stopPropagation();
                        $this.getNext();
                        $this.setTimeout();
                    });
                }

                $('#wcpr-swipebox-close').bind(action, function (event) {
                    event.preventDefault();
                    event.stopPropagation();
                    $this.closeSlide();
                });
            },

            /**
             * Set current slide
             */
            setSlide: function (index, isFirst) {

                isFirst = isFirst || false;

                var slider = $('#wcpr-swipebox-slider');

                currentX = -index * 100;

                if (this.doCssTrans()) {
                    slider.css({
                        '-webkit-transform': 'translate3d(' + (-index * 100) + '%, 0, 0)',
                        'transform': 'translate3d(' + (-index * 100) + '%, 0, 0)'
                    });
                } else {
                    slider.animate({left: (-index * 100) + '%'});
                }

                $('#wcpr-swipebox-slider .slide').removeClass('current');
                $('#wcpr-swipebox-slider .slide').eq(index).addClass('current');
                this.setTitle(index);

                if (isFirst) {
                    slider.fadeIn();
                }

                $('#wcpr-swipebox-prev, #wcpr-swipebox-next').removeClass('disabled');

                if (index === 0) {
                    $('#wcpr-swipebox-prev').addClass('disabled');
                } else if (index === elements.length - 1 && plugin.settings.loopAtEnd !== true) {
                    $('#wcpr-swipebox-next').addClass('disabled');
                }
            },

            /**
             * Open slide
             */
            openSlide: function (index) {
                $('html').addClass('wcpr-swipebox-html');
                if (isTouch) {
                    $('html').addClass('wcpr-swipebox-touch');

                    if (plugin.settings.hideCloseButtonOnMobile) {
                        $('html').addClass('wcpr-swipebox-no-close-button');
                    }
                } else {
                    $('html').addClass('wcpr-swipebox-no-touch');
                }
                $(window).trigger('resize'); // fix scroll bar visibility on desktop
                this.setSlide(index, true);
            },

            /**
             * Set a time out if the media is a video
             */
            preloadMedia: function (index) {
                var $this = this,
                    src = null;

                if (elements[index] !== undefined) {
                    src = elements[index].href;
                }

                if (!$this.isVideo(src)) {
                    setTimeout(function () {
                        $this.openMedia(index);
                    }, 1000);
                } else {
                    $this.openMedia(index);
                }
            },

            /**
             * Open
             */
            openMedia: function (index) {
                var $this = this,
                    src,
                    slide;

                if (elements[index] !== undefined) {
                    src = elements[index].href;
                }

                if (index < 0 || index >= elements.length) {
                    return false;
                }

                slide = $('#wcpr-swipebox-slider .slide').eq(index);

                if (!$this.isVideo(src)) {
                    slide.addClass('slide-loading');
                    $this.loadMedia(src, function () {
                        slide.removeClass('slide-loading');
                        slide.html(this);

                        if (plugin.settings.afterMedia) {
                            plugin.settings.afterMedia(index);
                        }
                    });
                } else {
                    slide.html($this.getVideo(src));

                    if (plugin.settings.afterMedia) {
                        plugin.settings.afterMedia(index);
                    }
                }

            },

            /**
             * Set link title attribute as caption
             */
            setTitle: function (index) {
                var title = null;

                $('#wcpr-swipebox-title').empty();

                if (elements[index] !== undefined) {
                    title = elements[index].title;
                }

                if (title) {
                    $('#wcpr-swipebox-top-bar').show();
                    $('#wcpr-swipebox-title').append(title);
                } else {
                    $('#wcpr-swipebox-top-bar').hide();
                }
            },

            /**
             * Check if the URL is a video
             */
            isVideo: function (src) {

                if (src) {
                    if (src.match(/(youtube\.com|youtube-nocookie\.com)\/watch\?v=([a-zA-Z0-9\-_]+)/) || src.match(/vimeo\.com\/([0-9]*)/) || src.match(/youtu\.be\/([a-zA-Z0-9\-_]+)/)) {
                        return true;
                    }

                    if (src.toLowerCase().indexOf('swipeboxvideo=1') >= 0) {

                        return true;
                    }
                }

            },

            /**
             * Parse URI querystring and:
             * - overrides value provided via dictionary
             * - rebuild it again returning a string
             */
            parseUri: function (uri, customData) {
                var a = document.createElement('a'),
                    qs = {};

                // Decode the URI
                a.href = decodeURIComponent(uri);

                // QueryString to Object
                if (a.search) {
                    qs = JSON.parse('{"' + a.search.toLowerCase().replace('?', '').replace(/&/g, '","').replace(/=/g, '":"') + '"}');
                }

                // Extend with custom data
                if ($.isPlainObject(customData)) {
                    qs = $.extend(qs, customData, plugin.settings.queryStringData); // The dev has always the final word
                }

                // Return querystring as a string
                return $
                    .map(qs, function (val, key) {
                        if (val && val > '') {
                            return encodeURIComponent(key) + '=' + encodeURIComponent(val);
                        }
                    })
                    .join('&');
            },

            /**
             * Get video iframe code from URL
             */
            getVideo: function (url) {
                var iframe = '',
                    youtubeUrl = url.match(/((?:www\.)?youtube\.com|(?:www\.)?youtube-nocookie\.com)\/watch\?v=([a-zA-Z0-9\-_]+)/),
                    youtubeShortUrl = url.match(/(?:www\.)?youtu\.be\/([a-zA-Z0-9\-_]+)/),
                    vimeoUrl = url.match(/(?:www\.)?vimeo\.com\/([0-9]*)/),
                    qs = '';
                if (youtubeUrl || youtubeShortUrl) {
                    if (youtubeShortUrl) {
                        youtubeUrl = youtubeShortUrl;
                    }
                    qs = ui.parseUri(url, {
                        'autoplay': (plugin.settings.autoplayVideos ? '1' : '0'),
                        'v': ''
                    });
                    iframe = '<iframe width="560" height="315" src="//' + youtubeUrl[1] + '/embed/' + youtubeUrl[2] + '?' + qs + '" frameborder="0" allowfullscreen></iframe>';

                } else if (vimeoUrl) {
                    qs = ui.parseUri(url, {
                        'autoplay': (plugin.settings.autoplayVideos ? '1' : '0'),
                        'byline': '0',
                        'portrait': '0',
                        'color': plugin.settings.vimeoColor
                    });
                    iframe = '<iframe width="560" height="315"  src="//player.vimeo.com/video/' + vimeoUrl[1] + '?' + qs + '" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>';

                } else {
                    iframe = '<iframe width="560" height="315" src="' + url + '" frameborder="0" allowfullscreen></iframe>';
                }

                return '<div class="swipebox-video-container" style="max-width:' + plugin.settings.videoMaxWidth + 'px"><div class="swipebox-video">' + iframe + '</div></div>';
            },

            /**
             * Load image
             */
            loadMedia: function (src, callback) {
                // Inline content
                if (src.trim().indexOf('#') === 0) {
                    callback.call(
                        $('<div>', {
                            'class': 'wcpr-swipebox-inline-container'
                        })
                            .append(
                                $(src)
                                    .clone()
                                    .toggleClass(plugin.settings.toggleClassOnLoad)
                            )
                    );
                }
                // Everything else
                else {
                    if (!this.isVideo(src)) {
                        var img = $('<img>').on('load', function () {
                            callback.call(img);
                        });

                        img.attr('src', src);
                    }
                }
            },

            /**
             * Get next slide
             */
            getNext: function () {
                var $this = this,
                    src,
                    index = $('#wcpr-swipebox-slider .slide').index($('#wcpr-swipebox-slider .slide.current'));
                if (index + 1 < elements.length) {

                    src = $('#wcpr-swipebox-slider .slide').eq(index).contents().find('iframe').attr('src');
                    $('#wcpr-swipebox-slider .slide').eq(index).contents().find('iframe').attr('src', src);
                    index++;
                    $this.setSlide(index);
                    $this.preloadMedia(index + 1);
                    if (plugin.settings.nextSlide) {
                        plugin.settings.nextSlide(index);
                    }
                } else {

                    if (plugin.settings.loopAtEnd === true) {
                        src = $('#wcpr-swipebox-slider .slide').eq(index).contents().find('iframe').attr('src');
                        $('#wcpr-swipebox-slider .slide').eq(index).contents().find('iframe').attr('src', src);
                        index = 0;
                        $this.preloadMedia(index);
                        $this.setSlide(index);
                        $this.preloadMedia(index + 1);
                        if (plugin.settings.nextSlide) {
                            plugin.settings.nextSlide(index);
                        }
                    } else {
                        $('#wcpr-swipebox-overlay').addClass('rightSpring');
                        setTimeout(function () {
                            $('#wcpr-swipebox-overlay').removeClass('rightSpring');
                        }, 500);
                    }
                }
            },

            /**
             * Get previous slide
             */
            getPrev: function () {
                var index = $('#wcpr-swipebox-slider .slide').index($('#wcpr-swipebox-slider .slide.current')),
                    src;
                if (index > 0) {
                    src = $('#wcpr-swipebox-slider .slide').eq(index).contents().find('iframe').attr('src');
                    $('#wcpr-swipebox-slider .slide').eq(index).contents().find('iframe').attr('src', src);
                    index--;
                    this.setSlide(index);
                    this.preloadMedia(index - 1);
                    if (plugin.settings.prevSlide) {
                        plugin.settings.prevSlide(index);
                    }
                } else {
                    $('#wcpr-swipebox-overlay').addClass('leftSpring');
                    setTimeout(function () {
                        $('#wcpr-swipebox-overlay').removeClass('leftSpring');
                    }, 500);
                }
            },
            /* jshint unused:false */
            nextSlide: function (index) {
                // Callback for next slide
            },

            prevSlide: function (index) {
                // Callback for prev slide
            },

            /**
             * Close
             */
            closeSlide: function () {
                jQuery('.mfp-close').click();
                jQuery('.eicon-close').click();
                jQuery('#elementor-lightbox').hide();
                $('html').removeClass('wcpr-swipebox-html');
                $('html').removeClass('wcpr-swipebox-touch');
                $(window).trigger('resize');
                this.destroy();
            },

            /**
             * Destroy the whole thing
             */
            destroy: function () {
                $(window).unbind('keyup');
                $('body').unbind('touchstart');
                $('body').unbind('touchmove');
                $('body').unbind('touchend');
                $('#wcpr-swipebox-slider').unbind();
                $('#wcpr-swipebox-overlay').remove();

                if (!$.isArray(elem)) {
                    elem.removeData('_swipebox');
                }

                if (this.target) {
                    this.target.trigger('wcpr-swipebox-destroy');
                }

                $.swipebox.isOpen = false;

                if (plugin.settings.afterClose) {
                    plugin.settings.afterClose();
                }
            }
        };

        plugin.init();
    };

    $.fn.swipebox = function (options) {

        if (!$.data(this, '_swipebox')) {
            var swipebox = new $.swipebox(this, options);
            this.data('_swipebox', swipebox);
        }
        return this.data('_swipebox');

    };

}(window, document, jQuery));
// source --> https://postelematrace.cz/wp-content/plugins/woo-photo-reviews/js/masonry.min.js?ver=1.2.26 
jQuery(document).ready(function(e){var i,t=-1;let n=0;function r(r){n=0,t=r,r>=i.length&&(t=0),r<0&&(t=i.length-1),e("#reviews-content-left-modal").html(""),e("#reviews-content-left-main").html("");let a=e("#reviews-content-left-modal"),s=e("#reviews-content-left-main"),o=e(".wcpr-grid").find(".wcpr-grid-item").eq(t);if(0==o.find(".reviews-images-container").length)e("#reviews-content-left").addClass("wcpr-no-images");else{o.find(".reviews-images-wrap-left .reviews-images").length>1&&a.html(o.find(".reviews-images-wrap-left").html());let i,t=o.find(".reviews-images-wrap-right").eq(0).html();void 0===t&&(t=o.find(".reviews-images-wrap:first-child > a").html(),i=o.find(".reviews-images-wrap:first-child > a").attr("href")),t&&(e("#reviews-content-left").removeClass("wcpr-no-images"),s.html(t),s.find("img").attr("src",i||s.find("img").data("original_src")||s.find("img").attr("src")).css({width:"auto",height:"auto"}),s.find(".reviews-videos").css({"min-height":"400px"}),s.find(".reviews-videos.reviews-videos-youtube").css({width:"500px"})),a.find(".reviews-images").map(function(){let i=e(this).data("src");i&&e(this).attr("src",i)}),a.find(".reviews-images").closest("a").on("click",function(){n=e(this).data().image_index;let i=e(this).attr("href");jQuery(`<img class="reviews-images" data-original_src="${i}" src="${i}">`);return s.find("source").attr("srcset",i),s.find(".wcpr-review-image-caption").html(e(this).data("image_caption")),!1})}e("#reviews-content-right .reviews-content-right-meta").html(e(".wcpr-grid").find(".wcpr-grid-item").eq(t).find(".review-content-container").html()),e(".wcpr-modal-light-box").fadeIn(200)}function a(){let i=parseInt(e("html").css("top"));e("html").removeClass("wcpr-noscroll"),window.scrollTo({top:-i,behavior:"instant"})}e(".wcpr-grid-item")&&(i=e(".wcpr-grid-item")),e(".wcpr-close").on("click",function(){a(),e(".wcpr-modal-light-box").fadeOut(200),t=-1}),e(".wcpr-modal-light-box .wcpr-overlay").on("click",function(){a(),e(".wcpr-modal-light-box").fadeOut(200),t=-1}),e("#reviews-content-left-main").on("click",".reviews-images",function(){let i=e(this),t=[];e("#reviews-content-left-modal").find("a").map(function(){let i=e(this).find(".reviews-images"),n=e(this).data().image_src?e(this).data().image_src:i.attr("src"),r=e(this).data().image_caption?e(this).data().image_caption:parseInt(e(this).data().image_index)+1+"/"+e("#reviews-content-left-modal").find("a").length;t.push({href:n,title:r})}),0==t.length&&t.push({href:i.data().original_src?i.data().original_src:i.attr("src"),title:i.parent().find(".wcpr-review-image-caption").html()}),e.swipebox(t,{hideBarsDelay:1e5,initialIndexOnArray:n})}),e(document).keydown(function(i){e.swipebox.isOpen||"none"!=e(".wcpr-modal-light-box").css("display")&&(27==i.keyCode&&(a(),e(".wcpr-modal-light-box").fadeOut(200),t=-1),-1!=t&&(37==i.keyCode&&r(t-=1),39==i.keyCode&&r(t+=1)))}),e("body").on("click",".wcpr-grid-item",function(){let t=(i=e(".wcpr-grid-item")).index(e(this));t>=0&&(r(t),function(){if(e(document).height()>e(window).height()){let i=e("html").scrollTop()?e("html").scrollTop():e("body").scrollTop();e("html").addClass("wcpr-noscroll").css("top",-i)}}())}),e("body").on("click",".wcpr-next",function(){r(t+=1)}),e("body").on("click",".wcpr-prev",function(){r(t-=1)})});