Use a default subject if a rendered newsletter subject is empty [MAILPOET-1462]
This commit is contained in:
@@ -101,6 +101,11 @@ class Newsletter {
|
|||||||
null,
|
null,
|
||||||
$queue
|
$queue
|
||||||
);
|
);
|
||||||
|
// if the rendered subject is empty, use a default subject,
|
||||||
|
// having no subject in a newsletter is considered spammy
|
||||||
|
if(empty(trim($queue->newsletter_rendered_subject))) {
|
||||||
|
$queue->newsletter_rendered_subject = __('No subject', 'mailpoet');
|
||||||
|
}
|
||||||
$queue->newsletter_rendered_body = $rendered_newsletter;
|
$queue->newsletter_rendered_body = $rendered_newsletter;
|
||||||
$queue->save();
|
$queue->save();
|
||||||
// catch DB errors
|
// catch DB errors
|
||||||
@@ -172,7 +177,7 @@ class Newsletter {
|
|||||||
function stopNewsletterPreProcessing($error_code = null) {
|
function stopNewsletterPreProcessing($error_code = null) {
|
||||||
MailerLog::processError(
|
MailerLog::processError(
|
||||||
'queue_save',
|
'queue_save',
|
||||||
__('There was an error processing your newsletter during sending. If possible, please contact us and report this issue.'),
|
__('There was an error processing your newsletter during sending. If possible, please contact us and report this issue.', 'mailpoet'),
|
||||||
$error_code
|
$error_code
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@@ -235,6 +235,15 @@ class NewsletterTest extends \MailPoetTest {
|
|||||||
->contains(date_i18n('dS', Functions::currentTime('timestamp')));
|
->contains(date_i18n('dS', Functions::currentTime('timestamp')));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function testItUsesADefaultSubjectIfRenderedSubjectIsEmptyWhenPreprocessingNewsletter() {
|
||||||
|
$newsletter = $this->newsletter;
|
||||||
|
$newsletter->subject = ' [custom_shortcode:should_render_empty] ';
|
||||||
|
$queue = $this->queue;
|
||||||
|
$newsletter = $this->newsletter_task->preProcessNewsletter($newsletter, $queue);
|
||||||
|
$queue = SendingTask::getByNewsletterId($newsletter->id);
|
||||||
|
expect($queue->newsletter_rendered_subject)
|
||||||
|
->equals('No subject');
|
||||||
|
}
|
||||||
|
|
||||||
function testItUsesRenderedNewsletterBodyAndSubjectFromQueueObjectWhenPreparingNewsletterForSending() {
|
function testItUsesRenderedNewsletterBodyAndSubjectFromQueueObjectWhenPreparingNewsletterForSending() {
|
||||||
$queue = $this->queue;
|
$queue = $this->queue;
|
||||||
|
Reference in New Issue
Block a user