ddSendFeedback

Snippet
  • Версия: 1.9.2
  • Выпущено:
  • Метки: General
  • Использует:
Скачать 513 скачиваний

Описание

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

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

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

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

  • Следующие параметры были переименованы (старые имена пока поддерживаются, но не рекомендуются к использованию):
    • «titleTrue» → «result_titleSuccess».
    • «titleFalse» → «result_titleFail».
    • «msgTrue» → «result_messageSuccess».
    • «msgFalse» → «result_messageFail».
    • «docField» → «email_docField».
    • «docId» → «email_docId».
    • «fromField» → «from_formField».
  • Внимание! Сниппет теперь использует библиотеку «modx.ddTools» 0.15.4!
  • Небольшой рефакторинг, стиль кода, комментарии.

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

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

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

{
	// Статус отправки (0 или 1).
	status: bool,
	// Заголовок сообщения (из параметра «result_titleSuccess» / «result_titleFail» 
	// в соответствии со статусом отправки).
	title: 'title',
	// Сообщение (из параметра «result_messageSuccess» / «result_messageFail» 
	// в соответствии со статусом отправки).
	message: 'message'
}

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

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

Доступные плэйсхолдеры: — id документа, с которого был сделан запрос и все переменные из массива $_POST. Для генерации ссылки на документ, с которого был отправлен запрос используйте http://code.divandesign.ru/[~~] (http://code.divandesign.ru/ здесь необходим, т.к. ссылки в письмах должны быть абсолютными).
{string: chunkName}
text Текст сообщения, если передан, шаблоны игнорируются. Удобно использовать при запуске сниппета через $modx→runSnippets (). {string}
subject Тема письма. {string} 'Обратная связь'
from От кого письмо (email отправителя). {string} 'info@divandesign.biz'
from_formField Элемент массива $_POST с email отправителя. Если задано (и значение не пустое), то параметр «from» игнорируется. {string}
filesFields Имена тегов input из которых необходимо брать файлы для отправки, разделённые через запятую. Используется, в случае если в запросе передаются ещё и файлы (массив $_FILES). {comma separated string}
result_titleSuccess Заголовок, который будет возвращён, если отправка письма прошла успешно (поле «title» результирующего JSON). {string} 'Заявка успешно отправлена'
result_titleFail Заголовок, который будет возвращён, если отправка письма по какой-то причине не удалась (поле «title» результирующего JSON). {string} 'Непредвиденная ошибка =('
result_messageSuccess Сообщение, которое будет возвращено, если отправка письма прошла успешно (поле «message» результирующего JSON). {string} 'Наш специалист свяжется с вами в ближайшее время.'
result_messageFail Сообщение, которое будет возвращено, если отправка письма по какой-то причине не удалась (поле «message» результирующего JSON). {string} 'Во время отправки заявки что-то произошло.
Пожалуйста, попробуйте чуть позже.'