Размещу здесь пример кода для ядра D7, чтобы задать ищущим направление. Функция отслеживает изменение флага оплаты заказа
Код |
---|
\Bitrix\Main\EventManager::getInstance()->addEventHandler('sale', 'OnBeforeSalePaymentSetField', 'changePrice');
function changePrice(\Bitrix\Main\Event $event)
{
$name = $event->getParameter('NAME');
$value = $event->getParameter('VALUE');
if ($name == 'PAID' && $value =="Y") { // это проверка, что ставится флаг оплаты в этот момент, как пример
return new \Bitrix\Main\EventResult(\Bitrix\Main\EventResult::ERROR, new \Bitrix\Sale\ResultError('You cant pay this now', 'code'), 'sale');
}
else
{
return new \Bitrix\Main\EventResult(\Bitrix\Main\EventResult::SUCCESS);
}
}
|