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

@ -18,9 +18,17 @@ class ViewInBrowserRenderer {
/** @var bool */
private $isTrackingEnabled;
public function __construct(Emoji $emoji, SettingsController $settings) {
/** @var Renderer */
private $renderer;
public function __construct(
Emoji $emoji,
SettingsController $settings,
Renderer $renderer
) {
$this->emoji = $emoji;
$this->isTrackingEnabled = $settings->get('tracking.enabled');
$this->renderer = $renderer;
}
public function render(
@ -47,8 +55,7 @@ class ViewInBrowserRenderer {
$newsletterBody = str_replace(Links::DATA_TAG_OPEN, '', $newsletterBody);
}
} else {
$renderer = new Renderer();
$newsletterBody = $renderer->render($newsletter, $wpUserPreview, 'html');
$newsletterBody = $this->renderer->render($newsletter, $wpUserPreview, 'html');
}
$shortcodes = new Shortcodes(
$newsletter,