Exemple #1
0
					{
						$bUserCanDeductOrder = CSaleOrder::CanUserChangeOrderFlag($ID, "PERM_DEDUCTION", $arUserGroups);

						$errorMessageTmp = "";

						if (!$bUserCanDeductOrder)
						{
							$errorMessageTmp .= GetMessage("SOD_NO_PERMS2DEDUCT").". ";
						}

						if ($useStores)
						{
							//check if total ordered quantity = quantity on stores
							if ($errorMessageTmp == "" && $DEDUCTED == "Y")
							{
								if(!CSaleOrderHelper::checkQuantity($_POST["PRODUCT"]))
									if ($ex = $APPLICATION->GetException())
										$errorMessageTmp .= $ex->GetString();

							}

							//check if barcodes are valid for deduction
							if ($errorMessageTmp == "" && $DEDUCTED == "Y") //TODO? && $_POST["HAS_PRODUCTS_WITH_BARCODE_MULTI"] == "Y")
							{
								if(!CSaleOrderHelper::checkBarcodes($_POST["PRODUCT"]))
									if ($ex = $APPLICATION->GetException())
										$errorMessageTmp .= $ex->GetString();
							}
						}

						//updating tmp Id in the store data from the form to the basket ID if the product was added to the basket later
Exemple #2
0
         foreach ($arProduct["STORES"] as $arStore) {
             if ($arProduct["BARCODE_MULTI"] == "N") {
                 reset($arStore["BARCODE"]);
                 $arStore["BARCODE"] = current($arStore["BARCODE"]);
                 unset($arStore["BARCODE_FOUND"]);
             }
             if (isset($arStore["QUANTITY"]) && intval($arStore["QUANTITY"]) > 0) {
                 $arStoresTmp[] = $arStore;
             }
         }
     }
     $arProducts[$prodId]["STORES"] = $arStoresTmp;
     $arStoreInfo[$prodId] = $arStoresTmp;
 }
 if ($deducted == "Y" && $useStores) {
     if (!CSaleOrderHelper::checkQuantity($arProducts)) {
         if ($ex = $APPLICATION->GetException()) {
             $arResult["ERROR"] = $ex->GetString();
             break;
         }
     }
     //check if barcodes are valid for deduction
     if (!CSaleOrderHelper::checkBarcodes($arProducts)) {
         if ($ex = $APPLICATION->GetException()) {
             $arResult["ERROR"] = $ex->GetString();
             break;
         }
     }
 }
 if (strlen($undoReason) > 0) {
     $undoReason = $APPLICATION->ConvertCharset($undoReason, 'utf-8', SITE_CHARSET);