Разные адреса почты администратора в зависимости от sid Webform Drupal 7

Главные вкладки

Аватар пользователя Smarat Smarat 27 февраля 2017 в 22:57

Задача: отправлять в зависимости от номера submited формы(webform) на разные адреса администратора.
Пробовал rules для webform пока без положительного результата.
Может хук какой есть для определения sid, сразу после заполнения и отправки вебформы?
Какие есть идеи или код как можно решить?

Лучший ответ

Аватар пользователя Smarat Smarat 1 марта 2017 в 14:42

Все заработало! Хук оказался тот, все отлично пашет. Спасибо за помощь!

Комментарии

Аватар пользователя Smarat Smarat 28 февраля 2017 в 11:08

Спасибо за ответ.

Алгоритм работы:
1) Отправлена заявка
2) Берем номер submition делим его на 5 с остатком (sid % 5)
3) В зависимости от величины остатка посылаем человеку (их 5,адреса почты разные) на почту письмо с данными из webform

Старался сделать это:
1) через условия-нету в селекторах sid
2)в шаблоне webform-confirmation.tpl.php:

include_once(drupal_get_path('module', 'webform') .'/includes/webform.submissions.inc');
$nid = arg(1);
$sid = $_GET['sid'];
$submission = webform_get_submission($nid, $sid);
далее условия отправки почты.

Вопрос когда пересылаю $sid в письме(в итоге просто отправка почты пока), он равен 0. Произвольный текст сообщения приходит в письме.
upd. форма в блоке и далее отображается пользователю как pop-up окно.

Прошу рассказать варианты решения, этой задачи.

Аватар пользователя gun_dose gun_dose 28 февраля 2017 в 11:09

Выше всё верно написали. Делайте свой модуль и имплементируйте вышеуказанные хуки. А инклюдить что-то в шаблон - забудьте.

Аватар пользователя Smarat Smarat 28 февраля 2017 в 11:25

Правильно ли я понял ? :
1) создаю свой модуль (тут понятно)
2) Использую function hook_webform_submission_insert($node, $submission)
и там
$sid1 = $submission->sid
if ($sid1%5==1) {
действия
}
За синтаксис прошу простить- поправлю в реализации.
Пока не понимаю:
a) какой хук использовать?
б) как получать правильно sid? (Google смотрел, не смог найти в этом хуке)
Подскажите пожалуйста.

Аватар пользователя Smarat Smarat 28 февраля 2017 в 11:40

Спасибо за ответ Антон и Алексей. Ваша поддержка мне реально помогает решать эту задачу.
Если будут еще дополнения или рекомендации, говорите.
Пошел писать тестовый модуль. По мере написания напечатаю результаты.