Browser preview mixed content error fix
Strips protocol from preview URL [MAILPOET-1080]
This commit is contained in:
@ -267,6 +267,8 @@ class Newsletters extends APIEndpoint {
|
|||||||
$newsletter,
|
$newsletter,
|
||||||
$subscriber
|
$subscriber
|
||||||
);
|
);
|
||||||
|
// strip protocol to avoid mix content error
|
||||||
|
$preview_url = preg_replace('{^https?:}i', '', $preview_url);
|
||||||
|
|
||||||
return $this->successResponse(
|
return $this->successResponse(
|
||||||
Newsletter::findOne($newsletter->id)->asArray(),
|
Newsletter::findOne($newsletter->id)->asArray(),
|
||||||
|
@ -1,12 +1,13 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace MailPoet\Test\API\JSON\v1;
|
namespace MailPoet\Test\API\JSON\v1;
|
||||||
|
|
||||||
use Carbon\Carbon;
|
use Carbon\Carbon;
|
||||||
use Codeception\Util\Fixtures;
|
use Codeception\Util\Fixtures;
|
||||||
use Codeception\Util\Stub;
|
use Codeception\Util\Stub;
|
||||||
use Helper\WordPressHooks as WPHooksHelper;
|
use Helper\WordPressHooks as WPHooksHelper;
|
||||||
use MailPoet\API\JSON\v1\Newsletters;
|
|
||||||
use MailPoet\API\JSON\Response as APIResponse;
|
use MailPoet\API\JSON\Response as APIResponse;
|
||||||
|
use MailPoet\API\JSON\v1\Newsletters;
|
||||||
use MailPoet\Models\Newsletter;
|
use MailPoet\Models\Newsletter;
|
||||||
use MailPoet\Models\NewsletterOption;
|
use MailPoet\Models\NewsletterOption;
|
||||||
use MailPoet\Models\NewsletterOptionField;
|
use MailPoet\Models\NewsletterOptionField;
|
||||||
@ -747,6 +748,17 @@ class NewslettersTest extends \MailPoetTest {
|
|||||||
expect($response->errors[0]['message'])->equals('The email could not be sent: failed');
|
expect($response->errors[0]['message'])->equals('The email could not be sent: failed');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function testItReturnsBrowserPreviewUrlWithoutProtocol() {
|
||||||
|
$data = array(
|
||||||
|
'id' => $this->newsletter->id,
|
||||||
|
'body' => 'fake body'
|
||||||
|
);
|
||||||
|
$router = new Newsletters();
|
||||||
|
$response = $router->showPreview($data);
|
||||||
|
expect($response->meta['preview_url'])->notContains('http');
|
||||||
|
expect($response->meta['preview_url'])->regExp('!^\/\/!');
|
||||||
|
}
|
||||||
|
|
||||||
function testItGeneratesPreviewLinksWithNewsletterHashAndNoSubscriberData() {
|
function testItGeneratesPreviewLinksWithNewsletterHashAndNoSubscriberData() {
|
||||||
$router = new Newsletters();
|
$router = new Newsletters();
|
||||||
$response = $router->listing();
|
$response = $router->listing();
|
||||||
@ -767,4 +779,4 @@ class NewslettersTest extends \MailPoetTest {
|
|||||||
\ORM::raw_execute('TRUNCATE ' . Segment::$_table);
|
\ORM::raw_execute('TRUNCATE ' . Segment::$_table);
|
||||||
\ORM::raw_execute('TRUNCATE ' . SendingQueue::$_table);
|
\ORM::raw_execute('TRUNCATE ' . SendingQueue::$_table);
|
||||||
}
|
}
|
||||||
}
|
}
|
Reference in New Issue
Block a user