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

Подставлять email в зависимости от выбора в форме

00 голосов
3
Добрый день!

Вопрос следующий.
Есть web-форма, через которую отправляется он-лайн заявка с сайта. Соответственно, реализовано через модуль Веб-формы.
В веб-форме есть выпадающий список с выбором города. Нужно, чтобы уведомление (почтовое событие) высылалось на адрес, подставляемый в зависимости от выбора города.

Как или через что такое реализовать?

Заранее спасибо за ответы.
спросил 05 Март, 14 от coher (280 баллов)

3 Ответы

00 голосов
У меня подобная задача была для письма о заказе от разных пользователей. Например письмо о заказе от одного пользователя должно уходить одному менеджеру, а заказ от партнеров - другому.
Сделал на событии OnBeforeEventSend.
В нем смотрел группу пользователя и в зависимости от нее подставлял нужный адрес в поле кому.

В принципе, у вас можно сделать аналогично, только адрес будет зависеть не от группы пользователя, а от значения свойства Город.
ответил 15 Авг, 14 от Almarea (3,760 баллов)
00 голосов
Интересно.

А где и как это событие подсмотреть / подловить? Откуда начинать?
ответил 19 Дек, 14 от coher (280 баллов)
00 голосов
Кажется начинаю понимать.
Нарыл в сети вот что

Код
AddEventHandler('main', 'OnBeforeEventSend', Array("MyForm", "my_OnBeforeEventSend"));
class MyForm
{
function my_OnBeforeEventSend($arFields)
  {
   
   if ($rs = CGuest::GetByID($arFields['RS_STAT_GUEST_ID']))
   {
          $ar = $rs->Fetch();
                # записываем для всех шаблонов отправки письма, там где нужно выводим в шаблоне письма #whence#
                $arFields["whence"]= $ar["FIRST_URL_FROM"];// откуда пришел
   }
  }
}


'RS_STAT_GUEST_ID' - насколько я понял, это то поле, которое отслеживается в данном примере.
Но пока не понимаю, куда это добавлять?
ответил 09 Апр, 15 от coher (280 баллов)