document.addEventListener("DOMContentLoaded",()=>{const customeLiveInventoryData=[];function liveInventorySendRequest(){if(!document.body.classList.contains("has-live-inventory"))return;const productData=[];const products=[];const allProducts=document.body.querySelectorAll(`.product[data-sku]:not([data-configurablemaster='1']):not(.productsrelated *):not([data-stock-design-updated="true"])`);const defaultBranch=EvoXLayer().session.default_branch.address.title;if(!allProducts.length)return;function createcdWrapper(storeName,isSpecOrd,isSpecOrdOnly,qty,positiveMessage_del,positiveMessage_col=""){const defaultBranchClass=defaultBranch.toLowerCase().trim().replace(/\s+/g,"-");const className=storeName.toLowerCase().trim().replace(/\s+/g,"-");const cdWrapper=document.createElement("div");cdWrapper.classList.add("cd-wrapper",className);if(defaultBranchClass.includes(className)){cdWrapper.classList.add("default-branch")}const wrapperHeader=document.createElement("h3");wrapperHeader.classList.add("store-branch-title");wrapperHeader.textContent=storeName;const cdOptions=document.createElement("div");cdOptions.classList.add("cd-options");for(let i=0;i<2;i++){if(i===1&&isSpecOrd)break;const cdTile=document.createElement("div");cdTile.classList.add("cd-tile",isSpecOrd?"special-option":i?"collection-option":"delivery-option",qty?"available":"unavailable");if(isSpecOrdOnly){cdTile.classList.add("special-option-only")}const cdTilePar=document.createElement("p");cdTilePar.textContent=qty?`${qty} ${i?positiveMessage_col:positiveMessage_del}`:"Unavailable";cdTile.append(cdTilePar);cdOptions.append(cdTile)}cdWrapper.append(wrapperHeader,cdOptions);return cdWrapper}allProducts.forEach(element=>{const sku=String(element.dataset.sku);const exists=customeLiveInventoryData.some(item=>item.sku==sku);if(sku&&!products.includes(sku)&&!exists){products.push(sku);const uom=String(element.dataset.packUom||"");const item_id=String(element.dataset.itemId||"");const template_item=String(element.dataset.itemplateItem||"");const inventory_v2=String(element.dataset.inventoryV2||"");productData.push({item_id:item_id,sku:sku,uom:uom,template_item:template_item,inventory_v2:inventory_v2})}});if(!productData||!products)return;$.ajax({method:"post",url:"/ajax/live-inventory?_="+(new Date).getTime(),cache:!1,data:{products:products,productData:productData}}).then(function(t){if("success"===t.status){customeLiveInventoryData.push(...t.data)}allProducts.forEach(element=>{if(element.dataset.stockDesignUpdated==="true")return;const elementSku=element.dataset.sku;const elementObject=t.data[t.data.findIndex(product=>product.sku==elementSku)];if(!elementObject)return;let deliveryContainer;if(!element.querySelector(".delivery-collection")){const buttonsDiv=element.querySelector(".buttons.group");const qtyContainer=element.querySelector(".qty-container");if(!buttonsDiv)return;deliveryContainer=document.createElement("div");deliveryContainer.classList.add("delivery-collection");if(qtyContainer){buttonsDiv.insertBefore(deliveryContainer,qtyContainer)}else{buttonsDiv.append(deliveryContainer)}}else{deliveryContainer=element.querySelector(".delivery-collection")}const cdContainer=document.createElement("section");cdContainer.className="cd-container";let hasSpecialOrder=elementObject.providers.includes("native");let isSpecialOrderOnly=hasSpecialOrder&&!elementObject.providers.includes("spruce");if(hasSpecialOrder){const cdWrapper=createcdWrapper("Special Order",true,isSpecialOrderOnly,elementObject.shipping.warehouses[0].quantity,"Available Via Special Order (10-14 Days)");cdContainer.append(cdWrapper)}if(!isSpecialOrderOnly){const startFrom=hasSpecialOrder?1:0;const warehouses=elementObject.shipping.warehouses;for(let i=startFrom;i{if(e.dataset.eventApplied==="true")return;e.dataset.eventApplied="true";e.addEventListener("click",event=>{if(event.target.classList.contains("collection-option")){const buttonGroup=event.target.closest(".buttons.group");buttonGroup.querySelector(".flex-right .live-inventory-v2-collection").click()}else if(event.target.matches(".delivery-option, .special-option")){const buttonGroup=event.target.closest(".buttons.group");buttonGroup.querySelector(".flex-left .live-inventory-v2-shipping").click()}})})}).fail(function(){console.log("fail")})}setTimeout(liveInventorySendRequest,100);document.addEventListener("live-inventory-finished-loading",()=>{setTimeout(liveInventorySendRequest,100)});document.addEventListener("product-loadmore-success",()=>{setTimeout(liveInventorySendRequest,100)});document.addEventListener("live-inventory-done",()=>{setTimeout(liveInventorySendRequest,100)})});