{"version":3,"sources":["grapple.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"grapple.js","sourcesContent":["(function ($) {\n\n    $(document).ready(function(){\n        __functionalityHelpers();\n        __styleHelpers();\n        __animations();\n    });\n\n    $(window).resize(function(){\n        __homeSlider();\n        __categorySlider();\n        __recipeSlider();\n        __halfProductsSlider();\n        __subMenuOpen();\n    });\n\n    var __functionalityHelpers = function()\n    {\n        __cookieNotice();\n        __siteSwitcher();\n        __backToTop();\n        __usermanualSearch();\n        __categorySelector();\n        __csrfHeader();\n        __newsLetterSignup();\n        __isotopeFiltering();\n        __subMenu();\n        __subMenuOpen();\n        __infiniteLoad();\n        __floatingNav();\n        __scrollArrow();\n        __openCreateAccount();\n\n    }\n\n    var __styleHelpers = function()\n    {\n        __sliders();\n\n        /** Navigational Helpers */\n        __mobileMenu();\n        __floatingNavHighlight();\n        __scrollTo();\n\n        /** Opening and Closing things */\n        __takeoverClose();\n        __takeoverOpen();\n        __searchOpen();\n        __filterOpen();\n        __revealReviews();\n        __inPageNav();\n\n        __inview('.recipes__listing');\n        __headerHide();\n\n        __expandableCheckbox();\n\n    }\n\n    var __animations = function()\n    {\n        __bannerSlideIn('.hero__slider-slide.swiper-slide-active');\n        __bannerSlideIn('.hero__static-active');\n    }\n\n    var __expandableCheckbox = function()\n    {\n        $('.expandable__checkbox-trigger').click(function (e) {\n            $('.expandable__checkbox-content').removeClass('expandable__checkbox-content-active');\n            $(this).parent().siblings('.expandable__checkbox-content').addClass('expandable__checkbox-content-active');\n        });\n    }\n\n    var __openCreateAccount = function()\n    {\n        $('.expand-register').click(function(e){\n            e.preventDefault();\n            $(this).remove();\n            $('.register-form').toggleClass('visible');\n        });\n\n    }\n\n    var __subMenuOpen = function()\n    {\n        if( $( window ).width() >= 1024) {\n            var item = $('.navigation__item-has-sub');\n\n            item.hover(function (e) {\n                var wrap = $(this).next();\n                wrap.addClass('submenu-active');\n                $('.submenu-wrap').css({height:0});\n                __subMenuTimelineIn(wrap);\n            }, function (e) {\n                var wrap = $(this).next();\n                wrap.removeClass('submenu-active');\n                if ($('.submenu:hover').length == 0) {\n                    __subMenuTimelineOut(wrap);\n                }\n            });\n            var submenu = $('.submenu');\n            submenu.hover(function () { }, function () {\n                $('.submenu-wrap').css({height:0});\n            });\n        } else {\n            $('.submenu-wrap').css({height:0});\n        }\n\n    }\n\n    var __subMenuTimelineOut = function( wrap )\n    {\n        var menu = wrap.children('.submenu');\n        menu.addClass('animating-menu');\n        menu.find(\".recipes__listing\").removeClass(\"inview\");\n        var wrapHeight = menu.outerHeight();\n        TweenMax.fromTo(wrap, 0.1, { height: wrapHeight }, { height: 0, onComplete: function () {\n            var tl = new TimelineMax();\n            tl.fromTo($('.animating-menu'), 0.2, { autoAlpha: 1 }, { autoAlpha: 0 });\n        }});\n    }\n\n    var __subMenuTimelineIn  = function( wrap )\n    {\n        var menu = wrap.children('.submenu');\n        menu.addClass('animating-menu');\n        menu.find(\".recipes__listing\").addClass(\"inview\");\n        var wrapHeight = menu.outerHeight();\n        TweenMax.fromTo(wrap, 0.4, { height: 0 }, { height: wrapHeight, onComplete: function () {\n            var tl = new TimelineMax();\n            tl.fromTo($('.animating-menu'), 0.2, { autoAlpha: 0 }, { autoAlpha: 1 });\n\n        }});\n\n    }\n\n    var __cookieNotice = function()\n    {\n\n    }\n\n    var __inview = function( sel )\n    {\n        var items = $(sel);\n        var windowHeight = $(window).height();\n        $(window).scroll(function(){\n            var scrollPos = $(window).scrollTop();\n            var bottomScreen = scrollPos + windowHeight;\n            items.each(function(i,item){\n                var itemTop = $(item).offset().top;\n                if (itemTop < (bottomScreen - $(item).height() )) {\n                    $(item).addClass('inview');\n                } else {\n                    $(item).removeClass('inview');\n                }\n            });\n        });\n\n    }\n\n    var __scrollArrow = function()\n    {\n        $('.hero .corner').click(function(e){\n\n            target = ($('.hero').offset().top + $('.hero').height()) - ($('.nav-wrap').height() - 1);\n            $('html, body').animate({ scrollTop: target  }, 1000);\n        });\n    }\n\n    var __headerHide = function()\n    {\n        $(window).scroll(function(){\n            if($(window).width() > 768){\n                var headerHeight = $('.header-top').height() + 3;\n                var navHeight = $('.navigation').height();\n                if($(window).scrollTop() > headerHeight){\n                   // $('.header-top').addClass('hide');\n                    $('.navigation').addClass('fix');\n                    $('.nav-wrap').addClass('fix');\n                    $('.hero').css({ marginTop: navHeight});\n                } else {\n                  //  $('.header-top').removeClass('hide');\n                    $('.navigation').removeClass('fix');\n                    $('.nav-wrap').removeClass('fix');\n                    $('.hero').css({ marginTop: 0 });\n                }\n            }\n        });\n    }\n\n    var __bannerSlideIn = function( selector )\n    {\n        var timeline = new TimelineMax({ paused: false });\n\n        if( $(selector).length  > 0){\n            var slideWidth = $(selector).width();\n            timeline.from(selector + ' .stripe', .75, { x: '-' + (slideWidth + (slideWidth / 2)) })\n                .from(selector + ' .hero__slider-slide-main', 0.5, { y: 50, autoAlpha: 0 })\n                .from(selector + ' .hero__slider-slide-cta', 0.5, { autoAlpha: 0 });\n        }\n\n\n    }\n\n    var __subMenu = function()\n    {\n        $('.navigation__item-has-sub .icon').click(function(e){\n            e.preventDefault();\n            var target = $(this).parent().next();\n            var listings = target.find('.recipes__listing');\n            if( target.hasClass('open') )\n            {\n                target.removeClass('open');\n                listings.removeClass('inview');\n            } else {\n                $('.submenu').removeClass('open');\n                target.addClass('open');\n                listings.addClass('inview');\n            }\n        });\n    }\n\n\n    var __sliders = function()\n    {\n        __homeSlider();\n        __categorySlider();\n        __recipeSlider();\n        __halfProductsSlider();\n    }\n\n    var __siteSwitcher = function()\n    {\n        $('.language__selector-current, .language__selector_countries-close').click(function(e){\n            e.preventDefault();\n            $(this).toggleClass('open');\n            $('.language__selector_countries').toggleClass('open');\n        });\n    }\n\n    var __mobileMenu = function()\n    {\n        $(\".navigation__mobile-open, .header__secondary-icon-menu\").click(\n          function(e) {\n            e.preventDefault();\n            $(this).toggleClass(\"opened\");\n            $(\".navigation\").toggleClass(\"open\");\n          }\n        );\n\n    }\n\n    var __csrfHeader = function()\n    {\n        $.ajaxSetup({\n            headers: {\n                'X-CSRF-TOKEN': $('meta[name=\"_token\"]').attr('content')\n            }\n        });\n    }\n\n\n\n    var __homeSlider = function()\n    {\n        new Swiper('.hero__slider', {\n            wrapperClass: 'hero__slider-wrap',\n            slideClass: 'hero__slider-slide',\n            loop: true,\n            navigation: {\n                nextEl: '.hero__slider-nav-item-next',\n                prevEl: '.hero__slider-nav-item-prev'\n            },\n            effect: 'fade',\n            pagination: {\n                el: '.hero__slider-pagination',\n                type: 'bullets',\n                clickable: true\n            },\n            on: {\n                transitionStart: function () {\n                    var sel = $('.swiper-slide-active');\n                    if (sel.hasClass('hero__slider-slide-dark')) {\n                        $('.hero__slider-pagination').addClass('hero__slider-pagination-dark');\n                    } else {\n                        $('.hero__slider-pagination').removeClass('hero__slider-pagination-dark');\n                    }\n                }\n            }\n        });\n    }\n\n    var __categorySlider = function()\n    {\n        new Swiper('.category__slider', {\n            wrapperClass: 'category__slider-wrap',\n            slideClass: 'category__slider-slide',\n            slidesPerView: 3,\n            slidesPerGroup: 3,\n            autoplay: {\n                delay: 3200\n            },\n            navigation: {\n                nextEl: '.category__slider-nav-item-next',\n                prevEl: '.category__slider-nav-item-prev'\n            },\n            pagination: {\n                el: '.category__slider-pagination',\n                type: 'bullets',\n                clickable: true\n            },\n            breakpoints: {\n                768: {\n                    slidesPerGroup: 1,\n                    slidesPerView: 1\n                }\n            }\n        });\n    }\n\n    var __recipeSlider = function()\n    {\n        new Swiper('.recipes__slider', {\n            wrapperClass: 'recipes__listing-wrap',\n            slideClass: 'recipes__listing-slide',\n            loop: false,\n            slidesPerView: 2,\n            slidesPerGroup: 2,\n            spaceBetween: 20,\n            autoplay: {\n                delay: 5000\n            },\n           pagination: {\n                el: '.recipes__slider-pagination',\n                type: 'bullets',\n                clickable: true\n            },\n            navigation: {\n                nextEl: '.recipes__slider-nav-item-next',\n                prevEl: '.recipes__slider-nav-item-prev'\n            },\n            breakpoints: {\n                768: {\n                    slidesPerGroup: 1,\n                    slidesPerView: 1\n                }\n            }\n        });\n    }\n\n    var __halfProductsSlider = function () {\n        new Swiper('.related__products_slider', {\n            wrapperClass: 'related__products_slider-wrap',\n            slideClass: 'related__products-slide',\n            loop: true,\n            slidesPerView: 1.5,\n            centeredSlides: true,\n            autoplay: {\n                delay: 5000\n            },\n            navigation: {\n                nextEl: '.related__products_slider-nav-item-next',\n                prevEl: '.related__products_slider-nav-item-prev'\n            }\n        });\n    }\n\n    var __categorySelector = function()\n    {\n        $('.category_by_tag').click(function(e){\n            e.preventDefault();\n            var target = $(this).attr('href');\n            $.get(target,function(response){\n                console.log(response);\n                if(response.length > 0)\n                {\n                    $('.category__slider').remove();\n                    $('.grill__categories .category__slider-outer').append(response.html);\n                    __categorySlider();\n                }\n            })\n        });\n    }\n\n    var __takeoverOpen = function()\n    {\n        $('.popup').click(function(e){\n            e.preventDefault();\n            var target = $(this).data('popup'),\n                takeover = $('#' + target).parent('.takeover');\n            takeover.removeClass('closed');\n            $('#' + target).removeClass('closed');\n        });\n    }\n\n    var __takeoverClose = function()\n    {\n        $('.takeover-close').click(function(e){\n            e.preventDefault();\n            var win = $(this).parent()\n                takeover = win.parent();\n\n            win.addClass('closed');\n            takeover.addClass('closed');\n        });\n\n        $('.takeover').click(function(e){\n            var takeover = $('.takeover');\n            takeover.addClass('closed');\n        });\n    }\n\n    var __searchOpen = function()\n    {\n        $(\".no_ecomms-search ,.header__secondary-icon-search\").click(\n          function(e) {\n            e.preventDefault();\n            $(\".search__form\").toggleClass(\"search__form-hidden\");\n            $(this).toggleClass(\"hidden\");\n            $(\".search__form-input\").focus();\n          }\n        );\n    }\n\n    var __filterOpen = function()\n    {\n        $('.listing__page').on('click','.article__filter-title',function(e){\n            e.preventDefault();\n            var dropdown = $(this).next();\n            $(this).parent().toggleClass('open');\n            dropdown.slideToggle('fast');\n        });\n\n        $('.recipes').on('click', '.article__filter-title', function (e) {\n            e.preventDefault();\n            var dropdown = $(this).next();\n            $(this).parent().toggleClass('open');\n            dropdown.slideToggle('fast');\n        });\n\n\n    }\n\n    var __newsLetterSignup = function()\n    {\n        $('.newsletter__signup-submit').click(function(e){\n            e.preventDefault();\n\n            var email = $('#email_address').val(),\n                target = $('.newsletter__signup-form').attr('action');\n\n            $.ajax({\n                method: 'POST',\n                url: target,\n                data: { email: email },\n                success: function(response, textStatus, xhr){\n                    $('.newsletter__signup-error').remove();\n                    $('.newsletter__signup-input').before('<span class=\"newsletter__signup-success\">' + response.success + '</span>');\n                    $('.newsletter__signup-input').remove();\n                    $('.newsletter__signup-submit').remove();\n                },\n                error: function(xhr, textStatus, errorThrown){\n                    $('.newsletter__signup-error').remove();\n                    $('.newsletter__signup-input').before('<span class=\"newsletter__signup-error\">' + xhr.responseJSON.error + '</span>');\n                    $('.newsletter__signup-input').focus();\n                }\n            });\n        })\n    }\n\n    var __scrollTo = function()\n    {\n        $('.scrollTo').on('click', function(e) {\n            e.preventDefault();\n            var target = $(this).attr(\"href\");\n            $('html, body').animate({ scrollTop: $( target ).offset().top },1000);\n        });\n    }\n\n    var __backToTop = function()\n    {\n\n        $(window).scroll(function(e){\n            var bodyHeight = $('body').height(),\n                scrollPoint = $(window).scrollTop();\n            if( scrollPoint > (bodyHeight * 0.15) )\n            {\n                $('.back_to_top').addClass('active');\n            } else {\n                $('.back_to_top').removeClass('active');\n            }\n        });\n\n        $('.back_to_top').on('click', function (e) {\n            e.preventDefault();\n            $('html, body').animate({ scrollTop: 0 }, 1000);\n        });\n\n    }\n\n    var __floatingNavHighlight = function()\n    {\n        var $subNav = $('.product__floating-nav');\n        var $sections = $('.hover__dark, .hover__light, .no__show');\n\n        $sections.waypoint(function (direction) {\n            var $this = $(this.element);\n            if (direction === 'down') {\n                if ($this.hasClass('hover__dark')) {\n                    $subNav.addClass('dark-color');\n                } else if ($this.hasClass('hover__light')) {\n                    $subNav.removeClass('dark-color');\n                } else if( $this.hasClass('no__show')){\n                    $subNav.css({ opacity: '0' });\n                }\n            }\n            }, { offset: '40%'});\n\n        $sections.waypoint(function (direction) {\n            var $this = $(this.element);\n            if (direction === 'up') {\n                if ($this.hasClass('hover__dark')) {\n                    $subNav.css({ opacity: '1' });\n                    $subNav.addClass('dark-color');\n                } else if ($this.hasClass('hover__light')) {\n                    $subNav.css({ opacity: '1' });\n                    $subNav.removeClass('dark-color');\n                } else if( $this.hasClass('no__show')){\n                    $subNav.css({ opacity: '1' })\n                }\n            }\n        }, { offset: '-40%' }\n        );\n\n    }\n\n    var __revealReviews = function()\n    {\n        $('.product__reviews-view').click(function(e){\n            $('.product__reviews-full .bv-wrapper').slideToggle('fast');\n        });\n    }\n\n    var __usermanualSearch = function()\n    {\n\n        $(\"#manuals-search-form\").submit(function (e) {\n            e.preventDefault();\n        });\n\n        $('.user__manuals-input').keyup(function(e){\n            var searchTerm = $(this).val();\n            if( searchTerm.length >= 3 ){\n            $.ajax({\n                url: '/user-manuals/search',\n                method: 'POST',\n                data: {\n                    term: searchTerm\n                },\n                success: function (response, textStatus, xhr) {\n                    var html = '';\n                    $.each(response, function (i, item) {\n                        html += '<a class=\"user__manuals-result\" href=\"' + item.manuals + '\">' + item.value + '</a>';\n                    });\n                    if (html.length > 0) {\n                        $('.user__manuals-result').remove();\n                        $('.user__manuals-results').removeClass('empty')\n                        $('.user__manuals-results h3').after(html);\n                    } else {\n                        $('.user__manuals-results').addClass('empty');\n                    }\n\n                },\n                error: function (xhr, textStatus, errorThrown) {\n\n                }\n            });\n        }\n        });\n    }\n\n    var __inPageNav = function()\n    {\n        $('.in_page_nav-title').click(function(e){\n            e.preventDefault();\n            $(this).parent().toggleClass('open');\n        });\n    }\n\n    var __isotopeFiltering = function()\n    {\n        // store filter for each group\n        var filters = {};\n        if ( $('.listing__grid').length > 0 ){\n            var $grid = $('.listing__grid').imagesLoaded(function(){\n                $grid.isotope({\n                    itemSelector: '.listing__grid .listing',\n                    layoutMode: 'none'\n                });\n            });\n\n        } else {\n            var $grid = $('.recipes__listing__wrap-no-slide').imagesLoaded(function(){\n                $grid.isotope({\n                    itemSelector: '.recipes__listing__wrap-no-slide .recipes__listing',\n                    layoutMode: 'none'\n                });\n            });\n        }\n\n        $grid.on('arrangeComplete', function (event, filteredItems) {\n            var appendText = ((filteredItems.length == 1)) ? $('.listing__count').data('single') :$('.listing__count').data('plural');\n            console.log(appendText);\n            $(\".listing__count\").empty().append('<span class=\"listing__count-number\">' + filteredItems.length +'</span> ' + appendText);\n        });\n\n        $('.article__filters').on('click', '.article__filter-option', function (e) {\n            e.preventDefault();\n\n            var $this = $(this);\n            $this.toggleClass('selected');\n            $this.siblings('.all-items').removeClass('selected');\n\n            var multi = $this.parent().data('multi');\n            var reset = $this.data('reset');\n            if(multi === 'no' || reset === 'yes'){\n                $this.siblings().removeClass('selected');\n            }\n\n            var $selectedItems = $('.article__filter-option.selected');\n            $selectedItems.each( function( counter, selectedItem ){\n                filters[counter] =  $(selectedItem).data('filter') ;\n            });\n\n            // combine filters\n            var filterValue = concatValues(filters);\n\n            $grid.isotope({ filter: filterValue });\n\n        });\n        // flatten object by concatting values\n        function concatValues(obj) {\n            var value = '';\n            for (var prop in obj) {\n                value += obj[prop];\n            }\n            return value;\n        }\n    }\n\n    var __infiniteLoad = function()\n    {\n        var block = $('.infinite-load-block:not(.finished)');\n        if(block.length > 0){\n            url = block.data('load'),\n                blockTop = block.offset().top,\n                windowHeight = $(window).height();\n\n            $(window).scroll(function () {\n                var blockHeight = block.height(),\n                    triggerPoint = blockTop + blockHeight\n                screenBottom = $(window).scrollTop() + windowHeight;\n                if (screenBottom > triggerPoint && !$('.infinite-load-block').hasClass('loading') && !$('.infinite-load-block').hasClass('finished')) {\n                    var nextPage = $('.infinite-load-block').attr('data-next');\n                    $('.infinite-load-block').addClass('loading');\n                    $.ajax({\n                        url: url,\n                        method: 'GET',\n                        data: {\n                            page: nextPage\n                        },\n                        success: function (response, textStatus, xhr) {\n                            if (xhr.status == 200 && response.length > 0) {\n                                $('.infinite-load-block').append(response.html);\n                                $('.infinite-load-block').attr('data-next', response.nextPage);\n                                $('.infinite-load-block').removeClass('loading');\n                                __inview('.recipes__listing');\n                                if (response.lastPage === true) {\n                                    $('.infinite-load-block').addClass('finished');\n                                }\n                            }\n                        },\n                        error: function (xhr) {\n                        }\n                    });\n                }\n            });\n        }\n    }\n\n    var __floatingNav = function()\n    {\n        var headerHeight = $('.header').height();\n        $(window).scroll(function(){\n            if($(window).scrollTop() > headerHeight){\n                $('.product__floating-nav').addClass('floating');\n            } else {\n                $('.product__floating-nav').removeClass('floating');\n            }\n        });\n    }\n\n})(jQuery);"]}