Optimize "withMessage()" default

This commit is contained in:
nupplaPhil 2020-03-07 12:48:25 +01:00
parent 6730ddfd99
commit 1d15f6f848
No known key found for this signature in database
GPG key ID: D8365C3D36B77D90

View file

@ -40,7 +40,7 @@ class SystemMailBuilder extends MailBuilder
/** @var string */ /** @var string */
protected $preamble = ''; protected $preamble = '';
/** @var string */ /** @var string */
protected $body = null; protected $body = '';
/** @var string */ /** @var string */
protected $siteAdmin; protected $siteAdmin;
@ -63,13 +63,13 @@ class SystemMailBuilder extends MailBuilder
/** /**
* Adds a message * Adds a message
* *
* @param string $subject The subject of the email * @param string $subject The subject of the email
* @param string $preamble The preamble of the email * @param string $preamble The preamble of the email
* @param string|null $body The body of the email (if not set, the preamble will get used as body) * @param string $body The body of the email (optional)
* *
* @return static * @return static
*/ */
public function withMessage(string $subject, string $preamble, string $body = null) public function withMessage(string $subject, string $preamble, string $body = '')
{ {
$this->subject = $subject; $this->subject = $subject;
$this->preamble = $preamble; $this->preamble = $preamble;
@ -94,15 +94,13 @@ class SystemMailBuilder extends MailBuilder
*/ */
protected function getHtmlMessage() protected function getHtmlMessage()
{ {
$htmlVersion = !empty($this->body) ? BBCode::convert($this->body) : '';
// load the template for private message notifications // load the template for private message notifications
$tpl = Renderer::getMarkupTemplate('email/system/html.tpl'); $tpl = Renderer::getMarkupTemplate('email/system/html.tpl');
return Renderer::replaceMacros($tpl, [ return Renderer::replaceMacros($tpl, [
'$preamble' => str_replace("\n", "<br>\n", $this->preamble), '$preamble' => str_replace("\n", "<br>\n", $this->preamble),
'$thanks' => $this->l10n->t('thanks'), '$thanks' => $this->l10n->t('thanks'),
'$site_admin' => $this->siteAdmin, '$site_admin' => $this->siteAdmin,
'$htmlversion' => $htmlVersion, '$htmlversion' => BBCode::convert($this->body),
]); ]);
} }
@ -113,15 +111,13 @@ class SystemMailBuilder extends MailBuilder
*/ */
protected function getPlaintextMessage() protected function getPlaintextMessage()
{ {
$textVersion = !empty($this->body) ? BBCode::toPlaintext($this->body) : '';
// load the template for private message notifications // load the template for private message notifications
$tpl = Renderer::getMarkupTemplate('email/system/text.tpl'); $tpl = Renderer::getMarkupTemplate('email/system/text.tpl');
return Renderer::replaceMacros($tpl, [ return Renderer::replaceMacros($tpl, [
'$preamble' => $this->preamble, '$preamble' => $this->preamble,
'$thanks' => $this->l10n->t('thanks'), '$thanks' => $this->l10n->t('thanks'),
'$site_admin' => $this->siteAdmin, '$site_admin' => $this->siteAdmin,
'$textversion' => $textVersion, '$textversion' => BBCode::toPlaintext($this->body),
]); ]);
} }
} }