Уведомления о новых пользователях через Office
Используя компонент Office от Василия Наумкина, о новых зарегистрированных пользователях на сайте можно узнать лишь из админки. Но у некоторых компаний бизнес-процесс построен так, что менеджер должен оперативно реагировать на такие события: перезванивать, отправлять смс и т.п. Это необходимо предусмотреть при разработке интернет-магазина. Расширить функционал компонента можно, написав плагин, который будет срабатывать на событие OnUserActivate.
<?php
switch ($modx->event->name) {
case 'OnUserSave':
$tpl = $modx->getOption('emailTpl',$scriptProperties,'newUserTpl');
if ($mode == 'new') {
$message = $modx->getChunk($tpl,array_merge($user->toArray(),$user->Profile->toArray()));
$email = $modx->getOption('formit.user_email');
$modx->getService('mail', 'mail.modPHPMailer');
$modx->mail->set(modMail::MAIL_BODY,$message);
$modx->mail->set(modMail::MAIL_FROM,'no-replay@site.ru');
$modx->mail->set(modMail::MAIL_FROM_NAME,'Сервис уведомлений');
$modx->mail->set(modMail::MAIL_SUBJECT,'Новый пользователь');
$modx->mail->address('to',$email);
$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();
}
break;
}
Где newUserTpl — это шаблон письма, которое придёт на почту и может содержать полное имя пользователя, Email, id. Названия этих переменных можно найти в документации к компоненту.