Андрей

Андрей

С нами с 28 октября 2016; Место в рейтинге пользователей: #316
Андрей
06 июня 2017, 20:38
3
+1
Я на одном проекте так делал, просто хук написал который отправляет письмо и файл.

Создаете сниппет, например hookSendFile и указываете его в параметре &hooks=`hookSendFile` при вызове формы, при этом стандартный хук email не нужен
$fields = $hook->getValues(); //поля из формы

$message = $modx->getChunk('чанк_с_письмом', $fields);
 
$modx->getService('mail', 'mail.modPHPMailer');
$modx->mail->set(modMail::MAIL_BODY, $message);
$modx->mail->set(modMail::MAIL_FROM, $modx->getOption('emailsender'));
$modx->mail->set(modMail::MAIL_FROM_NAME, $modx->getOption('site_name'));
$modx->mail->set(modMail::MAIL_SUBJECT, 'Тема письма');
$modx->mail->address('to', $fields['email']);
$modx->mail->address('reply-to', $modx->getOption('emailsender'));
$modx->mail->attach($modx->getOption('base_path').'путь/к/файлу');
$modx->mail->setHTML(true);

if (!$modx->mail->send()) {
  $modx->log(modX::LOG_LEVEL_ERROR,'An error occurred while trying to send the email: '.$modx->mail->mailer->ErrorInfo);
}

$modx->mail->reset();

return true;