{"version":3,"sources":["heyday.visible.js","guldmann.sampleFunction.js","guldmann.headerFunction.js","guldmann.site.js","guldmann.settings.js","guldmann.productTop.js","guldmann.relatedProducts.js","guldmann.relatedCases.js","guldmann.relatedVideos.js","guldmann.specifications.js","guldmann.videoBanner.js","guldmann.pdfcollector.js","guldmann.getContactedBanner.js","guldmann.search.js","guldmann.galleryModule.js","guldmann.bannerCarouselModule.js","guldmann.textModule.js","guldmann.casesModule.js","guldmann.menuFilterProductList.js","guldmann.addressList.js","guldmann.emailValidation.js","guldmann.slingguide.js","master.js"],"names":["$","fn","visible","partial","$t","this","$w","window","viewTop","scrollTop","viewBottom","height","_top","offset","top","_bottom","compareTop","compareBottom","jQuery","guldmann","sampleFunction","length","$testClass","console","log","each","$current","removeClass","addClass","init","headerFunction","mobileNavigation","click","toggleClass","e","next","preventDefault","closest","topHeaderScroll","yScroll","yPos","pageYOffset","hasClass","addEventListener","languageSelector","productMenu","parent","menuButton","id","data","setTimeout","filter","undefined","description","site","onload","settings","owlConfiguration","nav","navText","dots","lazyLoad","pagination","margin","video","responsive","0","items","600","960","1200","association","productTop","productFancybox","fancybox","selector","loop","infobar","toolbar","productOwl","index","find","navContainer","owlCarousel","relatedProducts","setupOwl","relatedCases","relatedVideos","carousel","width","specifications","readMore","videoBanner","setupVideoWithFill","setupTwoColumnsEnvironment","imgSrc","attr","css","videoOwl","openVideoOverlay","event","embedUrl","videoUrl","splittedUrl","split","videoId","indexOf","closeVideoOverlay","videoPlayer","parentContainer","parents","thisVideo","html","wrapper","is","fadeOut","pdfcollector","addPDFEvent","$clickedElm","target","$caseElement","add","updateCountAnimation","elementId","pdfCollectorCount","name","worAreas","pdf","workAreas","currentList","getCurrentList","Array","i","push","setCurrentList","getCurrentListCount","pdfCollectorCollection","localStorage","getItem","JSON","parse","setItem","stringify","updateView","updateViewList","updateViewControlButtons","updateDownloadButtonState","button","itemRemoveIcon","theListInHtml","translations","item","downloadIcon","modal","setContent","localizationId","websiteId","tingle","footer","closeMethods","cssClass","casePage","pdfCollectorControls","header","referencesOverview","appendTo","on","controlsElement","references","first","pdfCollector","pdfCollectorBottom","referencesTop","ui","open","close","location","reload","addAll","pdfs","remove","pdfId","splice","initiateDownload","element","post","url","contentType","cases","done","document","fail","alert","getContactedBanner","showBanner","bannerForm","bannerOverlay","show","hideBanner","animateBannerOut","hide","bannerFormClosing","one","search","searchMobile","submit","input","val","searchLink","href","$input","$productsColumn","$contentColumn","keyup","clearTimeout","timer","controller","abort","AbortController","signal","query","ajax","type","get_param","dataType","success","resultProducts","resultContent","Type","count_resultsProduct","count_resultContent","slice_resultsProduct","slice","slice_resultsContent","product","summary","Summary","highlightWord","currentProduct","Url","ImageUrl","Title","append","content","currentContent","searchButton","focus","searchButtonMobile","summaryLength","regEx","RegExp","indexOfQuery","firstPunctuation","charAt","substring","lastIndexOf","replace","resultsFilter","test","ready","ele","text","result","galleryModule","bannerCarouselModule","timeout","startPosition","autoplay","timeoutEle","autoplayTimeout","textModule","casesModule","menuFilterProductList","filterAccordion","menuProductsMobileMenu","ProductFilterMobileMenu","addressList","toggle","elm","$elm","emailValidation","validate","mail","re","slingguide","formSubmit","form","formData","serialize","postUrl","heyday"],"mappings":"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","file":"masterGuldmann.min.js","sourcesContent":["'use strict';\r\n\r\n(function ($) {\r\n    /**\r\n        A small plugin that checks whether elements are within\r\n        the user visible viewport of a web browser.\r\n        only accounts for vertical position, not horizontal.\r\n    **/\r\n\r\n    $.fn.visible = function (partial) {\r\n        var $t = $(this),\r\n        $w = $(window),\r\n        viewTop = $w.scrollTop(),\r\n        viewBottom = viewTop + $w.height(),\r\n        _top = $t.offset().top,\r\n        _bottom = _top + $t.height(),\r\n        compareTop = partial === true ? _bottom : _top,\r\n        compareBottom = partial === true ? _top : _bottom;\r\n\r\n        return ((compareBottom <= viewBottom) && (compareTop >= viewTop));\r\n    };\r\n\r\n})(jQuery);","var guldmann = guldmann || {};\r\n\r\nguldmann.sampleFunction = new function () {\r\n\r\n    this.init = function () {\r\n        sampleFunction();\r\n    }\r\n\r\n\r\n    function sampleFunction() {\r\n        if($('.test-visible').length) {\r\n            var $testClass = $('.test-visible');\r\n\r\n            console.log('class found')\r\n\r\n            $testClass.each(function() {\r\n                var $current = $(this);\r\n\r\n                if($current.visible) {\r\n                    $current.removeClass('test-visible');\r\n                    $current.addClass('fade-in');\r\n                    console.log('class added')\r\n                }\r\n            });\r\n        }\r\n    }\r\n};\r\n\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.headerFunction = new function () {\r\n\r\n    this.init = function () {\r\n        mobileNavigation();\r\n        topHeaderScroll();\r\n        productMenu();\r\n        menuButton();\r\n        description();\r\n        languageSelector();\r\n    };\r\n\r\n    function mobileNavigation() {\r\n\r\n        //toggle mobile menu\r\n        $(\".burger-btn\").click(function () {\r\n            $(this).toggleClass(\"active\");\r\n            $(\".mobile-menu-background\").removeClass(\"search-active\");\r\n            $(\".mobile-search\").removeClass(\"active\");\r\n            $(\".close-menu\").toggleClass(\"active\");\r\n            $(\".the-real-menu\").toggleClass(\"active\");\r\n            $(\".mobile-menu-background\").toggleClass(\"active\");\r\n        });\r\n\r\n        $(\".close-menu\").click(function () {\r\n            $(\".close-menu\").toggleClass(\"active\");\r\n            $(\".burger-btn\").toggleClass(\"active\");\r\n            $(\".the-real-menu\").toggleClass(\"active\");\r\n            $(\".mobile-menu-background\").toggleClass(\"active\");\r\n        });\r\n\r\n\r\n        $(\".level ul li .has-children\").click(function (e) {\r\n            $(this).next(\".level\").addClass(\"active-level\");\r\n            e.preventDefault();\r\n        });\r\n\r\n        $(\".back-step\").click(function () {\r\n            $(this).closest(\".active-level\").removeClass(\"active-level\");\r\n        });\r\n\r\n        $(\".mobile-menu-background\").click(function () {\r\n            $(\".close-menu\").removeClass(\"active\");\r\n            $(\".burger-btn\").removeClass(\"active\");\r\n            $(\".mobile-menu\").removeClass(\"active\");\r\n            $(\".mobile-menu-background\").removeClass(\"active\");\r\n\r\n        });\r\n    }\r\n\r\n\r\n    function topHeaderScroll() {\r\n        if (!$('html').hasClass('lt-ie9')) {\r\n            //Make the top header slimmer when scrolled pass by it\r\n            function yScroll() {\r\n\r\n                var pagetop = $(\".header\"),\r\n                    yPos = window.pageYOffset;\r\n\r\n                if (yPos > 120) {\r\n                    $(\"body\").addClass(\"top-slim-header\");\r\n                } else {\r\n                    $(\"body\").removeClass(\"top-slim-header\");\r\n                }\r\n            }\r\n\r\n            if ($('html').hasClass(\"no-touchevents\")) {  //TODO Maria\r\n                window.addEventListener(\"scroll\", yScroll);\r\n            }\r\n        }\r\n    }\r\n\r\n    function languageSelector() {\r\n        $('.header__language-selector').click(function () {\r\n            if ($('.header__language-selector').hasClass('active')) {\r\n                $(\".header__language-selector\").removeClass(\"active\");\r\n            } else {\r\n                $(\".header__language-selector\").addClass(\"active\");\r\n            }\r\n        });\r\n    }\r\n\r\n    function productMenu() {\r\n        $('.products-container__menu-button').click(function (e) {\r\n            e.preventDefault();\r\n\r\n            if ($(this).parent().hasClass('active')) {\r\n                return false;\r\n            } else {\r\n                $('.products-container ul li').removeClass(\"active\");\r\n                $(this).parent().addClass(\"active\");\r\n            }\r\n        });\r\n    }\r\n\r\n    function menuButton() {\r\n        $('.has-submenu > a').click(function (e) {\r\n            var id = $(this).parent().data('id');\r\n            e.preventDefault();\r\n\r\n            if ($(this).parent().hasClass('active')) {\r\n                $('.has-submenu, .sub-menu').removeClass('active');\r\n                $('.menu-background-overlay').removeClass('active'); \r\n            }\r\n            else\r\n            {\r\n                $('.has-submenu, .sub-menu').removeClass('active');\r\n                $(\"#search-button\").removeClass(\"active\");\r\n\r\n                setTimeout(function () {\r\n                    $('.has-submenu, .sub-menu').filter(function () {\r\n                        return $(this).data('id') !== undefined && $(this).data('id') === id;\r\n                    }).addClass('active');\r\n                }, 300);\r\n\r\n                $('.menu-background-overlay').addClass('active');\r\n\r\n            }\r\n        });\r\n\r\n        $('.menu-background-overlay').click(function (e) {\r\n            e.preventDefault();\r\n            $('.has-submenu, .sub-menu').removeClass('active');\r\n            $('.menu-background-overlay').removeClass('active');\r\n            $(\"#search-button\").removeClass(\"active\");\r\n        });\r\n    }\r\n\r\n    function description() {\r\n        $('.specifications__description div div a').click(function (e) {\r\n            e.preventDefault();\r\n\r\n            if ($(this).parent().hasClass('active')) {\r\n                return false;\r\n            } else {\r\n                $('.products-container ul li').removeClass(\"active\");\r\n                $(this).parent().addClass(\"active\");\r\n\r\n            }\r\n        });\r\n    }\r\n};\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.site = new function () {\r\n\r\n    this.init = function () {\r\n\r\n        // \"onload\" is necessary!!\r\n        window.onload = function () {\r\n            //setupSVGColors(\"object.svg\"); // Not supporting background color change on hover yet, so disabled for now\r\n        }\r\n    };\r\n\r\n    function setupSVGColors(elements) {\r\n\r\n        var $elements = $(elements);\r\n\r\n        $elements.each(function (i, elm) {                 \r\n            var svg = elm.contentDocument.querySelector(\"svg\")\r\n\r\n            svg.setAttribute(\"fill\", \"#fdc600\");\r\n        });\r\n    }\r\n};\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.settings = new function () {\r\n\r\n    this.owlConfiguration = function () {\r\n        return {\r\n            nav: true,\r\n            navText: [\r\n                \"<svg class='icon'><use xmlns:xlink='http://www.w3.org/1999/xlink' xlink:href='/dist/icons/icons.svg#arrow-left'></use></svg>\",\r\n                \"<svg class='icon'><use xmlns:xlink='http://www.w3.org/1999/xlink' xlink:href='/dist/icons/icons.svg#arrow-right'></use></svg>\"\r\n            ],\r\n            dots: false,\r\n            lazyLoad: true,\r\n            pagination: false,\r\n            margin: 10,\r\n            video: true,\r\n            responsive: {\r\n                0: {\r\n                    items: 1\r\n                },\r\n                600: {\r\n                    items: 2\r\n                },\r\n                960: {\r\n                    items: 3\r\n                },\r\n                1200: {\r\n                    items: 4\r\n                }\r\n            }\r\n        };\r\n    }\r\n\r\n    this.association = $(\"html\").hasClass(\"isStepless\") ? \"stepless\" : \"guldmann\";\r\n};\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.productTop = new function () {\r\n\r\n    this.init = function () {\r\n        productFancybox();\r\n        productOwl();\r\n    }\r\n\r\n\r\n    function productFancybox() {\r\n\r\n        $().fancybox({\r\n            selector: '[data-fancybox=\"productGroup\"]',\r\n            loop: true,\r\n            infobar: false,\r\n            toolbar: true \r\n        });        \r\n    }\r\n\r\n    function productOwl() {\r\n        $(\".more-images\").each(function (index) {\r\n            $(this).find(\".owl-nav\").addClass(\"navId-\" + index);\r\n        });\r\n        $(\".more-images-slider\").each(function (index) {\r\n            var settings = guldmann.settings.owlConfiguration();\r\n            settings.navContainer = \".more-images .owl-nav.navId-\" + index;\r\n            settings.responsive = {\r\n                0: {\r\n                    items: 1\r\n                },\r\n                600: {\r\n                    items: 2\r\n                },\r\n                960: {\r\n                    items: 3\r\n                },\r\n                1200: {\r\n                    items: 4\r\n                }\r\n            };\r\n            $(this).owlCarousel(settings);\r\n        });\r\n    }\r\n   \r\n};\r\n\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.relatedProducts = new function () {\r\n\r\n    this.init = function () {\r\n        setupOwl();\r\n    }\r\n\r\n    function setupOwl() {\r\n        $(\".related-products\").each(function (index) {\r\n            $(this).find(\".owl-nav\").addClass(\"navId-\" + index);\r\n        });\r\n        $(\".related-products-carousel\").each(function (index) {\r\n            var settings = guldmann.settings.owlConfiguration();\r\n            settings.navContainer = \".related-products .owl-nav.navId-\" + index;\r\n            $(this).owlCarousel(settings)\r\n        });\r\n    }\r\n};\r\n\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.relatedCases = new function () {\r\n\r\n\tthis.init = function () {\r\n\t\tsetupOwl();\r\n\t}\r\n\r\n\tfunction setupOwl() {\r\n        $(\".related-cases\").each(function (index) {\r\n            $(this).find(\".owl-nav\").addClass(\"navId-\" + index);\r\n        });\r\n        $(\".related-cases__carousel\").each(function (index) {\r\n            var settings = guldmann.settings.owlConfiguration();\r\n            settings.navContainer = \".related-cases .owl-nav.navId-\" + index;\r\n            settings.items = 1;\r\n            settings.responsive = {};\r\n            $(this).owlCarousel(settings);\r\n        });\r\n\t}\r\n};\r\n\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.relatedVideos = new function () {\r\n\r\n    this.init = function () {\r\n        setupOwl();\r\n    }\r\n\r\n    function setupOwl() {\r\n        $(\".related-videos\").each(function (index) {\r\n            $(this).find(\".owl-nav\").addClass(\"navId-\" + index);\r\n        });\r\n        $(\".related-videos__carousel\").each(function (index, carousel) {\r\n            var settings = guldmann.settings.owlConfiguration();\r\n            settings.navContainer = \".related-videos .owl-nav.navId-\" + index;\r\n            settings.items = 2;\r\n\r\n            // If carousel is in a narrow space (on load, not later resizing), it's probably located in a small grid module\r\n            // Change settings so only 1 video is shown\r\n            if ($(carousel).width() < 1170)\r\n                settings.items = 1;\r\n            \r\n            settings.responsive = {};\r\n            $(this).owlCarousel(settings);\r\n        });\r\n    }\r\n};\r\n\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.specifications = new function () {\r\n\r\n    this.init = function () {\r\n        readMore();\r\n    }\r\n\r\n    function readMore() {\r\n\r\n        if ($(\".specifications__description__read-more-box\").height() < 150) {\r\n            $(\".specifications__description__read-more-box\").addClass(\"not-long\");\r\n            $(\".specifications__description__read-more\").addClass(\"not-long\");\r\n        }\r\n\r\n        $(\".specifications__description__read-more\").click(function (e) {\r\n            e.preventDefault();\r\n\r\n            $(\".specifications__description__read-more-box\").toggleClass(\"active\");\r\n            $(\".specifications__description__read-more\").toggleClass(\"active\");\r\n        });      \r\n    }  \r\n};\r\n\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.videoBanner = new function () {\r\n\r\n    this.init = function () {\r\n        setupVideoWithFill();\r\n        setupTwoColumnsEnvironment(); // This needs to render before owl-slider is initialized\r\n        videoOwl();\r\n        openVideoOverlay();\r\n        closeVideoOverlay();\r\n        videoPlayer();\r\n    }\r\n\r\n    function setupVideoWithFill() {\r\n        // Don't use aspect ratio if module is flex-strech\r\n        $(\"div.full-width.flex-stretch .video-banner .video-banner__item\").each(function () {            \r\n            $(this).removeClass(\"use-aspect-ratio\");\r\n        });\r\n    }\r\n\r\n    // If a Video module in a 2 columns layout is found, stretch image to fill entire column\r\n    function setupTwoColumnsEnvironment() {\r\n        \r\n        $(\".flex-stretch .module-video .video-single img\").each(function () {\r\n            var imgSrc = $(this).attr(\"src\");\r\n\r\n            $(this).closest(\".module-video\").css(\"background-image\", \"url(\" + imgSrc + \")\");\r\n            $(this).css(\"opacity\", 0);\r\n        });\r\n    }\r\n\r\n    function videoOwl() {\r\n        $(\".video-banner\").each(function (index) {\r\n            $(this).find(\".owl-nav\").addClass(\"navId-\" + index);\r\n        });\r\n        $(\".video-carousel\").each(function (index) {\r\n            var settings = guldmann.settings.owlConfiguration();\r\n            settings.navContainer = \".video-banner .owl-nav.navId-\" + index;\r\n            settings.items = 1;\r\n            settings.responsive = {};\r\n            $(this).owlCarousel(settings)\r\n        });\r\n    }\r\n\r\n    function openVideoOverlay() {\r\n        //Open video overlay.............................................\r\n        $(\".open-video-overlay, .rte-open-video-overlay a\").click(function (event) {\r\n            event.preventDefault();\r\n\r\n            var videoUrl = $(this).attr(\"href\");\r\n            var splittedUrl = videoUrl.split('/');\r\n            var videoId = splittedUrl[splittedUrl.length - 1];\r\n            var embedUrl;\r\n\r\n            if (videoUrl.indexOf(\"vimeo\") > -1) {\r\n\r\n                var embedUrl = 'https://player.vimeo.com/video/' + videoId + '?autoplay=1\" width=\"500\" height=\"300\" frameborder=\"0\" webkitallowfullscreen mozallowfullscreen allowfullscreen';\r\n            }           \r\n            else {\r\n                embedUrl = '//www.youtube.com/embed/' + videoId + '?enablejsapi=1&rel=0&autoplay=1&showinfo=0&wmode=transparent&hd=1&vq=hd1080';\r\n            }\r\n\r\n            //Embed iframe source + open overlay\r\n            $(\"#fullpage-player\").attr(\"src\", embedUrl);\r\n            $(\"html\").addClass(\"fullpage-overlay-opened\");\r\n            $(\"body\").addClass(\"top-slim-header\");\r\n\r\n        });\r\n    }\r\n\r\n    function closeVideoOverlay() {\r\n        //Close video overlay............................................\r\n        $(\"#close-fullpage-overlay\").click(function () {\r\n            $(\"html\").removeClass(\"fullpage-overlay-opened\");\r\n            $(\"body\").removeClass(\"top-slim-header\");\r\n            setTimeout(function () {\r\n                $(\"#fullpage-player\").attr(\"src\", \"about:blank\");\r\n            }, 1000);\r\n        });\r\n    }\r\n\r\n    function videoPlayer() {\r\n        $(\".video-overlay-image\").click(function () {\r\n\r\n            var parentContainer = $(this).parents(\".video-container\");\r\n            var thisVideo = parentContainer.find(\".video-id\").html();\r\n            var wrapper = $(this).parents(\".module-video\");\r\n\r\n            if (parentContainer.find(\".vimeo-video-container\").length) {\r\n                var embedUrl = 'https://player.vimeo.com/video/' + thisVideo + '?autoplay=1\" width=\"500\" height=\"300\" frameborder=\"0\" webkitallowfullscreen mozallowfullscreen allowfullscreen';\r\n\r\n                if ($(wrapper).is(\".show-in-overlay\")) {\r\n                    $('#fullpage-player').attr('src', embedUrl);\r\n                    $('html').addClass('fullpage-overlay-opened');\r\n                    $('body').addClass('top-slim-header');\r\n                }\r\n                else {\r\n                    parentContainer.find(\".video-overlay-image\").fadeOut();\r\n                    parentContainer.find(\".video-id\").html('<iframe src=\"' + embedUrl + '\"></iframe>');\r\n                }\r\n            }\r\n            else {\r\n                var embedUrl = '//www.youtube.com/embed/' + thisVideo + '?enablejsapi=1&rel=0&autoplay=1&showinfo=0&wmode=transparent';\r\n\r\n                if ($(wrapper).is(\".show-in-overlay\")) {\r\n                    $('#fullpage-player').attr('src', embedUrl);\r\n                    $('html').addClass('fullpage-overlay-opened');\r\n                    $('body').addClass('top-slim-header');\r\n                }\r\n                else {\r\n                    parentContainer.find('.video-overlay-image').fadeOut();\r\n                    parentContainer.find(\".video-id\").html('<iframe src=\"' + embedUrl + '\"></iframe>');\r\n                }\r\n            }\r\n\r\n        });\r\n    }\r\n\r\n}\r\n\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.pdfcollector = new function () {\r\n\r\n    // Initiate modal for later use\r\n    var modal = new tingle.modal({\r\n        footer: false,\r\n        closeMethods: ['overlay', 'escape'],\r\n        cssClass: ['cases-overview-modal']\r\n    });\r\n\r\n    // Strongly type ids from DOM, to easily maintain naming and lookup\r\n    var elementId = {\r\n        // Caseoverview\r\n        casePage: \".cases-overview\",\r\n\r\n        // PDF Collector\r\n        pdfCollectorControls: \".pdfcollector-controls\",\r\n        pdfCollectorCount: \".cases-selected-count\",\r\n\r\n        // Others\r\n        header: \".header\",\r\n        referencesOverview: \".references-overview\"\r\n    };\r\n\r\n    var translations = {};\r\n    var localizationId;\r\n    var websiteId;\r\n\r\n    this.init = function () {\r\n\r\n        // Only setup if we are in the right environment\r\n        if (!$(elementId.pdfCollectorControls).length)\r\n            return;\r\n\r\n        // Move control buttons to the header, so they're always visible when user is scrolling\r\n        if ($(elementId.header).is(\":visible\")) {\r\n            $(elementId.pdfCollectorControls).appendTo(elementId.header);\r\n            $('body').addClass('tall-header');\r\n        }\r\n\r\n        // Hookup download link for each case\r\n        $(elementId.casePage).on(\"click\", \".case a.add\", addPDFEvent);\r\n\r\n        var controlsElement = $(elementId.pdfCollectorControls);\r\n        translations = controlsElement.data(\"translations\");\r\n        localizationId = controlsElement.data(\"localization\");\r\n        websiteId = controlsElement.data(\"website-id\");\r\n\r\n        // Pull previously saved list of PDFs and prepare to show in overlay\r\n        updateView();\r\n\r\n        window.addEventListener(\"scroll\", function () {\r\n            var references = $(elementId.referencesOverview).first();\r\n            var pdfCollector = $(elementId.pdfCollectorControls).first();\r\n            if (references && pdfCollector) {\r\n                var pdfCollectorBottom = pdfCollector.offset().top + 85;\r\n                var referencesTop = references.offset().top;\r\n                if (pdfCollectorBottom >= referencesTop) {\r\n                    if (!pdfCollector.hasClass(\"hidden-md\")) {\r\n                        pdfCollector.addClass(\"hidden-md\");\r\n                    }\r\n                }\r\n                else if (pdfCollector.hasClass(\"hidden-md\")){\r\n                    pdfCollector.removeClass(\"hidden-md\");\r\n                }\r\n            }\r\n        });\r\n    }\r\n\r\n    // Expose the only ui methods we want to hand out control of\r\n    this.ui = new function ()\r\n    {\r\n        this.open = function () {\r\n            modal.open();\r\n        }\r\n\r\n        this.close = function () {\r\n            modal.close();\r\n            window.location.reload();\r\n        }\r\n    }\r\n\r\n    this.add = function (id, name, workAreas)\r\n    {\r\n        return add(id, name, workAreas);\r\n    }\r\n\r\n    this.addAll = function (pdfs) {\r\n        // Reuse individual behavoir for adding a case pdf to the list\r\n        $(elementId.casePage + \" .case a.add\").click();\r\n\r\n        // After adding all, the only logical next step, is to download the list\r\n        guldmann.pdfcollector.ui.open();\r\n    }\r\n\r\n    this.remove = function (pdfId) {\r\n        var currentList = getCurrentList();\r\n\r\n        if (typeof (currentList) == \"undefined\")\r\n            return;\r\n\r\n        for (var i in currentList)\r\n        {\r\n            if (currentList[i].id == pdfId)\r\n                currentList.splice(i, 1);\r\n        }\r\n\r\n        setCurrentList(currentList);\r\n\r\n        if (currentList.length == 0)\r\n        {\r\n            modal.close();\r\n            window.location.reload();\r\n        }\r\n    }\r\n\r\n    function addPDFEvent(event) {\r\n        event.preventDefault();\r\n\r\n        var $clickedElm = $(event.target);\r\n        var $caseElement = $clickedElm.closest(\".case\");\r\n\r\n        add(\r\n            $caseElement.data(\"id\"),\r\n            $caseElement.data(\"name\"),\r\n            $caseElement.data(\"work-area\")\r\n        );\r\n\r\n        // Add visual cue to the clicked button\r\n        $clickedElm.addClass(\"added\");\r\n\r\n        // Also add visuals to the Download button, so user knows it has been updated \r\n        // and presents the next step\r\n        var updateCountAnimation = function () { $(elementId.pdfCollectorCount).toggleClass(\"updated\") };\r\n        updateCountAnimation();\r\n        setTimeout(updateCountAnimation, 3000);\r\n    }\r\n\r\n    function add(id, name, worAreas) {\r\n\r\n        var pdf = {\r\n            id: id,\r\n            name: name,\r\n            workAreas: worAreas\r\n        };\r\n\r\n        var currentList = getCurrentList();\r\n\r\n        // If no list has previously been made, initialize it\r\n        if (typeof (currentList) == \"undefined\" || currentList == null)\r\n            currentList = new Array();\r\n\r\n        // Make sure we don't add duplicates\r\n        for (var i in currentList)\r\n            if (currentList[i].id == pdf.id)\r\n                return false;\r\n\r\n        currentList.push(pdf);\r\n        setCurrentList(currentList);\r\n\r\n        return false;\r\n    }\r\n\r\n    this.initiateDownload = function(element) {\r\n        var $clickedElm = $(element);\r\n        $clickedElm.addClass(\"loading\");\r\n\r\n        // When user clicks the download button, have the API merge the PDFs, while letting the user know we're currently working\r\n        // When the merging is complete, we get a unique url for the composed file    \r\n        $.post({\r\n            url: \"/umbraco/api/pdf/prepare\",\r\n            contentType: \"application/json\",\r\n            data: JSON.stringify({ websiteId: 1, localizationId: localizationId, cases: getCurrentList() })\r\n        })\r\n            .done(function (data) {\r\n\r\n                // Let the download button be the visual indicator for showing we're working on the request\r\n                $clickedElm.removeClass(\"loading\").addClass(\"loaded\");\r\n\r\n                // Redirect the users browser, so download begins\r\n                document.location = \"/umbraco/api/pdf/download/\" + data;\r\n            }).fail(function () {\r\n                //TODO: Add a nicer error message\r\n                alert(\"No!\");\r\n            });\r\n    }\r\n\r\n    function getCurrentListCount() {\r\n        return getCurrentList().length;\r\n    }\r\n\r\n    function getCurrentList() {\r\n        var pdfCollectorCollection = localStorage.getItem('pdfcollector');\r\n        if (pdfCollectorCollection == null)\r\n            return [];\r\n\r\n        return JSON.parse(pdfCollectorCollection);\r\n    }\r\n\r\n    function setCurrentList(currentList) {\r\n        localStorage.setItem('pdfcollector', JSON.stringify(currentList));\r\n        updateView();\r\n    }\r\n\r\n    function updateView() {\r\n        updateViewList();\r\n        updateViewControlButtons();\r\n        updateDownloadButtonState();\r\n    }\r\n\r\n    function updateDownloadButtonState() {\r\n        var button = $('.download-cases');\r\n        if (getCurrentListCount() == 0) {\r\n            button.addClass(\"not-enabled\");\r\n        } else {\r\n            button.removeClass(\"not-enabled\");\r\n        }\r\n    }\r\n\r\n    function updateViewControlButtons() {\r\n        $(elementId.pdfCollectorCount).html(getCurrentListCount());\r\n    }\r\n\r\n    // Show things from our list in the overlay\r\n    function updateViewList() {\r\n\r\n        var currentList = getCurrentList();        \r\n\r\n        // Build overlay view\r\n        var itemRemoveIcon =\r\n           \"<svg class='icon'>\" +\r\n                \"<use xmlns:xlink='http://www.w3.org/1999/xlink' xlink:href='/dist/icons/icons.svg#close'></use>\" +\r\n            \"</svg>\";\r\n        var theListInHtml = \"<h3 class='headline'>\" + translations[\"Cases.Overlay.Headline\"] + \"</h3>\";\r\n        theListInHtml += \"<a href='#' onclick='guldmann.pdfcollector.ui.close();return false;' class='close'>\" + itemRemoveIcon + \"</a>\";\r\n        theListInHtml += \"<ul>\";\r\n        for (var id in currentList)\r\n        {\r\n            var item = currentList[id];\r\n\r\n            \r\n\r\n            theListInHtml +=\r\n                \"<li data-id=\" + item.id + \">\" +\r\n                    \"<strong>\" + item.workAreas + \"</strong>\" +\r\n                    \"<h4 class='item-headline'>\" + item.name + \"</h4>\" +\r\n                    \"<a href='#' onclick='guldmann.pdfcollector.remove(\" + item.id + \");return false;' class='item-close'>\" + itemRemoveIcon + \"</a>\" +\r\n                \"</li>\";\r\n        }\r\n\r\n        var downloadIcon =\r\n            \"<svg class='icon '>\" +\r\n            \"<use xmlns:xlink='http://www.w3.org/1999/xlink' xlink:href='/dist/icons/icons.svg#document'></use>\" +\r\n            \"</svg>\";\r\n\r\n\r\n        theListInHtml += \"<button class='download-button' onclick='guldmann.pdfcollector.initiateDownload(this);'>\" + downloadIcon + \" \" + translations[\"Cases.Overlay.DownloadButton\"] + \"</button>\";\r\n        theListInHtml += \"</ul>\";\r\n\r\n        modal.setContent(theListInHtml);\r\n    }\r\n};","var guldmann = guldmann || {};\r\n\r\nguldmann.getContactedBanner = new function () {\r\n\r\n    this.showBanner = function () {\r\n        const bannerForm = $(\".get-contacted-banner__form\");\r\n        const bannerOverlay = $(\".contacted-banner__form-overlay\");\r\n        $(\"body\").addClass(\"body-lock\");\r\n\r\n        bannerForm.show();\r\n        bannerOverlay.show();\r\n\r\n        bannerForm.removeClass(\"hidden\")\r\n\r\n        return false;\r\n    }\r\n\r\n    this.hideBanner = function () {\r\n        const bannerForm = $(\".get-contacted-banner__form\");\r\n        const bannerOverlay = $(\".contacted-banner__form-overlay\");\r\n        $(\"body\").removeClass(\"body-lock\");\r\n        bannerForm.addClass(\"closing\");\r\n        const bannerFormClosing = $(\".get-contacted-banner__form\");\r\n\r\n        function animateBannerOut() {\r\n            bannerForm.hide();\r\n            bannerForm.removeClass(\"closing\");\r\n            bannerForm.addClass(\"hidden\");\r\n            bannerOverlay.hide();\r\n        }\r\n\r\n        bannerFormClosing.one(\"animationend\", animateBannerOut);\r\n\r\n        return false;\r\n    }\r\n};\r\n\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.search = new function () {\r\n\r\n    this.init = function () {\r\n        search();\r\n        searchMobile();\r\n        searchButton();\r\n        searchLink();\r\n        resultsFilter();\r\n\r\n        searchButtonMobile();\r\n    }\r\n\r\n    function searchMobile() {\r\n        $('#search-form-mobile').submit(function (e) {\r\n            e.preventDefault();\r\n            var url = $('#search-input-mobile', this).data(\"url\");\r\n            var input = $(\"#search-input-mobile\").val();\r\n            var searchLink = url + \"?search=\" + input;\r\n            window.location.href = searchLink;\r\n        });\r\n    }\r\n\r\n    var controller, signal, timer;\r\n    function search() {\r\n\r\n        var $input = $('#search-input');\r\n        var $productsColumn = $('.search-results--products');\r\n        var $contentColumn = $('.search-results--content');\r\n\r\n        $('#search-form-desktop').submit(function (e) {\r\n            e.preventDefault();\r\n            var url = $('#search-input', this).data(\"url\");\r\n            var input = $(\"#search-input\").val();\r\n            var searchLink = url + \"?search=\" + input;\r\n            window.location.href = searchLink;\r\n        });\r\n        \r\n        $input.keyup(function (e) {\r\n            \r\n            clearTimeout(timer);\r\n\r\n            timer = setTimeout(function() {\r\n                if ($input.val().length > 2) {\r\n                    if (controller) {\r\n                        controller.abort();\r\n                    }\r\n                    controller = new AbortController();\r\n                    signal = controller.signal;\r\n                    var query = $input.val();\r\n                    $.ajax({\r\n                        type: 'GET',\r\n                        url: '/umbraco/api/search/ExecuteSearch?q=' + query,\r\n                        data: { get_param: 'value' },\r\n                        dataType: 'json',\r\n                        signal: signal,\r\n                        success: function (data) {\r\n\r\n                            $('#search-results-products').html('');\r\n                            $('#search-results-content').html('');\r\n\r\n                            var resultProducts = [];\r\n                            var resultContent = [];\r\n\r\n                            $.each(data, function (index, element) {\r\n                                if (element.Type == 'guldmannProduct') {\r\n                                    resultProducts.push(this);\r\n\r\n                                } else if (element.Type == 'steplessProduct') {\r\n                                    resultProducts.push(this);\r\n\r\n                                } else {\r\n                                    resultContent.push(this);\r\n                                }\r\n                            });\r\n\r\n\r\n                            // Number of results\r\n                            var count_resultsProduct = resultProducts.length;\r\n                            var count_resultContent = resultContent.length;\r\n\r\n\r\n                            // Show hide the error message & update results count\r\n                            if (count_resultsProduct > 0) {\r\n                                $('h4 span', $productsColumn).html('(' + count_resultsProduct + ')');\r\n                                $('.search-failure-responce', $productsColumn).hide();\r\n\r\n                            } else {\r\n                                $('h4 span', $productsColumn).html('');\r\n                                $('.search-failure-responce', $productsColumn).show();\r\n                            }\r\n\r\n                            if (count_resultContent > 0) {\r\n                                $('h4 span', $contentColumn).html('(' + count_resultContent + ')');\r\n                                $('.search-failure-responce', $contentColumn).hide();\r\n\r\n                            } else {\r\n                                $('h4 span', $contentColumn).html('');\r\n                                $('.search-failure-responce', $contentColumn).show();\r\n                            }\r\n\r\n\r\n                            // Show hide the \"load all\" button\r\n                            if (count_resultsProduct > 3) {\r\n                                $('.show-all-link', $productsColumn).show();\r\n                            } else {\r\n                                $('.show-all-link', $productsColumn).hide();\r\n                            }\r\n\r\n                            if (count_resultContent > 3) {\r\n                                $('.show-all-link', $contentColumn).show();\r\n                            } else {\r\n                                $('.show-all-link', $contentColumn).hide();\r\n                            }\r\n\r\n\r\n                            // Results to show\r\n                            var slice_resultsProduct = resultProducts.slice(0, 3);\r\n                            var slice_resultsContent = resultContent.slice(0, 3);\r\n\r\n                            // Display first 3 product results\r\n                            $.each(slice_resultsProduct, function (index, product) {\r\n\r\n                                var summary = (product.Summary !== null) ? product.Summary : \"\";\r\n                                summary = highlightWord(query, summary, 150);\r\n\r\n                                var currentProduct = '   <li class=\"search-item\">' +\r\n                                    '       <a href=\"' + product.Url + '\">' +\r\n                                    '           <div class=\"image-container\">' +\r\n                                    '               <img src=\"' + product.ImageUrl + '?height=90&width=90&mode=crop\" />' +\r\n                                    '           </div>' +\r\n                                    '           <div class=\"text-container\">' +\r\n                                    '               <p><b>' + product.Title + '</b></p>' +\r\n                                    '               <p>' + summary + '</p>' +\r\n                                    '           </div>' +\r\n                                    '       </a>' +\r\n                                    '   </li>';\r\n\r\n                                $('#search-results-products').append(currentProduct);\r\n                            });\r\n\r\n\r\n                            // Display first 3 content results\r\n                            $.each(slice_resultsContent, function (index, content) {\r\n                                var summary = (content.Summary !== null) ? content.Summary : \"\";\r\n                                summary = highlightWord(query, summary, 150);\r\n\r\n                                var currentContent = '   <li class=\"search-item\">' +\r\n                                    '       <a href=\"' + content.Url + '\">' +\r\n                                    '           <div class=\"text-container\">' +\r\n                                    '               <p><b>' + content.Title + '</b></p>' +\r\n                                    '               <p>' + summary + '</p>' +\r\n                                    '           </div>' +\r\n                                    '       </a>' +\r\n                                    '   </li>';\r\n\r\n                                $('#search-results-content').append(currentContent);\r\n                            });\r\n                        }\r\n                    });\r\n                    $('.sub-menu--search .search-results').show();\r\n                }\r\n                else {\r\n                    $('.sub-menu--search .search-results').hide();\r\n                }\r\n            }, 300);\r\n        });\r\n\r\n    };\r\n\r\n    function searchLink() {\r\n        $('#search-button .search-results a').click(function (e) {\r\n            e.preventDefault();\r\n            var url = $(this).data(\"url\");\r\n            var filter = $(this).data(\"filter\");\r\n            var input = $('#search-input').val();\r\n\r\n            window.location.href = url + \"?search=\" + input + \"&filter=\" + filter;\r\n        })\r\n    };\r\n\r\n    function searchButton() {\r\n        $(\".header__main-navigation .search\").click(function () {\r\n            if (!$(\"#search-button\").hasClass('active')) {\r\n                $('.has-submenu').removeClass('active');\r\n                $('.sub-menu').removeClass('active'); \r\n                $(\"#search-button\").addClass(\"active\");\r\n                $(\".menu-background-overlay\").addClass(\"active\");\r\n                $('#search-input').focus();\r\n            } else {\r\n                $('.has-submenu').removeClass('active');\r\n                $('.sub-menu').removeClass('active');\r\n                $(\"#search-button\").removeClass(\"active\");\r\n                $(\".menu-background-overlay\").removeClass(\"active\");\r\n            }\r\n        });\r\n    };\r\n\r\n    function searchButtonMobile() {\r\n        $(\".mobile-header .search\").click(function () {\r\n            if (!$(\".mobile-search\").hasClass('active')) {\r\n                $('.mobile-menu').removeClass('active');\r\n                $(\".mobile-search\").addClass(\"active\");\r\n                $(\".mobile-menu-background\").removeClass(\"active\");\r\n                $(\".mobile-menu-background\").addClass(\"search-active\");\r\n                $('#search-input-mobile').focus();\r\n            } else {\r\n                $(\".mobile-search\").removeClass(\"active\");\r\n                $(\".mobile-menu-background\").removeClass(\"search-active\");\r\n            }\r\n        });\r\n    };\r\n    \r\n    function highlightWord(query, summary, summaryLength) {\r\n\r\n        var regEx = new RegExp(query, \"ig\");\r\n\r\n        if (summary.length > summaryLength) {\r\n            var indexOfQuery = summary.indexOf(query);\r\n            var firstPunctuation = 0;\r\n\r\n            for (var i = 0; i <= indexOfQuery; i++) {\r\n                if (summary.charAt(indexOfQuery - i) === '.') {\r\n                    firstPunctuation = indexOfQuery - i + 2;\r\n                }\r\n            }\r\n\r\n            if (indexOfQuery - firstPunctuation > summaryLength-30) {\r\n                summary = \"...\" + summary.substring(indexOfQuery - 8, summary.lastIndexOf(' ', indexOfQuery + summaryLength - 16)) + '...';\r\n            }\r\n            else {\r\n                summary = summary.substring(firstPunctuation, summary.lastIndexOf(' ', firstPunctuation + summaryLength-8)) + '...';\r\n            }\r\n        }\r\n\r\n        return summary.replace(regEx, '<span class=\"search-highlight\">' + query + '</span>')\r\n\r\n    }\r\n\r\n    $(document).ready(function () {\r\n        $(\".highlight-needed\").each(function () {\r\n            var ele = $(this);\r\n            var text = ele.text();\r\n            var query = ele.data(\"highlight-word\");\r\n            var result = highlightWord(query, text, 250);\r\n            ele.html(result);\r\n        })\r\n    })\r\n\r\n    function resultsFilter() {\r\n        if ($('.search-result-page').length) {\r\n            if (/[?&]filter=product/.test(location.search) == false && /[?&]filter=content/.test(location.search) == false) {\r\n                $('.search-filter-all').addClass('active');\r\n            }\r\n\r\n            if (/[?&]filter=product/.test(location.search)) {\r\n                $('.search-filter-product').addClass('active');\r\n            }\r\n\r\n            if (/[?&]filter=content/.test(location.search)) {\r\n                $('.search-filter-content').addClass('active');\r\n            }\r\n        }\r\n    }\r\n}\r\n\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.galleryModule = new function () {\r\n\r\n    this.init = function () {\r\n        setupOwl();\r\n    }\r\n\r\n    function setupOwl() {\r\n        var settings = guldmann.settings.owlConfiguration();\r\n        $(\".module-gallery\").each(function () {\r\n            settings.navContainer = $(this).find(\".owl-nav\");\r\n            $(this).find(\".gallery-slider-carousel\").owlCarousel(settings);\r\n        });\r\n\r\n    }\r\n};\r\n\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.bannerCarouselModule = new function () {\r\n\r\n    this.init = function () {\r\n        setupOwl();\r\n    }\r\n\r\n\tfunction setupOwl() {\r\n\t\tvar timeout = 3000;\r\n\t\tvar settings = {\r\n\t\t\tnav: true,\r\n\t\t\tnavText: [\r\n\t\t\t\t\"<svg class='icon'><use xmlns:xlink='http://www.w3.org/1999/xlink' xlink:href='/dist/icons/icons.svg#arrow-left'></use></svg>\",\r\n\t\t\t\t\"<svg class='icon'><use xmlns:xlink='http://www.w3.org/1999/xlink' xlink:href='/dist/icons/icons.svg#arrow-right'></use></svg>\"\r\n            ],\r\n            startPosition: 0,\r\n\t\t\tdots: true,\r\n\t\t\tlazyLoad: true,\r\n\t\t\tpagination: true,\r\n\t\t\tmargin: 10,\r\n\t\t\tloop: true,\r\n\t\t\tautoplay: true,\r\n\t\t\t//autoplayHoverPause: true,\r\n\t\t\tvideo: true,\r\n\t\t\tresponsive: {\r\n\t\t\t\t0: {\r\n\t\t\t\t\titems: 1\r\n\t\t\t\t}\r\n\r\n\t\t\t}\r\n\t\t};\r\n        $(\".module-banner-carousel\").each(function () {\r\n\t\t\tsettings.navContainer = $(this).find(\".owl-nav\");\r\n\t\t\tvar timeoutEle = $(this).find(\".timeout\");\r\n\t\t\tif (timeoutEle.length) {\r\n\t\t\t\ttimeout = $(timeoutEle).val();\r\n\t\t\t}\r\n\t\t\tsettings.autoplayTimeout = timeout;\r\n            $(this).find(\".banner-carousel\").owlCarousel(settings);\r\n        });\r\n\r\n    }\r\n};\r\n\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.textModule = new function () {\r\n\r\n    this.init = function () {\r\n        readMore();\r\n    }\r\n\r\n    function readMore() {\r\n\r\n        $(\".read-more-btn\").click(function (e) {\r\n            e.preventDefault();\r\n\r\n            $(this).closest(\".module-text\").toggleClass(\"opened\");\r\n            $(this).toggleClass(\"active\");\r\n        });\r\n\r\n    }\r\n};\r\n\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.casesModule = new function () {\r\n\r\n    this.init = function () {\r\n        setupOwl();\r\n    }\r\n\r\n    function setupOwl() {\r\n        var settings = guldmann.settings.owlConfiguration();\r\n        settings.navContainer = \".module-cases .owl-nav\";\r\n        settings.responsive = {\r\n            0: {\r\n                items: 1\r\n            },\r\n            600: {\r\n                items: 2\r\n            },\r\n            960: {\r\n                items: 3\r\n            },\r\n            1200: {\r\n                items: 3\r\n            }\r\n        };\r\n\r\n        // HTML for each case is designated for use in bootstrap.\r\n        // Remove bootstrap references and let Owl2 do its work.\r\n        $(\".module-cases .owl-carousel\").find(\"[class^='col-sm-']\").removeClass();\r\n\r\n        // Make items to carousel\r\n        $(\".module-cases .owl-carousel\").owlCarousel(settings);\r\n    }\r\n};\r\n\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.menuFilterProductList = new function () {\r\n\r\n\tthis.init = function () {\r\n        filterAccordion();\r\n        menuProductsMobileMenu();\r\n        ProductFilterMobileMenu();\r\n\t}\r\n\r\n    function filterAccordion() {\r\n        $(\".filter-header\").click(function (e) {\r\n            e.preventDefault();\r\n            $(this).parent().toggleClass(\"active\");\r\n        });\r\n    }\r\n\r\n    function menuProductsMobileMenu() {\r\n        $(\".mobile-buttons__menu-products\").click(function () {\r\n            $(\".menu-products-mobile-menu\").toggleClass(\"active\");\r\n            $(\".mobile-menu-background\").toggleClass(\"active\");\r\n\r\n        });\r\n\r\n        $(\".close-menu\").click(function () {\r\n            $(\".menu-products-mobile-menu\").toggleClass(\"active\");\r\n            $(\".mobile-menu-background\").toggleClass(\"active\");\r\n\r\n        });\r\n    }\r\n\r\n    function ProductFilterMobileMenu() {\r\n        $(\".mobile-buttons__product-filters\").click(function () {\r\n            $(\".product-filter-mobile-menu\").toggleClass(\"active\");\r\n            $(\".mobile-menu-background\").toggleClass(\"active\");\r\n\r\n        });\r\n\r\n        $(\".close-menu\").click(function () {\r\n            $(\".product-filter-mobile-menu\").toggleClass(\"active\");\r\n            $(\".mobile-menu-background\").toggleClass(\"active\");\r\n\r\n        });\r\n    }\r\n\r\n\r\n    \r\n};\r\n\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.addressList = new function () {\r\n\r\n    this.toggle = function(elm) {\r\n        var $elm = $(elm);\r\n        var parent = $elm.parent(\"li\");\r\n        parent.toggleClass(\"active\").addClass(\"removetarget\");\r\n    }\r\n};\r\n\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.emailValidation = new function () {\r\n\r\n    this.validate = function (mail) {\r\n        // https://stackoverflow.com/questions/46155/how-to-validate-email-address-in-javascript\r\n        var re = /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\r\n        return re.test(mail);\r\n    }\r\n};\r\n\r\n","var guldmann = guldmann || {};\r\n\r\nguldmann.slingguide = new function () {\r\n\r\n    this.init = function () {\r\n        formSubmit();\r\n    }\r\n\r\n    function formSubmit() {\r\n        $(\".sling-guide .contour form [type=submit]\").on(\"click\", function (e) {\r\n            e.preventDefault();\r\n            var form = $(this).closest(\"form\");\r\n            var formData = $(form).serialize();\r\n            var postUrl = $(form).attr('action');\r\n            $.ajax({\r\n                url: postUrl,\r\n                type: \"POST\",\r\n                data: formData,\r\n                success: function (e) {\r\n                    $(\".sling-guide__form\").hide();\r\n                    $(\".sling-guide__form-thank-you\").show();\r\n                }\r\n            });\r\n            return false;\r\n        });\r\n    }\r\n};\r\n\r\n","/* Heyday\r\n05/2017 - Mads Rode\r\n********************************************************************/\r\n\r\nvar heyday = heyday || {};\r\nvar guldmann = guldmann || {};\r\n\r\n\r\n/*\r\n\tPlease note that master.js is meant as an pickup file for all the \r\n\tvarious components in the projects. Therefor it is not viable to\r\n\twrite functions directly in this file.  \r\n\r\n\tWhen building scripts please follow the object syntax describet in current_project.sampleFunction.js\r\n\tand avoid implementing other $(function() {}) calls than the one found in master.js\r\n\r\n\tWhenever creating and importing new .js files, please remember to run \r\n\tthe command \"gulp\" and if needed re-innitiate live review with \"gulp watch\"\r\n*/\r\n\r\n\r\n// Document ready\r\n$(function () {\r\n\r\n    guldmann.sampleFunction.init(); \r\n    guldmann.headerFunction.init();\r\n    guldmann.site.init();\r\n    \r\n    guldmann.productTop.init();\r\n    guldmann.relatedProducts.init();\r\n    guldmann.relatedCases.init();\r\n    guldmann.relatedVideos.init();\r\n    guldmann.specifications.init();\r\n    guldmann.videoBanner.init();\r\n    guldmann.pdfcollector.init();\r\n    //GULDMANN-924\r\n    //guldmann.googleMaps.init();\r\n\r\n    guldmann.galleryModule.init();\r\n    guldmann.textModule.init();\r\n    guldmann.casesModule.init();\r\n\r\n    guldmann.menuFilterProductList.init();\r\n    guldmann.slingguide.init();\r\n\tguldmann.search.init();\r\n\tguldmann.bannerCarouselModule.init();\r\n}); // Document ready end\r\n"]}