Здравствуйте.
В ИМ на битриксе собираюсь делать рассылку писем при смене статуса заказа. Для этого вешаю обработчик на событие 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 есть еще обработчики - работают нормально, а этот - нет. В чем может быть проблема?