Документация для разработчиков

OnBeforeProductAdd

bool функция-обработчик( 
  array &$arFields 
)

Событие вызывается в методе CCatalogProduct::Add перед добавлением товара. Позволяет изменить вносимые данные до вызова CCatalogProduct::CheckFields либо вообще отменить запись.

Параметры

Параметр Описание
arFields Ассоциативный массив, ключами которого являются названия параметров товара, а значениями - новые значения параметров.
Допустимые ключи:
  • ID - код товара (элемента каталога - обязательный);
  • QUANTITY - количество товара на складе;
  • QUANTITY_TRACE - флаг (Y/N) "уменьшать ли количество при заказе";
  • WEIGHT - вес единицы товара;
  • PRICE_TYPE - тип цены (S - одноразовый платеж, R - регулярные платежи, T - пробная подписка;)
  • RECUR_SCHEME_TYPE - тип периода подписки ("H" - час, "D" - сутки, "W" - неделя, "M" - месяц, "Q" - квартал, "S" - полугодие, "Y" - год);
  • RECUR_SCHEME_LENGTH - длина периода подписки;
  • TRIAL_PRICE_ID - код товара, для которого данный товар является пробным;
  • WITHOUT_ORDER - флаг "Продление подписки без оформления заказа";
  • VAT_ID - код НДС;
  • VAT_INCLUDED - флаг (Y/N) включен ли НДС в цену.

Возвращаемое значение

Возвращает false при отказе, возвращает true при успешном разрешении на добавление.

Примеры использования

AddEventHandler("catalog", "OnBeforeProductAdd", Array("My_Class", "OnBeforeProductAdd"));   
  
class My_Class  
{
  function OnBeforeProductAdd(&$arFields)
  { 
    $arFields["QUANTITY_TRACE"] = "Y"; 
    return true;
  }
} 


© «Битрикс», 2001-2019, «1С-Битрикс», 2019
Наверх