Доброго времени суток. Пытаюсь решить задачу на изменения макроса в почтовом событии при отправки с формы обратной связи. Если пользователь авторизован, то макрос получает «Пользователь авторизован: id (логин) имя, данные из формы: Имя пользователя». Если не авторизован: «Пользователь не авторизован, данные из формы: Имя пользователя»
Прописал в local\php_interface\includes\event_handlers.php код. Но все равно макрос не получает сообщений типа "Пользователь авторизован". Только данные имени, маила и текста сообщений. А в журнале событий вообще не появляется записи. Подскажите пожалуйста в чем ошибка?
Прописал в local\php_interface\includes\event_handlers.php код. Но все равно макрос не получает сообщений типа "Пользователь авторизован". Только данные имени, маила и текста сообщений. А в журнале событий вообще не появляется записи. Подскажите пожалуйста в чем ошибка?
Код |
---|
<? $eventManager = \Bitrix\Main\EventManager::getInstance(); $eventManager->addEventHandler("main", "OnBeforeEventAdd", function (&$event, &$lid, &$arFields) { global $USER; if ($event !== "FEEDBACK_FORM") { return true; } if (!$USER->IsAuthorized()) { $arFields["AUTHOR"] = "Пользователь не авторизован, данные из формы: {$arFields["AUTHOR"]}"; } else { $arFields["AUTHOR"] = "Пользователь авторизован: {$USER->GetID()} ({$USER->GetLogin()}) {$USER->GetFullName()}, данные из формы: {$arFields["AUTHOR"]}"; } CEventLog::Add([ "SEVERITY" => "INFO", "AUDIT_TYPE_ID" => "MAIL_DATA_REPLACED", "MODULE_ID" => "main", "ITEM_ID" => $USER->GetID(), "DESCRIPTION" => "Замена данных в отсылаемом письме – {$arFields["AUTHOR"]}" ]); }); ?> |