get_generic_coupon_error() public static method

No coupon instance will be available where a coupon does not exist, so this static method exists.
public static get_generic_coupon_error ( integer $err_code ) : string | Error
$err_code integer Error code
return string | Error
示例#1
1
 /**
  * AJAX apply coupon on checkout page
  */
 public function apply_coupon()
 {
     check_ajax_referer('apply-coupon', 'security');
     if (!empty($_POST['coupon_code'])) {
         WC()->cart->add_discount(sanitize_text_field($_POST['coupon_code']));
     } else {
         wc_add_notice(WC_Coupon::get_generic_coupon_error(WC_Coupon::E_WC_COUPON_PLEASE_ENTER), 'error');
     }
     wc_print_notices();
     die;
 }
 /**
  * Output the cart shortcode.
  *
  * @access public
  * @param array $atts
  * @return void
  */
 public static function output($atts)
 {
     global $woocommerce;
     if (!defined('WOOCOMMERCE_CART')) {
         define('WOOCOMMERCE_CART', true);
     }
     // Add Discount
     if (!empty($_POST['apply_coupon'])) {
         if (!empty($_POST['coupon_code'])) {
             $woocommerce->cart->add_discount(sanitize_text_field($_POST['coupon_code']));
         } else {
             $woocommerce->add_error(WC_Coupon::get_generic_coupon_error(WC_Coupon::E_WC_COUPON_PLEASE_ENTER));
         }
         // Remove Coupon Codes
     } elseif (isset($_GET['remove_discounts'])) {
         $woocommerce->cart->remove_coupons($_GET['remove_discounts']);
         // Update Shipping
     } elseif (!empty($_POST['calc_shipping']) && $woocommerce->verify_nonce('cart')) {
         $validation = $woocommerce->validation();
         $woocommerce->shipping->reset_shipping();
         $woocommerce->customer->calculated_shipping(true);
         $country = woocommerce_clean($_POST['calc_shipping_country']);
         $state = woocommerce_clean($_POST['calc_shipping_state']);
         $postcode = apply_filters('woocommerce_shipping_calculator_enable_postcode', true) ? woocommerce_clean($_POST['calc_shipping_postcode']) : '';
         $city = apply_filters('woocommerce_shipping_calculator_enable_city', false) ? woocommerce_clean($_POST['calc_shipping_city']) : '';
         if ($postcode && !$validation->is_postcode($postcode, $country)) {
             $woocommerce->add_error(__('Please enter a valid postcode/ZIP.', 'woocommerce'));
             $postcode = '';
         } elseif ($postcode) {
             $postcode = $validation->format_postcode($postcode, $country);
         }
         if ($country) {
             // Update customer location
             $woocommerce->customer->set_location($country, $state, $postcode, $city);
             $woocommerce->customer->set_shipping_location($country, $state, $postcode, $city);
             $woocommerce->add_message(__('Shipping costs updated.', 'woocommerce'));
         } else {
             $woocommerce->customer->set_to_base();
             $woocommerce->customer->set_shipping_to_base();
             $woocommerce->add_message(__('Shipping costs updated.', 'woocommerce'));
         }
         do_action('woocommerce_calculated_shipping');
     }
     // Check cart items are valid
     do_action('woocommerce_check_cart_items');
     // Calc totals
     $woocommerce->cart->calculate_totals();
     if (sizeof($woocommerce->cart->get_cart()) == 0) {
         //woocommerce_get_template( 'cart/cart-empty.php' );
         woocommerce_get_template('checkout/form-checkout.php');
     } else {
         //woocommerce_get_template( 'cart/cart.php' );
         woocommerce_get_template('checkout/form-checkout.php');
     }
 }
示例#3
0
/**
 * AJAX apply coupon on checkout page
 *
 * @access public
 * @return void
 */
function woocommerce_ajax_apply_coupon()
{
    global $woocommerce;
    check_ajax_referer('apply-coupon', 'security');
    if (!empty($_POST['coupon_code'])) {
        $woocommerce->cart->add_discount(sanitize_text_field($_POST['coupon_code']));
    } else {
        $woocommerce->add_error(WC_Coupon::get_generic_coupon_error(WC_Coupon::E_WC_COUPON_PLEASE_ENTER));
    }
    $woocommerce->show_messages();
    die;
}
示例#4
0
文件: functions.php 项目: bulats/chef
function app_ref_code()
{
    if (!session_id()) {
        session_start();
    }
    global $woocommerce, $wpdb;
    if ($_REQUEST['coupon_code'] != "") {
        /* Checdk ref code is valid or not */
        $query_to_ck = 'SELECT user_id FROM wp_usermeta WHERE meta_key = "genRefKey" and meta_value = "' . $_REQUEST['coupon_code'] . '"';
        $result_to_ck = mysql_query($query_to_ck);
        $array_to_check = mysql_fetch_array($result_to_ck);
        if (!empty($array_to_check)) {
            /****/
            $user_id = get_current_user_id();
            $query = 'SELECT user_id FROM wp_usermeta WHERE meta_key = "refKeyID" and meta_value = "' . $_REQUEST['coupon_code'] . '" and user_id=' . $user_id . '';
            $result = mysql_query($query);
            $array = mysql_fetch_array($result);
            if (isset($_SESSION['flagCheck']) && in_array($_REQUEST['coupon_code'], $_SESSION['flagCheck'])) {
                echo '-3';
                exit;
            }
            if (empty($array)) {
                update_user_meta($user_id, "temp", $_REQUEST['coupon_code']);
                $_SESSION['flagCheck'][] = $_REQUEST['coupon_code'];
                if (!empty($_REQUEST['coupon_code'])) {
                    $time = time();
                    $p = array('post_title' => $time, 'post_content' => '', 'post_name' => $time, 'post_status' => 'publish', 'post_type' => 'shop_coupon', 'post_author' => 1);
                    if ($id = wp_insert_post($p)) {
                        // Add metadata to post
                        update_post_meta($id, 'coupon_amount', get_user_meta(1, "rewordBonus", true));
                        update_post_meta($id, 'discount_type', 'fixed_cart');
                        update_user_meta(get_current_user_id(), 'temp', $_REQUEST['coupon_code']);
                        update_user_meta(get_current_user_id(), 'applied_coupon_id_track', $id);
                    }
                    $p_i = get_post($id);
                    if ($woocommerce->cart->add_discount(sanitize_text_field($p_i->post_title))) {
                        echo '1';
                    } else {
                        echo '-2';
                    }
                } else {
                    $woocommerce->set_messages();
                    $woocommerce->add_error(WC_Coupon::get_generic_coupon_error(WC_Coupon::E_WC_COUPON_PLEASE_ENTER));
                    echo '-6';
                }
            } else {
                echo '-3';
            }
        } else {
            echo '-3';
        }
    }
    /*    */
    exit;
}