Спасибо. а на счет разделения шаблонов в зависимости от типа

мероприятия. в каком месте правильно вычислять, какой именно шаблон использовать?
сейчасть логика такая:
есть некий EmailManager, у которого есть метод sendEmailMessage(string $emailType, array $inputParams). данный метод, в зависимости от $emailType собирает нужный массив данных для письма($emailVars) и складывает их в БД. Дальше крон-скрипт берет из БД данные($emailType + $emailVars), в зависимости от $emailType выбирает нужный шаблон, собирает из $emailVars HTML письма и собственно отправляет его в smtp.

Мне кажется, что правильно выбирать шаблон как раз на этапе EmailManager-а, но тогда придется эту инфу прокидывать через БД в скрипт отправки. это норм?

7 ответов

6 просмотров

что мешает в $emailVars добавить нужный шаблон?

Yuri-Barsukov Автор вопроса
𝔏𝔦𝔩𝔦𝔱𝔥
что мешает в $emailVars добавить нужный шаблон?

ээ... а так можно было? 😂😂😂😂😂 спасибо. почему-то в эту сторону вообще не подумал :)

𝔏𝔦𝔩𝔦𝔱𝔥
что мешает в $emailVars добавить нужный шаблон?

я бы так не делал... плохая идея ложить в бд что-то, что хоть как-то опирается на структуру проекта. Пути к шаблонам, полные имена классов и т.п Типа что-то порефакторили, перенесли шаблон или переименовали и какой-то залипший меседж уже не уйдет. Если писем немного, то можно прямо в кнстанте положить мапу тайп-шаблон. Если много, то можно вынести в отдельный классик, который по типу вернет нужный шаблон

Yuri-Barsukov Автор вопроса
Volodymyr Melko
я бы так не делал... плохая идея ложить в бд что-т...

у нас сейчас так и сделано. в БД хранится $emailType, есть список соотвествия $emailType => $emailTemplate но сейчас появляется еще одно условие. на один и тот же $emailType два разных шаблона, в зависимости от определенных данных(тип мероприятия, для которого идет отправка письма)

Yuri Barsukov
у нас сейчас так и сделано. в БД хранится $emailTy...

Ну вот если появилась такая логика,то есть смысл вынести в отдельный класс, и может даже не один, если логика прямо развесистая для разных типов

Похожие вопросы

Обсуждают сегодня

Всем привет. Подскажите, почему не меняется значение поля при переключении сайта?
Alexander Peterikov
11
Можно ли загрузить скрипт py в бота чтобы он работал по нему? как это сделать?
huskadam #RCC Фанат? @hitlerpvp
13
'frakturBold' => ['𝖆', '𝖇', '𝖈', '𝖉', '𝖊', '𝖋', '𝖌', '𝖍', '𝖎', '𝖏', '𝖐', '𝖑', '𝖒', '𝖓', '𝖔', '𝖕', '𝖖', '𝖗', '𝖘', '𝖙', '𝖚', '𝖛', '𝖜', '𝖝', '𝖞', '𝖟', '𝕬', '𝕭', '𝕮', '𝕯'...
Roma
4
Добрый день, не подскажите, если в OC-V3 поменять страндартную директорию /storage/ на /storage2/ - не будет сильно много проблем ?
Max Dubovsky
32
Ребят, а за скок можно впарить анон чат с апишкой и веб админкой ?
Eugene Неелов
15
Цвет аватарки с буквой же зависит от айди? Как может быть такое, что этот цвет поменялся?
Lencore
2
Приветствую друзья, подскажите сколько в среднем стоит на данный момент создать тг бота который будет как магазин? Показывать ассортименты доставлять заказы и тд? Все по станд...
Eugene
3
@dblackCat Привет. Это же твой плагин? https://octobercms.com/plugin/catdesign-productbundle
Alexey Yakimov
5
Добрый день! Кто-нибудь знает как подключить твиг в контроллеры плагина?
Николай Афанасенко
5
Ты просто гитлеровскую эстетику плохо понимаешь. Он же всё под Цезаря делал. А это как бы запрещённый приём в политике. Пиджаки они зачем все носят? Чтобы показать что они тип...
Ivan Kropotkin
4
Карта сайта