PageSourceSearch

https://www.bezahlbare-blumen.de/theme/58b596f2b9708eaa0be296c194f…/prems-one-page-checkout6.js?1790762016

js bezahlbare-blumen.de collected 2026-10-08 10:41:01 UTC 12,073 bytes, 1 lines download raw bytes

1(()=>{"use strict";class e{static isSupported(){return"undefined"!==document.cookie}static setItem(e,t,i){if(null==e)throw Error("You must specify a key to set a cookie");let r=new Date;r.setTime(r.getTime()+864e5*i);let a="";"https:"===location.protocol&&(a="secure"),document.cookie=`${e}=${t};expires=${r.toUTCString()};path=/;sameSite=lax;${a}`}static getItem(e){if(!e)return!1;let t=e+"=",i=document.cookie.split(";");for(let e=0;e<i.length;e++){let r=i[e];for(;" "===r.charAt(0);)r=r.substring(1);if(0===r.indexOf(t))return r.substring(t.length,r.length)}return!1}static removeItem(e){document.cookie=`${e}= ; expires = Thu, 01 Jan 1970 00:00:00 GMT;path=/`}static key(){return""}static clear(){}}class t{static #e=this.config={validClass:"is-valid",validFeedbackClass:"valid-feedback",invalidClass:"is-invalid",invalidFeedbackClass:"invalid-feedback",defaultMinLength:8};constructor(e){this.config=Object.assign({},t.config,e),this.errorMessages=new Map,this.validators=new Map,this._initDefaultValidators()}_initDefaultValidators(){let e=window.validationMessages;this.addValidator("required",this.validateRequired,e.required),this.addValidator("email",this.validateEmail,e.email),this.addValidator("confirmation",this.validateConfirmation,e.confirmation),this.addValidator("minLength",this.validateMinLength,e.minLength),this.addValidator("pattern",this.validatePattern,e.pattern),this.addValidator("grecaptcha",this.validateGrecaptcha,e.grecaptcha)}addValidator(e,t,i){return e&&e.length?"function"!=typeof t?(console.error(`[FormValidation]: Provided validator for ${e} is no valid function.`),!1):(i?.length&&this.errorMessages.set(e,i),this.validators.set(e,t),!0):(console.error(`[FormValidation]: Invalid name for validator provided. Given "${e}".`),!1)}addErrorMessage(e,t){return e&&e.length?t&&t.length?(this.errorMessages.set(e,t),!0):(console.error("[FormValidation]: Missing or invalid error message provided."),!1):(console.error("[FormValidation]: Missing or invalid name for validator provided."),!1)}setConfig(e,t){this.config[e]=t}validateForm(e,t){if(!this.isFormElement(e))return console.error("[FormValidation]: Provided form is no valid HTML element."),!1;let i=[],r=t;return t||(r=e.querySelectorAll("[data-validation], [required], [pattern]")),r.forEach(e=>{let t=this.validateField(e);t&&t.length>0&&i.push(e)}),i}validateField(e){if(!(e instanceof HTMLElement))return console.error(`[FormValidation]: Provided field is no valid HTML element. Given ${e}.`),!1;if(!this.checkVisibility(e)&&"hidden"!==e.type&&!e.getAttribute("data-validate-hidden"))return this.setFieldNeutral(e),!0;let t=e.getAttribute("data-validation"),i=t?t.split(","):[],r=e.hasAttribute("required"),a=e.hasAttribute("pattern");if(r&&!i.includes("required")&&i.push("required"),a&&!i.includes("pattern")&&i.push("pattern"),0===i.length)return this.setFieldNeutral(e),!0;let s=e.value.trim(),n=i.reduce((t,i)=>{let r=this.validators.get(i);return r?!1===r.call(this,s,e)&&t.push(i):console.warn(`[FormValidation]: No validator registered for validation rule "${i}".`),t},[]);return n.length>0?this.setFieldInvalid(e,n):this.setFieldNeutral(e),n}validateRequired(e,t){let i=t.getAttribute("type");return i&&"checkbox"===i?t.checked:i&&"radio"===i?[...t.form.querySelectorAll(`[type="radio"][name="${t.name}"]`)].some(e=>e.checked):!!e&&e.length&&e.length>0}validateEmail(e){if(!e||0===e.length||!e||0===e.length)return!0;let t=e;if(t.includes("@")){let[e,i]=t.split("@");if(i&&/[^\u0000-\u007F]/.test(i))try{let r=new URL(`https://${i}`).hostname;t=`${e}@${r}`}catch(e){}}return/^[a-zA-Z0-9.!#$%&'*+\\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+$/.test(t)}validateConfirmation(e,t){if(!(t instanceof HTMLElement))return console.error('[FormValidation]: Missing or invalid required parameter "field".'),!0;let i=t.getAttribute("id"),r=i.replace("Confirmation",""),a=document.getElementById(r);return a instanceof HTMLElement?t.value.trim()===a.value.trim():(console.warn(`[FormValidation]: No matching comparison field found for "${i}".`),!0)}validateMinLength(e,t){if(!(t instanceof HTMLElement))return console.error('[FormValidation]: Missing or invalid required parameter "field".'),!0;let i=t.getAttribute("minlength")||this.config.defaultMinLength;return e.length>=i}validatePattern(e,t){if(!(t instanceof HTMLElement))return console.error('[FormValidation]: Missing or invalid required parameter "field".'),!0;let i=t.getAttribute("pattern");if(!i||!e||0===e.length)return!0;try{return RegExp(`^(?:${i})$`).test(e)}catch(e){return console.error(`[FormValidation]: Invalid regex pattern "${i}" for field.`,t,e),!0}}validateGrecaptcha(t,i){if(!(i instanceof HTMLElement))return console.error('[FormValidation]: Missing or invalid required parameter "field".'),!0;let r=i.getAttribute("name");if("_grecaptcha_v3"!==r&&"_grecaptcha_v2"!==r)return!0;
1if(window.useDefaultCookieConsent&&"1"!==e.getItem("cookie-preference"))return i.removeAttribute("data-form-validation-error-message"),document.dispatchEvent(new CustomEvent("showCookieBar")),!1;if(0===t.length){let e=window.validationMessages?.grecaptchaToken;return e&&i.setAttribute("data-form-validation-error-message",e),!1}return i.removeAttribute("data-form-validation-error-message"),!0}setFieldValid(e){e.removeAttribute("aria-invalid"),e.classList.remove(this.config.invalidClass),e.classList.add(this.config.validClass),this.resetFieldFeedback(e)}setFieldInvalid(e,t){e.setAttribute("aria-invalid","true"),e.classList.remove(this.config.validClass),e.classList.add(this.config.invalidClass),this.setFieldValidationMessage(e,t)}setFieldNeutral(e){e.removeAttribute("aria-invalid"),e.classList.remove(this.config.invalidClass),e.classList.remove(this.config.validClass),this.resetFieldFeedback(e)}setFieldRequired(e){let t=e.getAttribute("data-validation"),i=document.querySelector(`[for="${e.id}"]`);if(i&&!i.querySelector(".form-required-label")){let e=document.createElement("span");e.classList.add("form-required-label"),e.setAttribute("aria-hidden","true"),e.innerHTML=" *",i.appendChild(e)}t?t.includes("required")||e.setAttribute("data-validation",`required,${t}`):e.setAttribute("data-validation","required"),e.setAttribute("aria-required","true")}setFieldNotRequired(e){let t=e.getAttribute("data-validation"),i=document.querySelector(`[for="${e.id}"]`).querySelector(".form-required-label");if(t&&t.includes("required")){let i=t.split(",");i.splice(i.indexOf("required"),1),e.setAttribute("data-validation",i.join(","))}i&&i.remove(),e.removeAttribute("aria-required")}setFieldValidationMessage(e,t){if(!(e instanceof HTMLElement))return console.error('[FormValidation]: Missing or invalid parameter provided for "field".'),!1;if(!t||!t.length)return!0;let i=e.getAttribute("aria-describedby");if(!i)return console.warn('[FormValidation]: field is missing the necessary feedback element referenced with "aria-describedby".',e),!1;let r=i.split(" ").find(e=>e.includes("feedback")),a=document.getElementById(r);if(!(a instanceof HTMLElement))return console.warn("[FormValidation]: Missing form field feedback element to show validation messages."),!1;a.innerHTML="";let s=t[0],n=e.getAttribute("data-form-validation-error-message");if(n||(n=this.errorMessages.get(s)||""),n.length){let e=document.createElement("div");e.classList.add(this.config.invalidFeedbackClass),e.textContent=n,a.appendChild(e)}return!0}resetFieldFeedback(e){let t=e.getAttribute("aria-describedby");if(!t)return!1;let i=t.split(" ").find(e=>e.includes("feedback")),r=document.getElementById(i);return r instanceof HTMLElement&&(r.innerHTML="",!0)}checkVisibility(e){return"function"==typeof e.checkVisibility?e.checkVisibility():!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)}setNoValidate(e){e.setAttribute("novalidate","true")}isFormElement(e){return"form"===e.tagName.toLowerCase()}}let i=window.PluginBaseClass;class r extends i{static #e=this.options={url:""};init(){this.registerEvents()}registerEvents(){let e=document.querySelector("#confirmFormSubmit");e&&e.addEventListener("click",()=>{this.check()})}check(){this.validate("#tos"),this.validate("#privacy"),this.validate("#revocation"),this.validate("#opc-checkout-additional-checkbox")}validate(e){let t=document.querySelector(e);t&&t.getAttribute("required")&&t.classList.toggle("is-invalid",!t.checked)}}let a=window.PluginBaseClass,s=window.PluginBaseClass,n=window.PluginBaseClass,o=window.PluginBaseClass,l=window.PluginBaseClass;class d extends l{static #e=this.options={field:"#opc-register-tab-content input, #opc-register-tab-content select"};init(){let e=this.options;this.inputField=document.querySelectorAll(e.field);let t=document.querySelector("#opc-register-tab-content");t&&t.getAttribute("data-checkout-validation-config")&&this.registerEvents()}registerEvents(){this.inputField.forEach(e=>{""!==e.value.trim()&&e.classList.add("was-validated"),e.addEventListener("change",e=>{let t=e.target;t.value?t.classList.add("was-validated"):t.classList.remove("was-validated")})})}}window.formValidation=new class extends t{setFieldNotRequired(e){let t=e.getAttribute("data-validation"),i=document.querySelector(`[for="${e.id}"]`);if(t){let i=t.split(",");i.splice(i.indexOf("required"),1),e.setAttribute("data-validation",i.join(","))}if(i){let e=i.querySelector(".form-required-label");e&&e.remove()}e.removeAttribute("aria-required")}};let c=window.PluginManager;c.register("PremsOpcValidateTos",r,"#one-page-checkout"),c.register("PremsOpcSetIds",class extends a{init(){this.registerEvents()}registerEvents(){document.querySelectorAll("#one-page-checkout .form-group input").forEach(e
1=>{e.closest(".form-group").id=`${e.id}Container`})}},"#one-page-checkout"),c.register("PremsOpcMovePaypalExpress",class extends s{init(){this.registerEvents()}registerEvents(){let e=document.querySelector('*[data-swag-paypal-express-button="true"]');if(document.querySelectorAll('*[data-swag-paypal-express-button="true"]').length>1){!NodeList.prototype.forEach&&Array.prototype.forEach&&(NodeList.prototype.forEach=Array.prototype.forEach);let e=document.querySelectorAll('*[data-swag-paypal-express-button="true"]');e[1].parentNode.removeChild(e[1])}if(e){if("0"===document.querySelector("#one-page-checkout").getAttribute("data-paypal-express-button-position")){let t=document.querySelector("#before-opc-register-login-tabs");t&&t.insertBefore(e.parentNode,t.firstChild)}else{let t=document.getElementById("prems-paypal-button-below-container"),i=document.createElement("hr");i.classList.add("opc-paypal-seperator"),t&&t.insertAdjacentElement("afterbegin",i),i.insertAdjacentElement("afterend",e.parentElement)}}}},"#one-page-checkout"),c.register("PremsOpcSaveRegisterInput",class extends n{init(){this.registerEvents(),this.isLoading=!1}registerEvents(){document.querySelectorAll(".custom-select").forEach(e=>{e.addEventListener("change",()=>this.savePersonalAction())}),document.querySelectorAll(".form-control").forEach(e=>{e.addEventListener("blur",()=>this.savePersonalAction())})}savePersonalAction(){window.setTimeout(()=>{let e=document.getElementById("one-page-checkout");if(e&&!this.isLoading&&"1"===e.dataset.prefillRegisterFields){this.isLoading=!0;let t=new XMLHttpRequest;t.open("POST",e.getAttribute("data-save-register-input-uri"),!0),t.setRequestHeader("Content-Type","application/x-www-form-urlencoded"),t.send(new URLSearchParams(new FormData(e.querySelector(".register-form")))),t.onreadystatechange=()=>{t.readyState===XMLHttpRequest.DONE&&(200!==t.status&&console.warn("Error: "+t.status),this.isLoading=!1)}}},1e3)}},"#one-page-checkout .register-form"),c.register("PremsEasyCredit",class extends o{init(){this.registerEvents()}registerEvents(){let e=document.getElementsByTagName("easycredit-checkout")[0];if(e){let t=document.getElementById("confirmFormSubmit"),i=e.getAttribute("payment-plan"),r=e.getAttribute("is-active");i?t.disabled=!1:"true"===r&&(t.disabled=!0)}}},"#one-page-checkout"),c.register("PremsRegisterValidation",d,"#one-page-checkout")})();

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.