Exemplo n.º 1
0
 function addCoupon()
 {
     global $toC_Json, $osC_Database, $osC_Language, $osC_ShoppingCart, $osC_Currencies, $osC_Weight, $osC_Tax, $osC_Customer;
     $osC_Tax = new osC_Tax_Admin();
     $osC_Weight = new osC_Weight();
     $osC_Currencies = new osC_Currencies();
     $osC_Language->load('checkout');
     $Qorder = $osC_Database->query('select * from :table_orders where orders_id = :orders_id');
     $Qorder->bindTable(':table_orders', TABLE_ORDERS);
     $Qorder->bindInt(':orders_id', $_REQUEST['orders_id']);
     $Qorder->execute();
     require_once '../includes/classes/customer.php';
     $osC_Customer = new osC_Customer();
     $osC_Customer->setID($Qorder->value('customers_id '));
     $osC_ShoppingCart = new toC_ShoppingCart_Adapter($_REQUEST['orders_id']);
     if (isset($_REQUEST['coupon_code']) && !empty($_REQUEST['coupon_code']) && count($osC_ShoppingCart->getProducts()) != 0) {
         require_once '../includes/classes/coupon.php';
         $toC_Coupon = new toC_Coupon($_REQUEST['coupon_code']);
         $errors = array();
         if (!$toC_Coupon->isExist()) {
             $errors[] = $osC_Language->get('error_coupon_not_exist');
         } else {
             if (!$toC_Coupon->isValid()) {
                 $errors[] = $osC_Language->get('error_coupon_not_valid');
             } else {
                 if (!$toC_Coupon->isDateValid()) {
                     $errors[] = $osC_Language->get('error_coupon_invalid_date');
                 } else {
                     if (!$toC_Coupon->isUsesPerCouponValid()) {
                         $errors[] = $osC_Language->get('error_coupon_exceed_uses_per_coupon');
                     } else {
                         if (!$toC_Coupon->isUsesPerCustomerValid()) {
                             $errors[] = $osC_Language->get('error_coupon_exceed_uses_per_customer');
                         } else {
                             if ($toC_Coupon->hasRestrictCategories() || $toC_Coupon->hasRestrictProducts()) {
                                 if (!$toC_Coupon->containRestrictProducts()) {
                                     $errors[] = $osC_Language->get('error_coupon_no_match_products');
                                 }
                             } else {
                                 if (!$toC_Coupon->checkMinimumOrderQuantity()) {
                                     $errors[] = $osC_Language->get('error_coupon_minimum_order_quantity');
                                 } else {
                                     if ($osC_ShoppingCart->isTotalZero()) {
                                         $errors[] = $osC_Language->get('error_shopping_cart_total_zero');
                                     }
                                 }
                             }
                         }
                     }
                 }
             }
         }
         if (sizeof($errors) == 0) {
             $osC_ShoppingCart->setCouponCode($_REQUEST['coupon_code']);
             $response = array('success' => true, 'feedback' => $osC_Language->get('ms_success_action_performed'));
         } else {
             $response = array('success' => false, 'feedback' => implode('<br />', $errors));
         }
     } else {
         $response = array('success' => false, 'feedback' => $osC_Language->get('ms_error_action_not_performed'));
     }
     echo $toC_Json->encode($response);
 }
Exemplo n.º 2
0
 function redeemCoupon()
 {
     global $toC_Json, $osC_Language, $osC_Payment, $osC_ShoppingCart, $osC_Currencies, $osC_Payment;
     $osC_Language->load('checkout');
     require_once 'includes/classes/coupon.php';
     $toC_Coupon = new toC_Coupon($_POST['coupon_redeem_code']);
     $errors = array();
     if (!$toC_Coupon->isExist()) {
         $errors[] = $osC_Language->get('error_coupon_not_exist');
     }
     if (!$toC_Coupon->isValid()) {
         $errors[] = $osC_Language->get('error_coupon_not_valid');
     }
     if (!$toC_Coupon->isDateValid()) {
         $errors[] = $osC_Language->get('error_coupon_invalid_date');
     }
     if (!$toC_Coupon->isUsesPerCouponValid()) {
         $errors[] = $osC_Language->get('error_coupon_exceed_uses_per_coupon');
     }
     if (!$toC_Coupon->isUsesPerCustomerValid()) {
         $errors[] = $osC_Language->get('error_coupon_exceed_uses_per_customer');
     }
     if ($toC_Coupon->hasRestrictCategories() || $toC_Coupon->hasRestrictProducts()) {
         if (!$toC_Coupon->containRestrictProducts()) {
             $errors[] = $osC_Language->get('error_coupon_no_match_products');
         }
     }
     if (!$toC_Coupon->checkMinimumOrderQuantity()) {
         $errors[] = $osC_Language->get('error_coupon_minimum_order_quantity');
     }
     if (sizeof($errors) == 0) {
         $osC_ShoppingCart->setCouponCode($_POST['coupon_redeem_code']);
         $form = toC_Json_Checkout::_getPaymentMethodForm();
         $response = array('success' => true, 'form' => $form, 'isTotalZero' => $osC_ShoppingCart->isTotalZero());
     } else {
         $response = array('success' => false, 'errors' => $errors);
     }
     echo $toC_Json->encode($response);
 }