Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Почтовое событие

00 голосов
3
Подскажите плиз!

Создано почтовое событие:
Отправка сообщения владельцу контракта при внесении изменений в контракт администрацией
#CONTRACT_ID# - Номер контракта
#CREATED_USER_NAME# - Имя владельца контракта
#EMAIL# - E-Mail пользователя

Создан почтовый шаблон:
в шаблоне используются три переменные из события
в настоящее время в адресе отправки письма введен фиксированный e-mail, но должен будет стоять "EMAIL"

Создан обработчик события:
<?

AddEventHandler("iblock", "OnAfterIBlockElementUpdate", Array("MyClass", "OnAfterIBlockElementUpdateHandler"));
class MyClass
{
function OnAfterIBlockElementUpdateHandler(&$arFields)
{
$arFields = Array(
"CONTRACT_ID" => $arFields["ID"],
"CREATED_USER_NAME" => $arFields["CREATED_USER_NAME"],
"EMAIL" => $arFields["USER_EMAIL"]
);
CEvent::Send("CONTRACT_SAVED","s1",$arFields);
}
}
?>

При внесении изменений в элемент почтовое событие срабатывает и сообщение уходит по адресу. Из трех переменных выводится только ID контракта (соответствует ID Элемента), остальные пустые. Пробовал разные варианты методом проб и ошибок с тем же результатом. Необходимо, чтобы в поле "CREATED_USER_NAME" передавалось Имя Фамилия из профиля создателя элемента, и соответственно его e-mail адрес в поле "EMAIL". Поля при регистрации обязательные (не пустые).
спросил 20 Март, 14 от limo (100 баллов)

3 Ответы

00 голосов
Цитата
jurassics пишет:
Из трех переменных выводится только ID контракта (соответствует ID Элемента), остальные пустые.

Если приходят пустые, значит в $arFields["CREATED_USER_NAME"] ничего нет. Вообще-то по умолчанию там и нет этих полей, которые вы пытаетесь использовать.
Для начала сделайте print_r массива $arFields; и исходя из того, что там есть вытаскивайте остальные данные через апи.
ответил 14 Сен, 14 от Askaria (380 баллов)
00 голосов
Их там нет :(
а как передать в шаблон значения Фамилия Имя создателя элемента и его e-mail, которые хрянатся в его профайле?
ответил 19 Янв, 15 от limo (100 баллов)
00 голосов
Код
<?
global $USER;
echo $USER->GetEmail();
echo $USER->GetFullName();
?>
ответил 04 Май, 15 от Ritsu (260 баллов)