Здравствуйте!
Нужно, чтобы при добавлении/изменении товара(в основном из 1С) проверялось кол-во и если менее 4шт, то товар бы деактивировался.
Собственно OnBeforeProductAdd отрабатывает без проблем, а OnBeforeProductUpdate не работает. Где ошибка?
Нужно, чтобы при добавлении/изменении товара(в основном из 1С) проверялось кол-во и если менее 4шт, то товар бы деактивировался.
Собственно OnBeforeProductAdd отрабатывает без проблем, а OnBeforeProductUpdate не работает. Где ошибка?
| Код |
|---|
AddEventHandler("catalog", "OnBeforeProductAdd", Array("ProductQuantityClass", "OnBeforeProductAddQuan"));
AddEventHandler("catalog", "OnBeforeProductUpdate", Array("ProductQuantityClass", "OnBeforeProductUpdateQuan"));
class ProductQuantityClass
{
function OnBeforeProductAddQuan(&$arFields)
{
if($arFields["QUANTITY"] < 4) {
$el = new CIBlockElement;
$arLoadProductArray = Array("ACTIVE" => "N");
$res = $el->Update($arFields["ID"], $arLoadProductArray);
return true;
} else {
return true;
}
}
function OnBeforeProductUpdateQuan($ID, &$arFields)
{
if($arFields["QUANTITY"] < 4) {
$el = new CIBlockElement;
$arLoadProductArray = Array("ACTIVE" => "N");
$res = $el->Update($arFields["ID"], $arLoadProductArray);
return true;
} else {
$el = new CIBlockElement;
$arLoadProductArray = Array("ACTIVE" => "Y");
$res = $el->Update($arFields["ID"], $arLoadProductArray);
return true;
}
}
}
|