Пример #1
0
 function addProduct()
 {
     global $toC_Json, $osC_Language, $osC_Tax, $osC_Weight, $osC_Currencies, $osC_ShoppingCart;
     $error = false;
     $feedback = array();
     $osC_ShoppingCart = new toC_ShoppingCart_Adapter($_REQUEST['orders_id']);
     $osC_Tax = new osC_Tax_Admin();
     $osC_Weight = new osC_Weight();
     $osC_Currencies = new osC_Currencies();
     $osC_Product = new osC_Product(osc_get_product_id($_REQUEST['products_id']));
     $gift_certificate_data = null;
     if ($osC_Product->isGiftCertificate()) {
         if (!isset($_REQUEST['senders_name']) || empty($_REQUEST['senders_name'])) {
             $error = true;
             $feedback[] = $osC_Language->get('error_sender_name_empty');
         }
         if (!isset($_REQUEST['recipients_name']) || empty($_REQUEST['recipients_name'])) {
             $error = true;
             $feedback[] = $osC_Language->get('error_recipients_name_empty');
         }
         if (!isset($_REQUEST['message']) || empty($_REQUEST['message'])) {
             $error = true;
             $feedback[] = $osC_Language->get('error_message_empty');
         }
         if ($osC_Product->isEmailGiftCertificate()) {
             if (!isset($_REQUEST['senders_email']) || empty($_REQUEST['senders_email'])) {
                 $error = true;
                 $feedback[] = $osC_Language->get('error_sender_email_empty');
             }
             if (!osc_validate_email_address($_REQUEST['senders_email'])) {
                 $error = true;
                 $feedback[] = $osC_Language->get('error_sender_email_invalid');
             }
             if (!isset($_REQUEST['recipients_email']) || empty($_REQUEST['recipients_email'])) {
                 $error = true;
                 $feedback[] = $osC_Language->get('error_recipients_email_empty');
             }
             if (!osc_validate_email_address($_REQUEST['recipients_email'])) {
                 $error = true;
                 $feedback[] = $osC_Language->get('error_recipients_email_invalid');
             }
         }
         if ($error === false) {
             if ($osC_Product->isEmailGiftCertificate()) {
                 $gift_certificate_data = array('senders_name' => $_REQUEST['senders_name'], 'senders_email' => $_REQUEST['senders_email'], 'recipients_name' => $_REQUEST['recipients_name'], 'recipients_email' => $_REQUEST['recipients_email'], 'message' => $_REQUEST['message']);
             } else {
                 $gift_certificate_data = array('senders_name' => $_REQUEST['senders_name'], 'recipients_name' => $_REQUEST['recipients_name'], 'message' => $_REQUEST['message']);
             }
             $gift_certificate_data['type'] = $osC_Product->getGiftCertificateType();
             if ($osC_Product->isOpenAmountGiftCertificate()) {
                 $gift_certificate_data['price'] = $_REQUEST['gift_certificate_amount'] / $osC_ShoppingCart->getCurrencyValue();
             }
         }
     }
     if ($error === false) {
         if ($osC_ShoppingCart->addProduct($_REQUEST['products_id'], $_REQUEST['new_qty'], $gift_certificate_data)) {
             $response = array('success' => true, 'feedback' => $osC_Language->get('ms_success_action_performed'));
         } else {
             $response = array('success' => false, 'feedback' => $osC_Language->get('ms_error_action_not_performed'));
         }
     } else {
         $response = array('success' => false, 'feedback' => implode('<br />', $feedback));
     }
     echo $toC_Json->encode($response);
 }