Здравствуйте.
В ИМ на битриксе собираюсь делать рассылку писем при смене статуса заказа. Для этого вешаю обработчик на событие OnOrderStatusSendEmail в init.php
То есть, как видно, для всех статусов работает одно почтовое событие (SALE_STATUS_CHANGED - подменяю прям в обработчике). Проблема в том, что при смене статуса у заказа через админку - ничего не происходит, письма нет. Даже в таблицу b_event ничего не пишется.
У статусов галочка на отправку уведомлений есть, все стандартные шаблоны, касаемые статусов - отключены, шаблон для SALE_STATUS_CHANGED существует и активен.
В init.php есть еще обработчики - работают нормально, а этот - нет. В чем может быть проблема?
В ИМ на битриксе собираюсь делать рассылку писем при смене статуса заказа. Для этого вешаю обработчик на событие OnOrderStatusSendEmail в init.php
Код |
---|
AddEventHandler("sale", "OnOrderStatusSendEmail", "OnSaleStatusOrder_mail"); function OnSaleStatusOrder_mail($ID, &$eventName, &$arFields, $val) { // Получаем параметры заказа $arOrder = CSaleOrder::GetByID($ID); //Получаем свойства заказа $db_props = CSaleOrderPropsValue::GetOrderProps($ID); // Получаем код статуса заказа $arStatus = CSaleStatus::GetByID($val); $arStatus = $arStatus["NAME"]; $EMAIL = ""; while ($arProps = $db_props->Fetch()) { if($arProps["CODE"] == "EMAIL") { $EMAIL = $arProps["VALUE"]; } } $eventName="SALE_STATUS_CHANGED"; $arFields["ORDER_ID"] =$ID; $arFields["ORDER_STATUS"] =$arStatus; $arFields["ORDER_DATE"] = $arOrder["DATE_INSERT"]; $arFields["EMAIL"] =$EMAIL; } |
У статусов галочка на отправку уведомлений есть, все стандартные шаблоны, касаемые статусов - отключены, шаблон для SALE_STATUS_CHANGED существует и активен.
В init.php есть еще обработчики - работают нормально, а этот - нет. В чем может быть проблема?