Здравствуйте!
Необходимо выполнить определенные действия после оплаты заказа пользователем, перепробовал все что только можно.
Почему то не срабатывают события связанные с изменение заказов и статусов заказов.
Остальные события типа OnBasketOrder, OnAfterUserAdd, OnBeforeEventAdd, OnBeforeIBlockElementDelete и т.д. работают на ура.
Создал тестовые функции с сохранением логов
В чем может быть проблема?
Версия ядра (16.0.5)
Необходимо выполнить определенные действия после оплаты заказа пользователем, перепробовал все что только можно.
Почему то не срабатывают события связанные с изменение заказов и статусов заказов.
Остальные события типа OnBasketOrder, OnAfterUserAdd, OnBeforeEventAdd, OnBeforeIBlockElementDelete и т.д. работают на ура.
Создал тестовые функции с сохранением логов
Код |
---|
// http://dev.1c-bitrix.ru/api_help/sale/events/index.php AddEventHandler("sale", "OnBeforeOrderUpdate", array("MyEvents","testOnBeforeOrderUpdate")); AddEventHandler("sale", "OnOrderUpdate", array("MyEvents","testOnOrderUpdate")); AddEventHandler("sale", "OnBeforeStatusUpdate", array("MyEvents","testOnBeforeStatusUpdate")); AddEventHandler("sale", "OnStatusUpdate", array("MyEvents","testOnStatusUpdate")); AddEventHandler("sale", "OnSaleBeforePayOrder", array("MyEvents","testOnSaleBeforePayOrder")); AddEventHandler("sale", "OnSalePayOrder", array("MyEvents","testOnSalePayOrder")); AddEventHandler("sale", "OnSaleBeforeStatusOrder", array("MyEvents","testOnSaleBeforeStatusOrder")); AddEventHandler("sale", "OnSaleStatusOrder", array("MyEvents","testOnSaleStatusOrder")); class MyEvents { function testOnBeforeOrderUpdate() { self::test(func_get_args(),__FUNCTION__); } function testOnOrderUpdate() { self::test(func_get_args(),__FUNCTION__); } function testOnBeforeStatusUpdate() { self::test(func_get_args(),__FUNCTION__); } function testOnStatusUpdate() { self::test(func_get_args(),__FUNCTION__); } function testOnSaleBeforePayOrder() { self::test(func_get_args(),__FUNCTION__); } function testOnSalePayOrder() { self::test(func_get_args(),__FUNCTION__); } function testOnSaleBeforeStatusOrder() { self::test(func_get_args(),__FUNCTION__); } function testOnSaleStatusOrder() { self::test(func_get_args(),__FUNCTION__); } function test($vars,$function) { AddMessage2Log($function."\n".var_export($vars,true)); } .... } |
Версия ядра (16.0.5)