/** AJAX - action to apply coupon **/
 function wps_apply_coupon()
 {
     $status = false;
     $response = '';
     $coupon = !empty($_POST['coupon_code']) ? wpshop_tools::varSanitizer($_POST['coupon_code']) : null;
     if (!empty($coupon)) {
         $wps_coupon_ctr = new wps_coupon_ctr();
         $result = $wps_coupon_ctr->applyCoupon($_REQUEST['coupon_code']);
         if ($result['status'] === true) {
             $order = $this->calcul_cart_information(array());
             $this->store_cart_in_session($order);
             $status = true;
             $response = '<div class="wps-alert-success">' . __('The coupon has been applied', 'wpshop') . '</div>';
         } else {
             $response = '<div class="wps-alert-error">' . $result['message'] . '</div>';
         }
     } else {
         $response = '<div class="wps-alert-error">' . __('A coupon code is required', 'wpshop') . '</div>';
     }
     echo json_encode(array('status' => $status, 'response' => $response));
     die;
 }
Exemple #2
0
        } else {
            $array = array('result' => false, 'message' => __('An error occured', 'wpshop'));
        }
        echo json_encode($array);
        break;
    case 'related_products':
        $data = wpshop_products::product_list(false, $_REQUEST['search']);
        $array = array();
        foreach ($data as $d) {
            $array[] = array('id' => $d->ID, 'name' => $d->post_title);
        }
        echo json_encode($array);
        break;
    case 'ajax_cartAction':
        global $wpshop_cart;
        switch ($_REQUEST['action']) {
            case 'applyCoupon':
                $wps_coupon_ctr = new wps_coupon_ctr();
                $result = $wps_coupon_ctr->applyCoupon($_REQUEST['coupon_code']);
                if ($result['status'] === true) {
                    $wps_cart_ctr = new wps_cart();
                    $order = $wps_cart_ctr->calcul_cart_information(array());
                    $wps_cart_ctr->store_cart_in_session($order);
                    echo json_encode(array(true, ''));
                } else {
                    echo json_encode(array(false, $result['message']));
                }
                break;
        }
        break;
}