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,
|
||||
$subscriber
|
||||
);
|
||||
// strip protocol to avoid mix content error
|
||||
$preview_url = preg_replace('{^https?:}i', '', $preview_url);
|
||||
|
||||
return $this->successResponse(
|
||||
Newsletter::findOne($newsletter->id)->asArray(),
|
||||
|
@ -1,12 +1,13 @@
|
||||
<?php
|
||||
|
||||
namespace MailPoet\Test\API\JSON\v1;
|
||||
|
||||
use Carbon\Carbon;
|
||||
use Codeception\Util\Fixtures;
|
||||
use Codeception\Util\Stub;
|
||||
use Helper\WordPressHooks as WPHooksHelper;
|
||||
use MailPoet\API\JSON\v1\Newsletters;
|
||||
use MailPoet\API\JSON\Response as APIResponse;
|
||||
use MailPoet\API\JSON\v1\Newsletters;
|
||||
use MailPoet\Models\Newsletter;
|
||||
use MailPoet\Models\NewsletterOption;
|
||||
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');
|
||||
}
|
||||
|
||||
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() {
|
||||
$router = new Newsletters();
|
||||
$response = $router->listing();
|
||||
|
Reference in New Issue
Block a user