PageSourceSearch

https://tzilla.com/cdn/shop/t/40/assets/duplicate_product.js?v=129871852191486686801733476546

js tzilla.com collected 2026-10-05 08:44:14 UTC 7,286 bytes, 2 lines download raw bytes

1const th_shop_url=window.location.origin;let cart_json={},new_payload={},duplicate_button_type="cart";function duplicateProductPopup(product,product_style,product_size,product_key){let duplicatepopupHtml='<div id="duplicate_popup" class="duplicate_popup">';duplicatepopupHtml+='<div class="duplicate-popup-content">',duplicatepopupHtml+='<span id="duplicate-closePopup" class="duplicate-close-btn">&times;</span>',duplicatepopupHtml+='<div class="duplicate-product-section">',duplicatepopupHtml+=product,duplicatepopupHtml+="</div>",duplicatepopupHtml+="</div>",duplicatepopupHtml+="</div>",delete_popup(),document.body.insertAdjacentHTML("beforeend",duplicatepopupHtml),setTimeout(function(){const duplicate_popup=document.querySelector("#duplicate_popup");duplicate_popup&&(duplicate_popup.style.display="flex",document.body.classList.add("is-duplicate-open")),document.querySelector("#duplicate-closePopup").addEventListener("click",function(){delete_popup()}),window.addEventListener("click",function(event){event.target===duplicate_popup&&delete_popup()}),AfterHtmlLoadEvent(product_style,product_size,product_key);const buttonElem=Array.from(document.querySelectorAll(".duplicate_button")).find(e=>e.classList.contains("clickbled"));buttonElem&&buttonElem.classList.remove("clickbled")},900)}function checked_selected_is_option(){const qty_elem=document.querySelector(".duplicate-popup-content #Quantity-template--qty"),cart_btn=document.querySelector(".duplicate-popup-content .add_to_cart_btn");let varints=document.getElementsByName("option[size]");for(var variantSelected=!1,i=0;i<varints.length;i++)varints[i].checked&&(variantSelected=!0);qty_elem.value==""||qty_elem.value=="0"||variantSelected!=!0?cart_btn.setAttribute("disabled","disabled"):cart_btn.removeAttribute("disabled","disabled")}function AfterHtmlLoadEvent(product_style,product_size,product_key){const get_item=cart_json.items.find(e=>e.key==product_key);new_payload={};let product_styles="",product_sizes="";get_item&&(new_payload.properties=get_item.properties,(get_item?.options_with_values).map(e=>{e.name=="style"&&(product_styles=e.value),e.name=="size"&&(product_sizes=e.value)}));var jsonString=document.querySelector("#duplicate_product_json").innerHTML,productData=JSON.parse(jsonString),radios=document.querySelectorAll('.duplicate-product-section input[name="option[size]"]'),qty_input=document.querySelector(".duplicate-popup-content #Quantity-template--qty"),qty_action_btn=document.querySelectorAll(".duplicate-popup-content .f-quantity__button");qty_action_btn&&qty_action_btn.forEach(function(this_click){this_click.addEventListener("click",function(){checked_selected_is_option()})}),qty_input&&qty_input.addEventListener("input",function(){checked_selected_is_option()}),radios.forEach(function(radio){radio.addEventListener("change",function(){if(radio.checked){const variant_name=product_style+" / "+radio.value,varint_Json=productData.variants.find(e=>e.public_title===variant_name);new_payload.id=varint_Json.id,document.querySelector("#duplicate_popup").querySelector(".cart_action .error-msg")&&(document.querySelector("#duplicate_popup").querySelector(".cart_action .error-msg").innerHTML=""),checked_selected_is_option()}})}),document.querySelector(".add_to_cart_btn")&&document.querySelector(".add_to_cart_btn").addEventListener("click",function(e){let Sizes=document.getElementsByName("option[size]");for(var SizesStatus=!1,i=0;i<Sizes.length;i++)Sizes[i].checked&&(SizesStatus=!0);SizesStatus?(document.querySelector("#duplicate_popup .add_to_cart_btn")&&document.querySelector("#duplicate_popup .add_to_cart_btn").classList.add("clickbled"),get_item&&(new_payload.properties=get_item.properties),add_cart_process(new_payload)):document.querySelector("#duplicate_popup").querySelector(".cart_action .error-msg")&&(document.querySelector("#duplicate_popup").querySelector(".cart_action .error-msg").innerHTML="Please select any one Size"),delete_popup()})}const add_cart_process=async new_payload2=>{new_payload2.quantity=document.querySelector("#duplicate_popup .f-quantity__input").value;try{const response=await fetch("/cart/add.js",{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(new_payload2)});if(!response.ok){const error=await response.json();throw new Error(error.message)}await response.json()&&(duplicate_button_type!="drawer"?window.location.href="/cart":(document.querySelector("#duplicate_popup .add_to_cart_btn")&&document.querySelector("#duplicate_popup .add_to_cart_btn").classList.remove("clickbled"),setTimeout(function(){document.querySelector("#duplicate_popup")&&document.querySelector("#duplicate_popup").remove(),get_cart(!0),setTimeout(clearstorage,1e3)},500)))}catch(error){alert("Error adding to cart: "+error.message)}};
1function delete_popup(){document.body.classList.remove("is-duplicate-open"),document.querySelector(".duplicate_popup")&&document.querySelector(".duplicate_popup").remove()}const getProductJson=(product_handle,product_style,product_size,product_key,product_color,product_image_id,product_tshirt_color)=>{fetch(th_shop_url+product_handle+"?view=duplicate_product&key="+product_key+"&product_style="+product_style+"&product_size="+product_size+"&product_image_id="+String(product_image_id)+"&product_color="+product_color+"&product_tshirt_color="+product_tshirt_color,{method:"GET",headers:{"Content-Type":"text/html","X-Requested-With":"XMLHttpRequest"}}).then(response=>response.text()).then(data=>{data&&duplicateProductPopup(data,product_style,product_size,product_key)}).catch(error=>{console.error("Error clearing the cart:",error)})};window.eachDuplicateButton=function(){document.querySelectorAll(".duplicate_button")&&document.querySelectorAll(".duplicate_button").forEach(this_click=>{this_click.addEventListener("click",function(e){duplicate_button_type=this_click.getAttribute("data-button_type"),new_payload={},this_click.classList.add("clickbled");let product_handle=this_click.getAttribute("data-product_handle"),product_style=this_click.getAttribute("data-style"),product_size=this_click.getAttribute("data-size"),product_key=this_click.getAttribute("data-key"),product_color=this_click.getAttribute("data-Color"),product_image_id=this_click.getAttribute("data-image_id"),product_tshirt_color=this_click.getAttribute("data-tshirt_color");product_handle=product_handle.split("?"),product_handle&&product_handle[0]&&(getProductJson(product_handle[0],product_style,product_size,product_key,product_color,product_image_id,product_tshirt_color),get_cart())})})};function store_cart_json(cart){cart_json=cart}function update_cart_drawer(cart){document.querySelector("#Drawer-Cart").openDrawer(),document.querySelector("cart-drawer").renderCartItems(),document.querySelector("cart-drawer").renderCart(cart),setTimeout(function(){window.eachDuplicateButton()},800)}function get_cart(cartFlag=!1){fetch("/cart.js").then(response=>response.json()).then(cart=>{store_cart_json(cart),cartFlag&&update_cart_drawer(cart)}).catch(error=>{console.error("Error fetching cart:",error)})}document.addEventListener("DOMContentLoaded",function(){eachDuplicateButton(),get_cart()});
2//# sourceMappingURL=/cdn/shop/t/40/assets/duplicate_product.js.map?v=129871852191486686801733476546

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.