[solved]Не отправляется сообщение пользователям
Делаю плагин, в котором пользователям, выбранным по значению добавленного поля, отсылается сообщение — всё примерно как с отправкой сообщений подписчикам блога, но шаблон сообщения пришлось изменить. Для этого сделал модуль, наследующий Notify, и добавил свою функцию по образцу SendTopicNewToSubscribeBlog:
Почему-то при заполнении тела письма шаблоном(oViewerLocal->Fetch) в браузер выводится этот шаблон и все дальнейшие шаги не выполняются. Если присвоить переменной $sBody простую текстовую строку, этого не происходит, но и письмо тоже не доставляется, но с этим уже позже разберусь
public function SendNewMatch(ModuleUser_EntityUser $oUserTo, ModuleTopic_EntityTopic $oTopic, ModuleBlog_EntityBlog $oBlog, ModuleUser_EntityUser $oUserTopic) {
/**
* Передаём в шаблон переменные
*/
$this->oViewerLocal->Assign('oUserTo',$oUserTo);
$this->oViewerLocal->Assign('oTopic',$oTopic);
$this->oViewerLocal->Assign('oBlog',$oBlog);
$this->oViewerLocal->Assign('oUserTopic',$oUserTopic);
/**
* Формируем шаблон
*/
//ошибка
$sBody=$this->oViewerLocal->Fetch(Plugin::GetTemplatePath(__CLASS__).'notify.new_match.tpl');
/**
* Если в конфигураторе указан отложенный метод отправки,
* то добавляем задание в массив. В противном случае,
* сразу отсылаем на email
*/
if(Config::Get('module.notify.delayed')) {
$oNotifyTask=Engine::GetEntity(
'Notify_Task',
array(
'user_mail' => $oUserTo->getMail(),
'user_login' => $oUserTo->getLogin(),
'notify_text' => $sBody,
'notify_subject' => $this->Lang_Get('notify_subject_new_match').' «'.htmlspecialchars($oBlog->getTitle()).'»',
'date_created' => date("Y-m-d H:i:s"),
'notify_task_status' => self::NOTIFY_TASK_STATUS_NULL,
)
);
if(Config::Get('module.notify.insert_single')) {
$this->aTask[] = $oNotifyTask;
} else {
$this->oMapper->AddTask($oNotifyTask);
}
} else {
/**
* Отправляем email
*/
$this->Mail_SetAdress($oUserTo->getMail(),$oUserTo->getLogin());
$this->Mail_SetSubject($this->Lang_Get('notify_subject_new_match').' «'.htmlspecialchars($oBlog->getTitle()).'»');
$this->Mail_SetBody($sBody);
$this->Mail_setHTML();
$this->Mail_Send();
}
}
Почему-то при заполнении тела письма шаблоном(oViewerLocal->Fetch) в браузер выводится этот шаблон и все дальнейшие шаги не выполняются. Если присвоить переменной $sBody простую текстовую строку, этого не происходит, но и письмо тоже не доставляется, но с этим уже позже разберусь
Плагин «Error report»
3
Плагин позволяет пользователям сообщать об ошибках на сайте выделяя их мышкой и нажав соответствующую комбинацию клавиш (по умолчанию Alt+1), отправить их админу, добавив, при желании, комментарий. Админу придет собственно выделенный текст на который нужно обратить внимание, комментарий пользователя к тексту (орфографическая ошибка, недопустимые высказывания и т.п.) и ссылка на страницу где это все произошло.Можно пожаловаться на топик (сообщить о «неугодном топике») — для этого возле значка комментариев под топиком добавлена иконка. Админу придет уведомление и ссылка на топик.

Также присутствует форма обратной связи, которая доступна всем пользователям. Линк на форму находится внизу страницы, там же расположена информация о возможности сообщать администрации об ошибках (текстовая строка).
Вид формы обратной связи:

Все уведомления приходят администрации как обычные письма ЛС с возможностью уведомления через почту.
Плагин доступен в каталоге. Стоимость 5$.
Читать дальше
Уведомления во внутреннюю почту
2
Намекните, как сделать, чтобы уведомления о новых комментариях приходили также и во внутреннюю почту.
Версия 0.3.1.
Версия 0.3.1.
Дублирование писем на другой ящик
3
Как известно, отправкой писем занимается site.ru/classes/modules/notify/Notify.class.php
Подскажите, как сделать так, чтобы каждое исходящее письмо дублировалось ещё на какой-нибудь другой мейл (одинаковый для всех).
$this->Mail_SetAdress($oUserTo->getMail(),$oUserTo->getLogin());
$this->Mail_SetSubject($this->Lang_Get('notify_subject_talk_new'));
$this->Mail_SetBody($sBody);
$this->Mail_setHTML();
$this->Mail_Send();
Подскажите, как сделать так, чтобы каждое исходящее письмо дублировалось ещё на какой-нибудь другой мейл (одинаковый для всех).
Уведомления по email
4
Есть следующий вопрос по поводу уведомлений о новых сообщениях в почту. Хотелось бы, чтобы кроме текста сообщения, также указывался его автор. Для этого редактируем необходимый шаблон, например notify.comment_new.tpl, вставляя в необходиое место
Но в результате получаем пустую строку. Странно, так как, к примеру,
Что я делаю не так?
{$oComment->getUserLogin()}Но в результате получаем пустую строку. Странно, так как, к примеру,
{$oComment->getUserId()} отдается нормально…Что я делаю не так?