芝麻web文件管理V1.00
编辑当前文件:/home/seolotod/critterchoice.com/wp-content/themes/rehub-theme/js/ajaxcart.js
jQuery(document).ready(function($) { 'use strict'; var rh_ajax_add_to_cart = function() { if ( 'undefined' === typeof wc_add_to_cart_params ) { // The add to cart params are not present. return false; } $.fn.DataserializeArray = function () { var rdata = /\r?\n/g; return this.map(function () { return this.elements ? jQuery.makeArray(this.elements) : this; }).map(function (i, elem) { var val = jQuery(this).val(); if (val == null) { return val == null } else if (this.type == "checkbox" && this.checked == false) { return {name: this.name, value: this.checked ? this.value : ''} } else { return jQuery.isArray(val) ? jQuery.map(val, function (val, i) { return {name: elem.name, value: val.replace(rdata, "\r\n")}; }) : {name: elem.name, value: val.replace(rdata, "\r\n")}; } }).get(); }; $(document).on('click', '.wooquickviewbtn .single_add_to_cart_button:not(.disabled)', function (e) { e.preventDefault(); var $thisbutton = $(this), $form = $thisbutton.closest('form.cart'), data = $form.find('input:not([name="product_id"]), select, button, textarea').DataserializeArray() || 0; $.each(data, function (i, item) { if ( item.name == 'add-to-cart') { item.name = 'product_id'; item.value = $form.find('input[name=variation_id]').val() || $thisbutton.val(); } }); $.ajax({ type: 'POST', url: wc_add_to_cart_params.wc_ajax_url.toString().replace( '%%endpoint%%', 'add_to_cart' ), data: data, beforeSend: function (response) { $thisbutton.removeClass('added').addClass('loading'); }, complete: function (response) { $thisbutton.addClass('added').removeClass('loading'); }, success: function (response) { if ( response.error & response.product_url ) { window.location = response.product_url; return; } $(document.body).trigger('added_to_cart', [response.fragments, response.cart_hash, $thisbutton] ); }, dataType: 'json' }); }); }; rh_ajax_add_to_cart(); }); function rh_ajax_woo_cart_loading (el){ if(typeof wc_cart_fragments_params === 'undefined'){ return false; } var widgetCartContent = el.find(".widget_shopping_cart"); widgetCartContent.addClass("loaded re_loadingbefore"); jQuery.ajax({ type: "post", url: wc_cart_fragments_params.wc_ajax_url.toString().replace('%%endpoint%%', 'get_refreshed_fragments'), data: { time: new Date().getTime() }, timeout: wc_cart_fragments_params.request_timeout }).done(function(data){ if (data && data.fragments) { widgetCartContent.html(data.fragments["div.widget_shopping_cart_content"]); widgetCartContent.removeClass("re_loadingbefore"); } }); } jQuery(document).on( 'added_to_cart', function ( event, fragments, cart_hash ) { var widget = jQuery('#rh-woo-cart-panel'); let errorspage = jQuery('.ajaxerrors').length; let nosliding = jQuery('.no_cart_sliding').length; if ( ! widget.hasClass( 'active' ) && errorspage < 1 && nosliding < 1 ) { widget.addClass( 'active' ); rh_ajax_woo_cart_loading(widget); if(document.getElementById('pgwModal') != null){ $.pgwModal('close'); } } if(errorspage < 1 && nosliding > 0){ jQuery.simplyToast(rhscriptvars.addedcart, 'success'); } }); jQuery(document).on("click", ".menu-cart-btn", function(e){ e.preventDefault(); var widget = jQuery('#rh-woo-cart-panel'); if ( ! widget.hasClass( 'active' ) ) { widget.addClass( 'active' ); rh_ajax_woo_cart_loading(widget); } })