{"version":3,"file":"woolmark.min.js","sources":["woolmark.min.js"],"sourcesContent":["'use strict';\n\n/**\n * @description Initialize event handlers on landing page\n */\n\nfunction woolmarkCarousel2Init() {\n var $woolmarkCarousel2 = $('.js-woolmark-carousel-2');\n\n var setWoolmarkCarousel2 = function () {\n if ($woolmarkCarousel2.length) {\n if ($woolmarkCarousel2.hasClass('slick-initialized')) {\n $woolmarkCarousel2.slick('unslick');\n }\n\n var isMobile = window.vbqUtils.breakpoint.is('mobileAndTablet'),\n carouselConfig = {\n slidesToShow: 1,\n slidesToScroll: 1,\n dots: false,\n arrows: true\n };\n\n if (!isMobile) {\n carouselConfig.appendArrows = '#js-woolmarkCarousel2Arrows';\n }\n\n $woolmarkCarousel2.slick(carouselConfig);\n }\n };\n\n window.vbqUtils.cache.$window.resize(window.vbqUtils._debounce(function () {\n setWoolmarkCarousel2();\n }, 200));\n\n setWoolmarkCarousel2();\n}\n\nfunction woolmarkCarousel3Init() {\n // Initialize product carousel\n var $woolmarkProductCarousel = $('.js-woolmark-productcarousel'),\n slidesAmount = $woolmarkProductCarousel.attr(\"data-slide-num\");\n\n var setWoolmarkProductCarousel = function () {\n if ($woolmarkProductCarousel.length) {\n if ($woolmarkProductCarousel.hasClass('slick-initialized')) {\n $woolmarkProductCarousel.slick('unslick');\n }\n\n var isMobile = window.vbqUtils.breakpoint.is('mobile'),\n isTablet = window.vbqUtils.breakpoint.is('tablet'),\n isDesktop = window.vbqUtils.breakpoint.is('fromDesktop');\n\n if (!(isDesktop && slidesAmount < 5) && !(isTablet && slidesAmount < 4)) {\n $woolmarkProductCarousel.slick({\n slidesToShow: isMobile ? 1 : (isTablet ? 3 : 4),\n slidesToScroll: isMobile ? 1 : (isTablet ? 3 : 4),\n dots: true,\n arrows: false\n });\n }\n }\n };\n\n window.vbqUtils.cache.$window.resize(window.vbqUtils._debounce(function () {\n setWoolmarkProductCarousel();\n }, 200));\n\n setWoolmarkProductCarousel();\n}\n\nfunction woolmarkCarousel4Init() {\n var $woolmarkCarousel4 = $('.js-woolmark-carousel-4');\n\n var setWoolmarkCarousel4 = function () {\n if ($woolmarkCarousel4.length) {\n if ($woolmarkCarousel4.hasClass('slick-initialized')) {\n $woolmarkCarousel4.slick('unslick');\n }\n\n var isMobile = window.vbqUtils.breakpoint.is('mobileAndTablet'),\n isDesktop = window.vbqUtils.breakpoint.is('desktop');\n\n $woolmarkCarousel4.slick({\n slidesToShow: isMobile ? 1 : (isDesktop ? 2 : 3),\n slidesToScroll: isMobile ? 1 : (isDesktop ? 2 : 3),\n dots: true,\n arrows: false,\n infinite: isMobile ? true : false\n });\n }\n };\n\n window.vbqUtils.cache.$window.resize(window.vbqUtils._debounce(function () {\n setWoolmarkCarousel4();\n }, 200));\n\n setWoolmarkCarousel4();\n}\n\nfunction woolmarkNewsletterInit() {\n // standard form validation (formPrepare.js, validationLogic.js, ...) can not be used here\n // so the form status and error message are managed directly through jQuery validator\n var $form = $('.keep-me-informed-form');\n\n if ($form.length) {\n var $formfieldset = $form.find('.gl_form-group'),\n $email = $form.find('.email'),\n $errorMessage = $form.find('.gl_error-message'),\n validator = $form.validate(),\n options = {};\n\n $email.rules('add', {\n required: true,\n email: true\n });\n\n $email.on('keyup input', window.vbqUtils._debounce(function () {\n if ($(this).val() !== '') {\n validator.element(this);\n }\n }, 200));\n\n // put back the form in pristine state (input with no value, no error)\n validator.resetForm();\n $formfieldset.removeClass('gl_has-error');\n\n //handle submit form logic for footer newsletter form\n $form.on('submit', function (e) {\n e.preventDefault();\n\n var $thisForm = $(this);\n\n if (!$thisForm.valid()) {\n return false;\n }\n\n var $thisFieldset = $thisForm.find('.gl_form-group'),\n $thisSubmitButton = $thisForm.find('.form-submit'),\n $thisEmail = $thisForm.find('.email'),\n email = $thisEmail.val(),\n source = $thisEmail.data('source'),\n optin = $thisForm.find('.optin').prop('checked');\n\n //send email to server\n $.ajax({\n method: 'POST',\n url: window.Urls.subscribeToNewsletter,\n data: {\n email: email,\n source: source,\n optinconsent: optin\n },\n cache: false,\n beforeSend: function () {\n options = {};\n window.vbqUtils.progress.show($thisSubmitButton);\n $thisSubmitButton.attr('disabled', 'disabled');\n $thisFieldset.removeClass('gl_has-success gl_has-error');\n }\n }).done(function (data) {\n // GDPR-33 - GDPR - Revision of consents\n if (!data.error && data.type == 'success') {\n $thisForm.find('.gl_form-group').addClass('gl_has-success');\n $('.js-keepMeInformedForm').addClass('hidden');\n $('.js-keepMeInformedSuccess').removeClass('hidden');\n }\n // GDPR-26 - GDPR - Footer Modal - New consent modal\n else if (!data.error && data.type == 'consents') {\n $.ajax({\n method: 'POST',\n url: window.Urls.consentForNewsletterSubscription,\n data: {\n email: email,\n source: source,\n optinconsent: optin\n },\n cache: false,\n beforeSend: function () {\n options = {};\n }\n }).done(function (data) {\n window.vbqUtils.progress.hide();\n\n if (!data.alert && data.type == 'success') {\n $thisFieldset.addClass('gl_has-success');\n $('.js-keepMeInformedForm').addClass('hidden');\n $('.js-keepMeInformedSuccess').removeClass('hidden');\n }\n else {\n options[$thisEmail.attr('name')] = window.Resources.VALIDATE_EMAIL_GLOBAL;\n validator.showErrors(options);\n $thisSubmitButton.removeAttr('disabled');\n }\n }).fail(function () {\n window.vbqUtils.progress.hide();\n options[$thisEmail.attr('name')] = window.Resources.SERVER_ERROR;\n validator.showErrors(options);\n $thisSubmitButton.removeAttr('disabled');\n });\n }\n else {\n $thisFieldset.removeClass('gl_loading');\n switch (data.type) {\n case 'format':\n options[$thisEmail.attr('name')] = window.Resources.VALIDATE_EMAIL;\n break;\n case 'already':\n options[$thisEmail.attr('name')] = window.Resources.VALIDATE_EMAIL_ALREADY;\n break;\n default:\n options[$thisEmail.attr('name')] = window.Resources.VALIDATE_EMAIL_GLOBAL;\n break;\n }\n validator.showErrors(options);\n $thisSubmitButton.removeAttr('disabled');\n }\n }).fail(function () {\n $thisFieldset.removeClass('gl_loading');\n options[$thisEmail.attr('name')] = window.Resources.SERVER_ERROR;\n validator.showErrors(options);\n $thisSubmitButton.removeAttr('disabled');\n });\n });\n }\n}\n\nwindow.addEventListener('mainJsLoaded', function () {\n woolmarkNewsletterInit();\n woolmarkCarousel2Init();\n woolmarkCarousel3Init();\n woolmarkCarousel4Init();\n});\n"],"names":["woolmarkCarousel2Init","setWoolmarkCarousel2","carouselConfig","$woolmarkCarousel2","length","hasClass","slick","slidesToShow","slidesToScroll","dots","arrows","window","vbqUtils","breakpoint","is","appendArrows","$","cache","$window","resize","_debounce","woolmarkCarousel3Init","setWoolmarkProductCarousel","isMobile","isTablet","$woolmarkProductCarousel","slidesAmount","attr","woolmarkCarousel4Init","setWoolmarkCarousel4","isDesktop","$woolmarkCarousel4","infinite","woolmarkNewsletterInit","$formfieldset","$email","validator","options","$form","find","validate","rules","required","email","on","this","val","element","resetForm","removeClass","e","preventDefault","$thisForm","valid","$thisFieldset","$thisSubmitButton","$thisEmail","source","data","optin","prop","ajax","method","url","Urls","subscribeToNewsletter","optinconsent","beforeSend","progress","show","done","error","type","Resources","VALIDATE_EMAIL","VALIDATE_EMAIL_ALREADY","VALIDATE_EMAIL_GLOBAL","showErrors","removeAttr","consentForNewsletterSubscription","hide","alert","addClass","fail","SERVER_ERROR","addEventListener"],"mappings":"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"}