{"version":3,"sources":["_510-marketo-form.js"],"names":["e","t","n","r","s","o","u","a","require","i","Error","f","exports","call","length","1","module"],"mappings":"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","file":"510-marketo-form.min.js","sourcesContent":["var $ = require('jquery');\r\n\r\nrequire('core-js');\r\n\r\n$(document).ready(function () {\r\n if (typeof MktoForms2 !== \"undefined\") {\r\n MktoForms2.whenReady(function (form) {\r\n var urlParams = new URLSearchParams(window.location.search);\r\n var entries = urlParams.entries();\r\n var formVals = form.vals();\r\n\r\n var formId = \"mktoForm_\" + form.getId().toString()\r\n var formElement = document.getElementById(formId)\r\n formElement.style.fontFamily = \"inherit\";\r\n formElement.style.fontSize = \"inherit\";\r\n formElement.style.color = \"inherit\";\r\n\r\n for (var pair of entries) {\r\n for (var property in formVals) {\r\n if (formVals.hasOwnProperty(property)) {\r\n if (pair[0].toLowerCase() === property.toLowerCase()) {\r\n formVals[property] = pair[1];\r\n }\r\n }\r\n }\r\n }\r\n\r\n if (formVals[\"uniquesubmitid\"] !== \"undefined\" && formVals[\"uniquesubmitid\"] == \"\") {\r\n formVals[\"uniquesubmitid\"] = uuidv4();\r\n\r\n if (document.querySelector(\"[data-upload-platform]\") && document.querySelector(\"[data-upload-platform]\").dataset.uploadPlatform !== \"undefined\" && document.querySelector(\"[data-upload-platform]\").dataset.uploadPlatform !== \"\") {\r\n form.onSuccess(function () {\r\n form.getFormElem().hide();\r\n var isUniquePopulated = formVals[\"uniquesubmitid\"] !== \"undefined\" && formVals[\"uniquesubmitid\"] !== \"\";\r\n var isDataFormLangPopulated = document.querySelector(\"[data-form-lang]\") !== \"undefined\" && document.querySelector(\"[data-form-lang]\") !== \"\";\r\n var formId = form.getId();\r\n\r\n if (isUniquePopulated && formId && isDataFormLangPopulated) {\r\n getFormItem(document.querySelector(\"[data-upload-platform]\").dataset.uploadPlatform, document.querySelector(\"[data-form-lang]\").dataset.formLang, formId, formVals);\r\n }\r\n\r\n return false;\r\n });\r\n }\r\n }\r\n\r\n form.setValues(formVals);\r\n\r\n // Captcha Submit tracking\r\n form.onValidate(function (isValid) {\r\n if (typeof (dataLayer) != 'undefined' && dataLayer != null) {\r\n var mtCaptchaIsVisible = null;\r\n var mtCaptchaIsVerified = null;\r\n\r\n if (typeof (mtcaptcha) != 'undefined' && mtcaptcha != null && mtcaptcha.getStatus() != null) {\r\n mtCaptchaIsVisible = mtcaptcha.getStatus().isVisible;\r\n mtCaptchaIsVerified = mtcaptcha.getStatus().isVerified;\r\n }\r\n\r\n dataLayer.push({ 'event': 'wcmsFormSubmit', 'formIsValid': isValid, 'mtcaptchaIsVerified': mtCaptchaIsVerified, 'mtcaptchaIsVisible': mtCaptchaIsVisible });\r\n }\r\n });\r\n\r\n form.onSubmit(function () {\r\n //Check for API down\r\n\r\n var request = new XMLHttpRequest();\r\n request.open('GET', '/api/sitecore/MarketoFormModule/CheckServerStatus', true);\r\n\r\n request.onload = function () {\r\n if (request.responseText === \"false\") {\r\n form.submittable(false);\r\n var vals = JSON.stringify(form.vals());\r\n\r\n //Send email if server not responded.\r\n var params = 'postedData=' + vals;\r\n request.open('POST', '/api/sitecore/MarketoFormModule/SendMail');\r\n request.setRequestHeader(\"Content-type\", \"application/x-www-form-urlencoded\");\r\n request.send(params);\r\n var errorMessage = $('input[name=error]').val();\r\n form.showErrorMessage(errorMessage);\r\n } else {\r\n form.submittable(true);\r\n }\r\n };\r\n request.send();\r\n });\r\n\r\n if (document.querySelector(\".mtcaptcha\")) {\r\n var recaptchaErrorEl = $('.recaptcha-error');\r\n\r\n form.submittable(false);\r\n\r\n //jQuery selector $('.[class-name]') was causing issues on IE\r\n document.querySelector(\".mktoButtonRow\").parentNode.insertBefore(document.querySelector(\".mtcaptcha\"), document.querySelector(\".mktoButtonRow\"));\r\n\r\n document.querySelector(\".mktoButtonRow\").parentNode.insertBefore(document.querySelector(\".recaptcha-error\"),\r\n document.querySelector(\".mktoButtonRow\"));\r\n\r\n form.onValidate(function (builtInValidation) {\r\n if (!builtInValidation) return;\r\n\r\n //var recaptchaResponse = grecaptcha.getResponse();\r\n let mtcaptchaToken = mtcaptcha.getVerifiedToken();\r\n if (!mtcaptchaToken) {\r\n recaptchaErrorEl.addClass('mktoInvalid');\r\n } else {\r\n recaptchaErrorEl.removeClass('mktoInvalid');\r\n form.addHiddenFields({\r\n lastRecaptchaUserInput: mtcaptchaToken\r\n });\r\n\r\n form.submittable(true);\r\n }\r\n });\r\n }\r\n\r\n var marketoSelects = document.querySelectorAll('.marketo-form-container .form__marketo__wrapper select');\r\n\r\n if (marketoSelects.length != 0) {\r\n\r\n marketoSelects.forEach(function (item, i) {\r\n\r\n item.parentElement.classList.add('mktoSelectField');\r\n\r\n var selectArrow = document.createElement(\"span\");\r\n selectArrow.className = \"mktoSelectArrow\";\r\n\r\n item.parentElement.insertBefore(selectArrow, item);\r\n selectArrow.appendChild(item);\r\n });\r\n }\r\n });\r\n\r\n function uuidv4() {\r\n var crypto = window.crypto || window.msCrypto;\r\n return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, c =>\r\n (c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16)\r\n );\r\n }\r\n\r\n function createMarketoUploadIframe(confirmation, url, id, formLang) {\r\n const confirmationBody = document.querySelector(confirmation);\r\n let uploadIframe = document.querySelector(\"file-upload-iframe\");\r\n if ((uploadIframe == null || uploadIframe.length < 1) && confirmationBody) {\r\n let confirmationContentUrl = \"/api/sitecore/marketoformmodule/GetConfirmationContent?id=\" + id + \"&lang=\" + formLang;\r\n fetch(confirmationContentUrl)\r\n .then(response => {\r\n if (!response.ok) {\r\n throw new Error(\"Network response failed\");\r\n }\r\n return response.json();\r\n \r\n })\r\n .then(data => {\r\n let formWrapper = document.querySelector(\".form__marketo\");\r\n\r\n if (formWrapper.querySelector(\".image-with-wrapped-content__title\") && data[\"Confirmation Header\"]) {\r\n let formWrapperHeading = formWrapper.querySelector(\".image-with-wrapped-content__title\");\r\n formWrapperHeading.innerHTML = unescape(data[\"Confirmation Header\"]);\r\n }\r\n\r\n if (formWrapper.querySelector(\".marketo-short-description\") && data[\"Confirmation Short Description\"]) {\r\n let formShortDescription = formWrapper.querySelector(\".marketo-short-description\");\r\n formShortDescription.innerHTML = unescape(data[\"Confirmation Short Description\"]);\r\n }\r\n\r\n if (confirmationBody.querySelector(\"div\") && confirmationBody.querySelector(\"div\").childElementCount == 1) {\r\n let confirmationHeadingWrapper = confirmationBody.querySelector(\"div\");\r\n\r\n if (confirmationHeadingWrapper && data[\"Confirmation Form Intro Title\"]) {\r\n confirmationHeadingWrapper.children[0].innerHTML = unescape(data[\"Confirmation Form Intro Title\"]);\r\n }\r\n\r\n if (confirmationHeadingWrapper && data[\"Confirmation Form Intro Body\"]) {\r\n let confirmationHeadingWrapperContent = document.createElement(\"div\");\r\n confirmationHeadingWrapperContent.innerHTML = unescape(data[\"Confirmation Form Intro Body\"]);\r\n confirmationHeadingWrapper.after(confirmationHeadingWrapperContent);\r\n }\r\n }\r\n })\r\n\r\n window.GenericUtilities.createFileUploadIframe(confirmationBody, url);\r\n }\r\n }\r\n\r\n function getFormItem(id, formLang, formId, formVals) {\r\n let apiUrl = \"/api/sitecore/fileuploadplatform/getfileuploadconfiguration?id=\" + id + \"&lang=\" + formLang;\r\n\r\n fetch(apiUrl)\r\n .then(response => {\r\n if (!response.ok) {\r\n throw new Error(\"Network response failed\");\r\n }\r\n return response.json();\r\n })\r\n .then(data => {\r\n if (data[\"Url\"]) {\r\n let iframeUrl = data[\"Url\"] + \"&form=\" + formId + \"&unique=\" + formVals[\"uniquesubmitid\"];\r\n createMarketoUploadIframe(\".form__marketo__wrapper\", iframeUrl, id, formLang);\r\n }\r\n return data;\r\n \r\n })\r\n .catch(error => {\r\n console.log(\"Error:\", error);\r\n })\r\n }\r\n }\r\n});"]}