var dunaOrder; var dunaOrderDiscount = null; var dunaShipping; var totalPriceDuna; var inputDiscount = true; var placeDUNA = "Insert discount"; var discountDUNA = "Discount"; var dollarUSLocale = Intl.NumberFormat('en-US', { minimumFractionDigits: 2, maximumFractionDigits: 2 }); var addDeuna = "."; var positionDuna = 2; var totalDUNA = "Total"; var useDUNA = "Apply"; var dunaCheckout = null; var discountAutomaticDUNA = false; var freeShippingApp = "Free shipping applied"; var messageDiscountDuna ="Invalid discount code"; function loadDunaCart(){ fetch("/cart.js").then(response => response.json()).then(data => cartNew(data)); } function loadDunaCartTimeout(){ var myTimeout = setTimeout(loadDunaCart, 800); myTimeout = setTimeout(loadDunaCart, 1400); myTimeout = setTimeout(loadDunaCart, 2000); myTimeout = setTimeout(loadDunaCart, 3000); } function deletePopup(){ links = document.querySelectorAll('.swal2-container'); console.log("links"); console.log(links); if (links.length > 0){ links = links[0]; links.style.display = "none"; } } function cartNew(data){ console.log(data); dunaOrder = data; dunaOrder.token = dunaOrder.token+Math.floor(Math.random() * 10000); var submitElement = document.querySelectorAll('input[type="submit"]'); console.log(submitElement); if (submitElement.length > 0){ if (submitElement.length > 1){ submitElement = submitElement[submitElement.length- 1]; }else{ submitElement = submitElement[0]; } if (submitElement.getAttribute("name") === "checkout") { submitElement.setAttribute("type", "button"); submitElement.addEventListener("click", onSubmitDUnaClick); } }else{ submitElement = document.querySelectorAll('button[type="submit"]'); console.log(submitElement); if (submitElement.length > 0){ if (submitElement.length > 1){ submitElement = submitElement[submitElement.length- 1]; }else{ submitElement = submitElement[0]; } if (submitElement.getAttribute("name") === "checkout") { submitElement.setAttribute("type", "button"); submitElement.addEventListener("click", onSubmitDUnaClick); } } console.log(submitElement); } const forms = document.forms; for (let i = 0; i < forms.length; i++) { console.log(forms[i].action); if (forms[i].action.endsWith('/cart')){ console.log("onSubmitDUnaClick"); var inputs = forms[i].elements; console.log(inputs); var isCheckout = false; for (j = 0; j < inputs.length; j++) { console.log(inputs[j].getAttribute("name")); if (inputs[j].getAttribute("name") === "checkout") { isCheckout = true; console.log("isTrue"); } } if(isCheckout){ forms[i].addEventListener('submit', event => { // submit event detected event.preventDefault(); onSubmitDUnaClick(); }); } }else if (forms[i].action.endsWith('/cart/add')){ console.log("loadDunaCart"); forms[i].addEventListener("click", loadDunaCartTimeout); } } var links = document.querySelectorAll('a[href*="/checkout"]'); console.log(links); if (links.length > 0){ if (links.length > 1){ links = links[links.length- 1]; }else{ links = links[0]; } if (!links.classList.contains("text-link")){ links.setAttribute("href", "#"); links.addEventListener("click", onSubmitDUnaClick); }else{ console.log("Not Element"); console.log(links); } } links = document.querySelectorAll('.product-add-cart[type=normal]'); console.log(links); if (links.length > 0){ if (links.length > 1){ links = links[links.length- 1]; }else{ links = links[0]; } console.log(links); links.addEventListener("click", onSubmitDUnaClick); const newItem = document.createElement('button'); //newItem.innerHTML = ''; newItem.innerHTML ="Comprar Ahora"; newItem.addEventListener("click", onSubmitDUnaClick); newItem.classList.add("product-add-cart"); links.parentNode.replaceChild(newItem, links); setTimeout(deletePopup, 800); setTimeout(deletePopup, 1000); setTimeout(deletePopup, 1200); setTimeout(deletePopup, 1500); setTimeout(deletePopup, 3000); //links.style.display = "none"; //links.parentNode.innerHTML = ''+submitElement.parentNode.innerHTML; } var linksCarts = document.querySelectorAll('.ajax_add_to_cart'); for (j = 0; j < linksCarts.length; j++) { linksCarts[j].addEventListener("click", loadDunaCartTimeout); } linksCarts = document.querySelectorAll('.header-cart-btn'); for (j = 0; j < linksCarts.length; j++) { linksCarts[j].addEventListener("click", loadDunaCartTimeout); } linksCarts = document.querySelectorAll('.ajaxifyCart--qty-adjuster'); for (j = 0; j < linksCarts.length; j++) { linksCarts[j].addEventListener("click", loadDunaCartTimeout); } linksCarts = document.querySelectorAll('.ajaxifyCart--remove'); for (j = 0; j < linksCarts.length; j++) { linksCarts[j].addEventListener("click", loadDunaCartTimeout); } linksCarts = document.querySelectorAll('.ajaxifyCart--num'); for (j = 0; j < linksCarts.length; j++) { linksCarts[j].addEventListener("change", loadDunaCartTimeout); } linksCarts = document.querySelectorAll('.quantity-selector__button'); for (j = 0; j < linksCarts.length; j++) { linksCarts[j].addEventListener("click", loadDunaCartTimeout); } linksCarts = document.querySelectorAll('.mini-cart__quantity-remove'); for (j = 0; j < linksCarts.length; j++) { linksCarts[j].addEventListener("click", loadDunaCartTimeout); } linksCarts = document.querySelectorAll('.quantity-selector__value'); for (j = 0; j < linksCarts.length; j++) { linksCarts[j].addEventListener("change", loadDunaCartTimeout); } linksCarts = document.querySelectorAll('.js-drawer-open-cart'); for (j = 0; j < linksCarts.length; j++) { linksCarts[j].addEventListener("click", loadDunaCartTimeout); } linksCarts = document.querySelectorAll('.header__cart-icon'); for (j = 0; j < linksCarts.length; j++) { linksCarts[j].addEventListener("click", loadDunaCartTimeout); } linksCarts = document.querySelectorAll('.js-qty__adjust'); for (j = 0; j < linksCarts.length; j++) { linksCarts[j].addEventListener("click", loadDunaCartTimeout); } linksCarts = document.querySelectorAll('.js-qty__adjust'); for (j = 0; j < linksCarts.length; j++) { linksCarts[j].addEventListener("click", loadDunaCartTimeout); } linksCarts = document.querySelectorAll('.line-item__quantity-remove'); for (j = 0; j < linksCarts.length; j++) { linksCarts[j].addEventListener("click", loadDunaCartTimeout); } discountAutomaticDUNA = true; //Para no mostrar el descuento for (let i = 0; (i < data.items.length && !discountAutomaticDUNA); i++) { var item = data.items[i]; for (let y = 0;(y < item.discounts.length && !discountAutomaticDUNA); y++) { var disc = item.discounts[i]; if(!(disc.DUNA && disc.DUNA == "yes")){ discountAutomaticDUNA = true; } } } if(!discountAutomaticDUNA ){ if(submitElement && inputDiscount){ inputDiscount = false; if (Shopify.locale === "es"){ placeDUNA = "Insertar descuento"; discountDUNA = "Descuento"; useDUNA = "Aplicar"; messageDiscountDuna ="C贸digo de descuento no v谩lido"; freeShippingApp = "Envio gratis aplicado"; } var disc = document.querySelector(".cart__blocks .js-contents"); //disc.appendChild(discountElement); disc.insertAdjacentHTML('afterend', '
'); } } } function onblurDiscount(){ if(!discountAutomaticDUNA ){ var val = document.getElementById("discountDuna").value; document.getElementById("errorDUNA").innerText=""; var inpDuna = document.getElementById("discountDuna"); inpDuna.style.borderColor ="transparent"; inpDuna.style.boxShadow ="0 0 0 0.1rem rgba(18, 18, 18 ,.55)"; if (val.length > 0){ var dunaOrderCopy = dunaOrder; dunaOrderCopy.discount = val; dunaOrderCopy.shop = Shopify.shop; //console.log(val); fetch('https://deuna.triciclogo.com/discount/', { method: "POST", body: JSON.stringify(dunaOrderCopy) }) .then(response => response.json()) .then(json => discountDuna(json)); } } } function discountDuna(data){ if(data.items && data.total_discount > 0){ dunaOrderDiscount = data; console.log(dunaOrderDiscount); var child = document.getElementsByClassName('dunaTotal'); console.log(child); if(child.length > 0){ for (let i = 0; i < child.length; i++) { console.log(child[i]); console.log(child[i].parentNode); child[i].style.display="none"; } } for (let i = 0; i < data.items.length; i++) { var item = data.items[i]; var itemTr = document.querySelector('#CartItem-'+(i+1)+' td:last-child .cart-item__price-wrapper'); if(itemTr){ var a = ""+item.original_line_price; var outputOriginal = [a.slice(0, a.length - positionDuna), addDeuna, a.slice(a.length - positionDuna, a.length)].join(''); if(item.discounts.length > 0 && item.discounts[0].DUNA){ a = ""+item.final_line_price; var outputLine = [a.slice(0, a.length - positionDuna), addDeuna, a.slice(a.length - positionDuna, a.length)].join(''); console.log(outputLine); itemTr.innerHTML = '$ '+dollarUSLocale.format(outputDiscount)+' '+Shopify.currency.active+'
$ '+dollarUSLocale.format(outputTotal)+' '+Shopify.currency.active+'