OnBeforeProductPriceDelete
Описание и параметры
функция-обработчик( int $ProductID, array &$arExceptionIDs )OnBeforeProductPriceDelete - событие, вызываемое перед удалением существующих цен товара в методе CPrice::DeleteByProduct(). На вход получает ID товара и массив ID цен, не подлежащих удалению. Если обработчик возвращает false, удаление будет отменено.
Параметры
| Параметр | Описание |
|---|---|
| ProductID | код товара |
| arExceptionIDs | Массив, содержащий ID цен, которые необходимо оставить (не удалять) |
Возвращаемое значение (обработчиком)
- true, если удаление разрешено
- false, если удаление запрещено
Примеры использования
Запрет на удаление цен для товаров (обработчик в файле /bitrix/php_interface/init.php)
public static function DeleteProductPriceStop ($intID,&$arExceptionIDs)
{
return false;
}
AddEventHandler("catalog", "OnBeforeProductPriceDelete", "DeleteProductPriceStop");
Запрет на удаление рублевых цен для товаров
public static function DeleteProductPriceStopRub ($intID,&$arExceptionIDs)
{
if (CModule::IncludeModule('catalog'))
{
$rsPrices = CPrice::GetList(array(),array('PRODUCT_ID' => $intID,'CURRENCY' => 'RUB'));
while ($arPrice = $rsPrices->Fetch())
{
$arExceptionIDs[] = $arPrice['ID'];
}
}
return true;
}
AddEventHandler("catalog", "OnBeforeProductPriceDelete", "DeleteProductPriceStopRub");
© «Битрикс», 2001-2025, «1С-Битрикс», 2025