Use Di for newsletter renderer

[MAILPOET-2899]
This commit is contained in:
Pavel Dohnal
2020-05-26 13:05:49 +02:00
committed by Veljko V
parent fbc6786058
commit 7e0b536ff4
10 changed files with 116 additions and 62 deletions

View File

@@ -21,14 +21,19 @@ class SendPreviewController {
/** @var WPFunctions */
private $wp;
/** @var Renderer */
private $renderer;
public function __construct(
Mailer $mailer,
MetaInfo $mailerMetaInfo,
Renderer $renderer,
WPFunctions $wp
) {
$this->mailer = $mailer;
$this->mailerMetaInfo = $mailerMetaInfo;
$this->wp = $wp;
$this->renderer = $renderer;
}
public function sendPreview(NewsletterEntity $newsletter, string $emailAddress) {
@@ -38,8 +43,7 @@ class SendPreviewController {
throw new SendPreviewException("Newsletter with ID '{$newsletter->getId()}' not found");
}
$renderer = new Renderer();
$renderedNewsletter = $renderer->render($newsletterModel, $preview = true);
$renderedNewsletter = $this->renderer->render($newsletterModel, $preview = true);
$divider = '***MailPoet***';
$dataForShortcodes = array_merge(
[$newsletter->getSubject()],