- Removes open tracking code URL when newsletter is previewed

This commit is contained in:
Vlad
2016-12-22 22:56:57 -05:00
parent fc54f31d3d
commit f821a60a2c
2 changed files with 18 additions and 2 deletions

View File

@@ -33,6 +33,8 @@ class ViewInBrowser {
$newsletter_body,
$convert_all = true
);
// remove open tracking link
$newsletter_body = str_replace(Links::DATA_TAG_OPEN, '', $newsletter_body);
}
} else {
$renderer = new Renderer($newsletter, $wp_user_preview);

View File

@@ -5,6 +5,7 @@ use MailPoet\Models\NewsletterLink;
use MailPoet\Models\SendingQueue;
use MailPoet\Models\Setting;
use MailPoet\Models\Subscriber;
use MailPoet\Newsletter\Links\Links;
use MailPoet\Newsletter\ViewInBrowser;
use MailPoet\Router\Router;
@@ -62,7 +63,7 @@ class ViewInBrowserTest extends MailPoetTest {
'html' => '<p>Newsletter from queue. Hello, [subscriber:firstname | default:reader]. <a href="[link:newsletter_view_in_browser_url]">Unsubscribe</a> or visit <a href="http://google.com">Google</a></p>'
);
$this->queue_rendered_newsletter_with_tracking = array(
'html' => '<p>Newsletter from queue. Hello, [subscriber:firstname | default:reader]. <a href="[mailpoet_click_data]-90e56">Unsubscribe</a> or visit <a href="[mailpoet_click_data]-i1893">Google</a></p>'
'html' => '<p>Newsletter from queue. Hello, [subscriber:firstname | default:reader]. <a href="' . Links::DATA_TAG_CLICK . '-90e56">Unsubscribe</a> or visit <a href="' . Links::DATA_TAG_CLICK . '-i1893">Google</a><img alt="" class="" src="' . Links::DATA_TAG_OPEN . '"></p>'
);
}
@@ -157,7 +158,6 @@ class ViewInBrowserTest extends MailPoetTest {
expect($rendered_body)->contains('<a href="http://google.com">');
}
function testReplacesLinkShortcodesWithUrlHashWhenPreviewIsEnabledAndNewsletterWasSent() {
$queue = $this->queue;
$queue->newsletter_rendered_body = $this->queue_rendered_newsletter_with_tracking;
@@ -172,6 +172,20 @@ class ViewInBrowserTest extends MailPoetTest {
expect($rendered_body)->contains('<a href="#">');
}
function testRemovesOpenTrackingTagWhenPreviewIsEnabledAndNewsletterWasSent() {
$queue = $this->queue;
$queue->newsletter_rendered_body = $this->queue_rendered_newsletter_with_tracking;
$rendered_body = ViewInBrowser::renderNewsletter(
$this->newsletter,
$this->subscriber,
$queue,
$preview = true
);
// open tracking data tag should be removed
expect($rendered_body)->notContains('[mailpoet_open_data]');
expect($rendered_body)->contains('<img alt="" class="" src="">');
}
function _after() {
ORM::raw_execute('TRUNCATE ' . Newsletter::$_table);
ORM::raw_execute('TRUNCATE ' . NewsletterLink::$_table);