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); }
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); }