Оповещение сотрудника на портале Битрикс24

Оповещение сотрудника на портале Битрикс24

12.05.2017

Задача
Доработка на портале Битрикс24 оповещения сотрудника на его почту при добавлении элемента инфоблока к которому сотрудник привязан.

Этапы реализации
1) Разработка и программирование обработчика для добавления значения рабочей почты сотрудника, которому объявили благодарность (элемент инфоблока) в почтовый шаблон.
2) Создание почтового события и настройка почтового шаблона для оповещений сотрудников о новой благодарности
3) Тестирование работоспособности события оповещения о новой благодарности сотруднику.
Примечания:
/local/php_interface – в системной папке в файл init.php добавлен код нового обработчика для добавления значения (макроса) рабочей почты сотрудника, которому объявили благодарность в почтовый шаблон.
Для почтового события THANKS был добавлен новый почтовый шаблон [146] #SITE_NAME#: Вам была добавлена новая благодарность
Особенности
В процессе разработки обработчика у меня проблема вывести в почтовом шаблоне макрос поля, в моем случае это #’WORKER_EMAIL#

Как выяснилось, особенностью CEvent::Send является то, что любое доступное свойство элемента инфоблока можно передать в обработчике в почтовый шаблон и использовать.

Рабочий пример обработчика

class MyAdmin
{
// создаем обработчик события «OnAfterIBlockElementAdd»
function OnAfterIBlockElementAddHandler(&$arFields)
{
if(!$arFields[«RESULT»])
return false;
if ($arFields[«IBLOCK_ID»] == 25)
{
$db_props = CIBlockElement::GetProperty(25, $arFields[‘ID’], «sort», «asc», Array(«CODE»=>»USER»));

if ($ar_props = $db_props->Fetch())
{
$THANKSUSER=$ar_props[‘VALUE’];//получаем значение сотрудника, которому объявили благодарность
}
$rsUser = CUser::GetByID($THANKSUSER);
$arUser = $rsUser->Fetch();
$WORKEREMAIL=$arUser[‘EMAIL’]; //получаем значение почты сотрудника, которому объявили благодарность
{ $arIBlockElement = GetIBlockElement($arFields[«ID»]);
$arSend = array(
‘WORKER_EMAIL’ => $WORKEREMAIL,
‘TEXT’ => $arIBlockElement[‘DISPLAY_PROPERTIES’][‘USER’][‘DISPLAY_VALUE’].’ добавил благодарность’);
$arrSite = ‘s1’;
CEvent::Send(‘THANKS2’,$arrSite,$arSend);
}
}
}
}


Ещё статьи:

30.08.2022 Типовые претензии к подрядчику и к битрикс
По свежим следам я собрал типовые претензии к подрядчику и к битрикс. Мной был проведён аудит и я увидел, что техническое состояние сайта хорошее, нареканий... ID: 338

14.06.2022 Z-Донбасс и мой скромный волонтёрский вклад
Z-Донбасс и мой скромный волонтёрский вклад. Народ не забываем помогать людям Донбасса, которые оказались в сложной ситуации, без денег, еды.
В моём случае... ID: 334

20.09.2021 Разговор с рекрутером в 2021. Мидл это младший специалист и на удалёнку не ниже сеньёра
Рекрутер: В принципе ок, но обычно младших специалистов мы в офис берем). Что скажете?
П.С. Мда, интересно оказывается, что мидл это младший специалист,... ID: 320

Новые статьи в блоге:

09.11.2022 NetAngels символьные ссылки не работают для битрикс
На тарифе виртуального сервера в NetAngels я создал символьные ссылки для второго сайта, но они не работают 403 ошибка и непонятно в чём причина. Но п... ID: 344

06.10.2022 Задача модуль сертификатов
Разработать кастомный модуль сертификатов для сайта на CMS Bitrix
Суть модуля: Генерация 2х видов сертификатов для участников семинара. ID: 343

06.10.2022 Задача SEO модуль перелинковки
Нам необходимо разработать небольшой модуль для реализации перелинковки разделов компонента bitrix.catalog:

- Управление - через импорт-экспорт CSV/XLSX... ID: 342

Возврат к списку

© 2015-2022 Web админ
Связаться по WhatsApp