1const descriptionToggle=document.querySelector(".product__descriptionToggle"),description=document.querySelector(".product__description");descriptionToggle&&description&&descriptionToggle.addEventListener("click",function(){console.log("123321");const isExpanded=description.classList.toggle("showfullDescription");this.innerHTML=isExpanded?"Se mindre":"Se mere"});class TermsAndConditions extends HTMLElement{constructor(){super(),this.isTermsBound=!1,this.bindEvents()}bindEvents(){const checkoutButton2=this.parentNode.querySelector(".cart__checkout-button"),termsCheckbox=this.parentNode.querySelector("#enable_noSubterms"),membershipInput=document.querySelector("#membership"),membershipnumberContainer=document.querySelector(".membershipNrHolder"),birthYear=document.getElementById("birthyear").value,gender=document.querySelector(".gender-input").value,referenceinput=document.querySelector(".reference-input").value,magazineSelected=document.querySelector("#magazineCheckbox").checked;let magazineSelectedText="";magazineSelected?magazineSelectedText="Magasin med posten":magazineSelectedText="Ikke magasin med posten";const errorText="Handelsbetingelser og privatlivspolitik skal accepteres",memberErrorText="Indtast dit medlemsnummer",regex=/^\d{7}$/;checkoutButton2.addEventListener("click",event=>{termsCheckbox.checked||(event.preventDefault(),this.handleError(termsCheckbox,errorText,"terms")),regex.test(membershipInput.value)||(event.preventDefault(),this.handleError(membershipInput,memberErrorText,"membership")),document.querySelector(".text-area.field__input.hiddenCartNote").value=document.querySelector("#membership").value}),termsCheckbox.addEventListener("change",()=>{termsCheckbox.checked&&termsCheckbox.closest(".error")&&this.removeError(termsCheckbox),termsCheckbox.checked&&termsCheckbox.closest("div").querySelector(".error")&&this.removeError(termsCheckbox)}),membershipInput.addEventListener("change",()=>{regex.test(membershipInput.value)&&this.removeError(membershipInput)})}handleError(element,message,type){const container=type==="terms"?element.closest("div"):document.querySelector(".membershipNrHolder");if(!container.querySelector(".error")){const error=document.createElement("p");error.classList.add("error"),error.innerHTML=message,container.appendChild(error)}}removeError(element){const error=element.closest("div").querySelector(".error");error&&error.remove()}}customElements.define("terms-and-conditions",TermsAndConditions);class TermsAndSubscriptions extends HTMLElement{constructor(){super(),this.Binds()}Binds(){var self=this;this.parentNode.querySelector(".cart__checkout-button").addEventListener("click",function(event){if(!this.parentNode.querySelector("#enable_subterms").checked){event.preventDefault();var container=this.parentNode.querySelector("#enable_subterms").parentNode.parentNode;if(container.querySelector(".error")==null){var error=document.createElement("p");error.classList.add("error"),error.innerHTML="Handels- og medlemsbetingelser samt vedt\xE6gter og privatlivspolitik skal accepteres",container.appendChild(error),self.is_terms_bound||(this.parentNode.querySelector("#enable_subterms").addEventListener("change",function(){container.querySelector(".error")&&container.querySelector(".error").parentNode.removeChild(container.querySelector(".error"))},!0),self.is_terms_bound=!0)}}if(!this.parentNode.querySelector("#enable_terms").checked){event.preventDefault();var container=this.parentNode.querySelector("#enable_terms").parentNode.parentNode;if(container.querySelector(".error")==null){var error=document.createElement("p");error.classList.add("error"),error.innerHTML="Markedsf\xF8ringssamtykke skal accepteres",container.appendChild(error),self.is_terms_bound||(this.parentNode.querySelector("#enable_terms").addEventListener("change",function(){container.querySelector(".error")&&container.querySelector(".error").parentNode.removeChild(container.querySelector(".error"))},!0),self.is_terms_bound=!0)}}document.getElementById("birthyear-error").style.display="none",document.getElementById("gender-error").style.display="none",document.getElementById("reference-error").style.display="none";const birthYear=document.getElementById("birthyear").value,gender=document.querySelector(".gender-input").value,reference=document.querySelector(".reference-input").value;let hasError=!1;(!birthYear||birthYear.length!==4)&&(document.getElementById("birthyear-error").textContent="F\xF8dsels\xE5r skal v\xE6re 4 cifre.",document.getElementById("birthyear-error").style.display="block",hasError=!0),gender===""&&(document.getElementById("gender-error").textContent="K\x
1F8n er p\xE5kr\xE6vet.",document.getElementById("gender-error").style.display="block",hasError=!0),reference===""&&(document.getElementById("reference-error").textContent="Henvisning er p\xE5kr\xE6vet.",document.getElementById("reference-error").style.display="block",hasError=!0),hasError&&event.preventDefault();let referenceinput=document.querySelector(".reference-input").value,magazineSelected=document.querySelector("#magazineCheckbox").checked,magazineSelectedText="";magazineSelected?magazineSelectedText="Magasin med posten":magazineSelectedText="Ikke magasin med posten",document.querySelector(".text-area.field__input.hiddenCartNote").value=birthYear+` 2`+gender+` 3`+referenceinput+` 4`+magazineSelectedText,console.log(document.querySelector(".text-area.field__input.hiddenCartNote").value)})}}customElements.define("terms-and-conditions-subs",TermsAndSubscriptions);async function getCartObject(){try{return await(await fetch(window.Shopify.routes.root+"cart.js")).json()}catch(error){console.error("Error fetching cart data:",error)}}function handleCartItems(cartItems){const additionalInfoContainer=document.querySelector(".additional-information_container"),membershipNrHolder=document.querySelector(".membershipNrHolder");if(!additionalInfoContainer||!membershipNrHolder)return;cartItems.some(item=>item.product_id==="7073395867824"||item.product_id==="7657857810608"||item.product_id==="57249828897141")?(additionalInfoContainer.classList.add("show_block"),membershipNrHolder.classList.remove("show_block")):(additionalInfoContainer.classList.remove("show_block"),membershipNrHolder.classList.add("show_block"),document.querySelector("terms-and-conditions-subs").remove())}const checkoutButton=document.querySelector(".cart__checkout-button");checkoutButton&&checkoutButton.addEventListener("click",async()=>{(await getCartObject()).items.forEach(item=>{item.product_id==="7073395867824"||item.product_id==="7657857810608"||item.product_id})}),document.addEventListener("cart-remove",async()=>{const cartObject=await getCartObject();handleCartItems(cartObject.items)}),document.addEventListener("DOMContentLoaded",function(){const floatingMenu=document.getElementById("floatingMenu"),headerIcon=document.querySelector(".header__icon.header__icon--menu");floatingMenu.addEventListener("click",function(){floatingMenu.disabled=!0,headerIcon.click();const hamburgerIcon=document.querySelector("#floatingMenu .icon-hamburger"),closeIcon=document.querySelector("#floatingMenu .icon-close");hamburgerIcon.style.display==="none"?(hamburgerIcon.style.display="inline",closeIcon.style.display="none",floatingMenu.classList.contains("menu-opened")&&(floatingMenu.classList.remove("menu-opened"),document.querySelector("header").classList.remove("MenuDrawer-opened"))):(hamburgerIcon.style.display="none",closeIcon.style.display="inline",floatingMenu.classList.add("menu-opened"),document.querySelector("header").classList.add("MenuDrawer-opened")),setTimeout(()=>{floatingMenu.disabled=!1},1e3)})});function handleClickOutside(event){const menuDrawer=document.getElementById("menu-drawer"),hamburgerIcon=document.querySelector("#floatingMenu .icon-hamburger"),floatingIcon=document.querySelector("#floatingMenu"),closeIcon=document.querySelector("#floatingMenu .icon-close");menuDrawer&&!menuDrawer.contains(event.target)&&document.querySelector("#Details-menu-drawer-container.menu-opening")&&(document.querySelector(".header__icon.header__icon--menu").click(),hamburgerIcon.style.display==="none"?(hamburgerIcon.style.display="inline",closeIcon.style.display="none",floatingIcon.classList.contains("menu-opened")&&(floatingIcon.classList.remove("menu-opened"),document.querySelector("header").classList.remove("MenuDrawer-opened"))):(hamburgerIcon.style.display="none",closeIcon.style.display="inline",floatingIcon.classList.add("menu-opened"),document.querySelector("header").classList.add("MenuDrawer-opened")))}document.addEventListener("click",handleClickOutside);const removeCartItems=document.querySelectorAll("cart-remove-button");removeCartItems.forEach(item=>{item.addEventListener("click",function(){setTimeout(()=>{location.reload()},1e3)})}),document.addEventListener("DOMContentLoaded",function(){let lastSelectedDate="";const handleDateChange=event=>{const selectedInput=event.target;selectedInput&&selectedInput.value!==lastSelectedDate&&(lastSelectedDate=selectedInput.value,setTimeout(()=>{const timeInputs=document.querySelectorAll('fieldset input[name^="Klokkesl\xE6t"]'),firstAvailableTime=Array.from(timeInputs).find(input=>!input.classList.contains("disabled"));if(firstAvailableTime&&!firstAvailableTime.checked){firstAvailableTime.checked=!0;
4const changeEvent=new Event("change",{bubbles:!0});firstAvailableTime.dispatchEvent(changeEvent)}},150))},targetNode=document.querySelector(".product-form"),config={childList:!0,subtree:!0},observer=new MutationObserver(()=>{document.querySelectorAll('fieldset input[name^="Dato"]').forEach(input=>{input.removeEventListener("change",handleDateChange),input.addEventListener("change",handleDateChange)})});targetNode&&!targetNode.dataset.observed&&(observer.observe(targetNode,config),targetNode.dataset.observed="true"),document.querySelectorAll('fieldset input[name^="Dato"]').forEach(input=>{input.removeEventListener("change",handleDateChange),input.addEventListener("change",handleDateChange)})}),document.addEventListener("DOMContentLoaded",function(){const selectFirstAvailableTime=(modal,attempt=1)=>{if(!modal||!modal.hasAttribute("open")||modal.dataset.processing==="true")return;modal.dataset.processing="true";const dateInputs=modal.querySelectorAll('fieldset input[name^="Dato"]'),selectedDate=Array.from(dateInputs).find(input=>input.checked);if(!selectedDate){modal.dataset.processing="false";return}if((modal.dataset.lastAttemptedDate||"")===selectedDate.value){modal.dataset.processing="false";return}modal.dataset.lastAttemptedDate=selectedDate.value,clearTimeout(modal.dataset.timeout),modal.dataset.timeout=setTimeout(()=>{const firstAvailableTime=Array.from(modal.querySelectorAll('fieldset input[name^="Klokkesl\xE6t"]')).filter(input=>!input.closest("fieldset").classList.contains("hidden")).find(input=>!input.classList.contains("disabled"));firstAvailableTime?(modal.dataset.selectedTime=firstAvailableTime.value,modal.dataset.ignoreChange="true",setTimeout(()=>{firstAvailableTime.checked=!0;const event=new Event("change",{bubbles:!0});firstAvailableTime.dispatchEvent(event),modal.dataset.ignoreChange="false"},10)):attempt<3&&setTimeout(()=>selectFirstAvailableTime(modal,attempt+1),200),modal.dataset.processing="false"},150)},observer=new MutationObserver(mutations=>{mutations.forEach(mutation=>{if(mutation.type==="attributes"&&mutation.attributeName==="open"){const modal=mutation.target;if(modal.hasAttribute("open")&&!modal.dataset.listenerAdded){modal.dataset.listenerAdded="true";let debounceTimeout;modal.addEventListener("change",function(event){modal.dataset.ignoreChange!=="true"&&event.target.name.startsWith("Dato")&&(clearTimeout(debounceTimeout),debounceTimeout=setTimeout(()=>{modal.dataset.lastAttemptedDate="",modal.dataset.selectedTime="",selectFirstAvailableTime(modal)},50))}),selectFirstAvailableTime(modal)}}})});document.querySelectorAll(".quick-add-modal").forEach(modal=>{observer.observe(modal,{attributes:!0})})}); 5//# sourceMappingURL=/cdn/shop/t/2/assets/generaxion.js.map?v=178763670407694767751780576518
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.