add-to-cart-variation.js 2.01 KB
jQuery(function(a){return"undefined" != typeof wc_add_to_cart_params && void a(document).on("click", ".product-type-variable .single_add_to_cart_button", function(){$variation_form = a(this).closest(".variations_form"); var b = $variation_form.find("input[name=variation_id]").val(), c = $variation_form.find("input[name=product_id]").val(), d = $variation_form.find("input[name=quantity]").val(); a(".ajaxerrors").remove(); var e = {}; variations = $variation_form.find("select[name^=attribute]"); var g = a(this); if (g.is(".product-type-variable .single_add_to_cart_button")){g.removeClass("added"), g.addClass("loading"); var h = {action:"woocommerce_add_to_cart_variable_rc", product_id:c, quantity:d, variation_id:b, variation:e}; return a("body").trigger("adding_to_cart", [g, h]), a.post(wc_add_to_cart_params.ajax_url, h, function(b){if (b){var c = window.location.toString(); if (c = c.replace("add-to-cart", "added-to-cart"), b.error && b.product_url)return void(window.location = b.product_url); g.removeClass("loading"); var d = b.fragments, e = b.cart_hash; d && a.each(d, function(b){a(b).addClass("updating")}), a(".shop_table.cart, .updating, .cart_totals").fadeTo("400", "0.6").block({message:null, overlayCSS:{opacity:.6}}), g.addClass("added"), wc_add_to_cart_params.is_cart || 0 !== g.parent().find(".added_to_cart").size() || g.after(' <a href="' + wc_add_to_cart_params.cart_url + '" class="added_to_cart wc-forward" title="' + wc_add_to_cart_params.i18n_view_cart + '">' + wc_add_to_cart_params.i18n_view_cart + "</a>"), d && a.each(d, function(b, c){a(b).replaceWith(c)}), a(".widget_shopping_cart, .updating").stop(!0).css("opacity", "1").unblock(), a(".shop_table.cart").load(c + " .shop_table.cart:eq(0) > *", function(){a(".shop_table.cart").stop(!0).css("opacity", "1").unblock(), a(document.body).trigger("cart_page_refreshed")}), a(".cart_totals").load(c + " .cart_totals:eq(0) > *", function(){a(".cart_totals").stop(!0).css("opacity", "1").unblock()}), a(document.body).trigger("added_to_cart", [d, e, g])}}), !1}return!0})});