ddSendFeedback

Snippet Скачать32 скачивания

Описание

Сниппет для отправки сообщений обратной связи от пользователей на необходимый email. Удобно использовать при отправке через ajax. Особенности:

  • Отправка писем от email, указанного пользователем, а не от системного email (см. параметр «fromField»);
  • Получение адреса почты, на который нужно отправлять из поля (или TV) документа (см. параметры «getEmail» и «getId»);
  • Поддержка вложений файлов в email (см. параметр «filesFields»).

К примеру, отправка обратной связи на этом сайте реализована при помощи этого сниппета.

Список изменений

  • Добавлена обработка ответа в виде массива от ddSendMail (1.5.1 и выше) при отправке на несколько адресов.
  • За ненадобностью удалён параметр «getPublished».

Документация

Из каждой пары параметров email/getEmail и tpl/text необходимо передавать лишь один.

Возвращает строку в формате JSON — объект со следующими полями:

  • status — Статус отправки (0 или 1).
  • title — Заголовок сообщения (из параметра «titleTrue» / «titleFalse» в соответствии со статусом отправки).
  • message — Сообщение (из параметра «msgTrue» / «msgFalse» в соответствии со статусом отправки).

Описание параметров

Название Описание Допустимые значения Значение по умолчанию
email* Адрес почты, на которую необходимо отправить сообщение. {string}
getEmail Имя поля документа (или TV), значение которого необходимо получить (содержащего адрес почты). {string}
getId ID документа, значение поля которого нужно получить (содержащего адрес почты). {integer}
tpl* Шаблон письма (имя чанка).

Доступные плэйсхолдеры: [+userUrl+] — адрес, с которого был отправлен запрос ($_SERVER['HTTP_REFERER']) и все переменные из массива $_POST.
{string: chunkName}
text Текст сообщения, если передан, шаблоны игнорируются. Удобно использовать при запуске сниппета через $modx->runSnippets(). {string}
subject Тема письма. {string} 'Обратная связь'
from От кого письмо (email отправителя). {string} 'info@divandesign.ru'
fromField Элемент массива $_POST с email отправителя. Если задано (и значение не пустое), то параметр «from» игнорируется. {string}
titleTrue Заголовок, который будет возвращён, если отправка письма прошла успешно (поле «title» результирующего JSON). {string} 'Заявка успешно отправлена'
titleFalse Заголовок, который будет возвращён, если отправка письма по какой-то причине не удалась (поле «title» результирующего JSON). {string} 'Непредвиденная ошибка =('
msgTrue Сообщение, которое будет возвращено, если отправка письма прошла успешно (поле «message» результирующего JSON). {string} 'Наш специалист свяжется с вами в ближайшее время.'
msgFalse Сообщение, которое будет возвращено, если отправка письма по какой-то причине не удалась (поле «message» результирующего JSON). {string} 'Во время отправки заявки что-то произошло.< br />Пожалуйста, попробуйте чуть позже.'
filesFields Имена тегов input из которых необходимо брать файлы для отправки, разделённые через запятую. Используется, в случае если в запросе передаются ещё и файлы (массив $_FILES). {comma separated string}