woocommerce/assets/js/frontend/cart.min.js

1 line
6.6 KiB
JavaScript
Raw Normal View History

2017-02-21 10:35:11 +00:00
jQuery(function(a){if("undefined"==typeof wc_cart_params)return!1;var b=function(a){return wc_cart_params.wc_ajax_url.toString().replace("%%endpoint%%",a)},c=function(a){return a.is(".processing")||a.parents(".processing").length},d=function(a){c(a)||a.addClass("processing").block({message:null,overlayCSS:{background:"#fff",opacity:.6}})},e=function(a){a.removeClass("processing").unblock()},f=function(b,c){var d=a.parseHTML(b),e=a(".woocommerce-cart-form",d),f=a(".cart_totals",d),i=a(".woocommerce-error, .woocommerce-message, .woocommerce-info",d);if(0===a(".woocommerce-cart-form").length)return void(window.location.href=window.location.href);if(c||a(".woocommerce-error, .woocommerce-message, .woocommerce-info").remove(),0===e.length){if(a(".woocommerce-checkout").length)return void(window.location.href=window.location.href);var j=a(".cart-empty",d).closest(".woocommerce");a(".woocommerce-cart-form__contents").closest(".woocommerce").replaceWith(j),i.length>0&&h(i,a(".cart-empty").closest(".woocommerce"))}else a(".woocommerce-checkout").length&&a(document.body).trigger("update_checkout"),a(".woocommerce-cart-form").replaceWith(e),a(".woocommerce-cart-form").find('input[name="update_cart"]').prop("disabled",!0),i.length>0&&h(i),g(f);a(document.body).trigger("updated_wc_div")},g=function(b){a(".cart_totals").replaceWith(b),a(document.body).trigger("updated_cart_totals")},h=function(b,c){c||(c=a(".woocommerce-cart-form")),c.before(b)},i={init:function(b){this.cart=b,this.toggle_shipping=this.toggle_shipping.bind(this),this.shipping_method_selected=this.shipping_method_selected.bind(this),this.shipping_calculator_submit=this.shipping_calculator_submit.bind(this),a(document).on("click",".shipping-calculator-button",this.toggle_shipping),a(document).on("change","select.shipping_method, input[name^=shipping_method]",this.shipping_method_selected),a(document).on("submit","form.woocommerce-shipping-calculator",this.shipping_calculator_submit),a(".shipping-calculator-form").hide()},toggle_shipping:function(){return a(".shipping-calculator-form").slideToggle("slow"),!1},shipping_method_selected:function(c){var f=c.currentTarget,h={};a("select.shipping_method, input[name^=shipping_method][type=radio]:checked, input[name^=shipping_method][type=hidden]").each(function(){h[a(f).data("index")]=a(f).val()}),d(a("div.cart_totals"));var i={security:wc_cart_params.update_shipping_method_nonce,shipping_method:h};a.ajax({type:"post",url:b("update_shipping_method"),data:i,dataType:"html",success:function(a){g(a)},complete:function(){e(a("div.cart_totals")),a(document.body).trigger("updated_shipping_method")}})},shipping_calculator_submit:function(b){b.preventDefault();var c=a(b.currentTarget);d(a("div.cart_totals")),d(c),a("<input />").attr("type","hidden").attr("name","calc_shipping").attr("value","x").appendTo(c),a.ajax({type:c.attr("method"),url:c.attr("action"),data:c.serialize(),dataType:"html",success:function(a){f(a)},complete:function(){e(c),e(a("div.cart_totals"))}})}},j={init:function(){this.update_cart_totals=this.update_cart_totals.bind(this),this.input_keypress=this.input_keypress.bind(this),this.cart_submit=this.cart_submit.bind(this),this.submit_click=this.submit_click.bind(this),this.apply_coupon=this.apply_coupon.bind(this),this.remove_coupon_clicked=this.remove_coupon_clicked.bind(this),this.quantity_update=this.quantity_update.bind(this),this.item_remove_clicked=this.item_remove_clicked.bind(this),this.update_cart=this.update_cart.bind(this),a(document).on("wc_update_cart",this.update_cart),a(document).on("click",".woocommerce-cart-form input[type=submit]",this.submit_click),a(document).on("keypress",".woocommerce-cart-form input[type=number]",this.input_keypress),a(document).on("submit",".woocommerce-cart-form",this.cart_submit),a(document).on("click","a.woocommerce-remove-coupon",this.remove_coupon_clicked),a(document).on("click",".woocommerce-cart-form .product-remove > a",this.item_remove_clicked),a(document).on("change input",".woocommerce-cart-form .cart_item :input",this.input_changed),a('.woocommerce-cart-form input