Adds MailPoet logo to newsletters in the free version
This commit is contained in:
BIN
assets/img/mailpoet_logo_newsletter.png
Normal file
BIN
assets/img/mailpoet_logo_newsletter.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.7 KiB |
@ -1,6 +1,8 @@
|
|||||||
<?php
|
<?php
|
||||||
namespace MailPoet\Newsletter\Renderer;
|
namespace MailPoet\Newsletter\Renderer;
|
||||||
|
|
||||||
|
use MailPoet\Config\Env;
|
||||||
|
use MailPoet\Util\License\License;
|
||||||
use MailPoet\Util\pQuery\pQuery;
|
use MailPoet\Util\pQuery\pQuery;
|
||||||
|
|
||||||
if(!defined('ABSPATH')) exit;
|
if(!defined('ABSPATH')) exit;
|
||||||
@ -24,6 +26,7 @@ class Renderer {
|
|||||||
$this->DOM_parser = new pQuery();
|
$this->DOM_parser = new pQuery();
|
||||||
$this->CSS_inliner = new \MailPoet\Util\CSS();
|
$this->CSS_inliner = new \MailPoet\Util\CSS();
|
||||||
$this->template = file_get_contents(dirname(__FILE__) . '/' . self::NEWSLETTER_TEMPLATE);
|
$this->template = file_get_contents(dirname(__FILE__) . '/' . self::NEWSLETTER_TEMPLATE);
|
||||||
|
$this->premium_license = License::getLicense();
|
||||||
}
|
}
|
||||||
|
|
||||||
function render($type = false) {
|
function render($type = false) {
|
||||||
@ -38,6 +41,10 @@ class Renderer {
|
|||||||
? $body['globalStyles']
|
? $body['globalStyles']
|
||||||
: array();
|
: array();
|
||||||
|
|
||||||
|
if(!$this->premium_license) {
|
||||||
|
$content = $this->addMailpoetLogoContentBlock($content, $styles);
|
||||||
|
}
|
||||||
|
|
||||||
$rendered_body = $this->renderBody($content);
|
$rendered_body = $this->renderBody($content);
|
||||||
$rendered_styles = $this->renderStyles($styles);
|
$rendered_styles = $this->renderStyles($styles);
|
||||||
|
|
||||||
@ -135,4 +142,44 @@ class Renderer {
|
|||||||
);
|
);
|
||||||
return $template;
|
return $template;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function addMailpoetLogoContentBlock($content, $styles) {
|
||||||
|
if(empty($content['blocks'])) return $content;
|
||||||
|
$content['blocks'][] = array(
|
||||||
|
'type' => 'container',
|
||||||
|
'orientation' => 'horizontal',
|
||||||
|
'styles' => array(
|
||||||
|
'block' => array(
|
||||||
|
'backgroundColor' => (!empty($styles['body']['backgroundColor'])) ?
|
||||||
|
$styles['body']['backgroundColor'] :
|
||||||
|
'transparent'
|
||||||
|
)
|
||||||
|
),
|
||||||
|
'blocks' => array(
|
||||||
|
array(
|
||||||
|
'type' => 'container',
|
||||||
|
'orientation' => 'vertical',
|
||||||
|
'styles' => array(
|
||||||
|
),
|
||||||
|
'blocks' => array(
|
||||||
|
array(
|
||||||
|
'type' => 'image',
|
||||||
|
'link' => 'http://www.mailpoet.com',
|
||||||
|
'src' => Env::$assets_url . '/img/mailpoet_logo_newsletter.png',
|
||||||
|
'fullWidth' => false,
|
||||||
|
'alt' => 'MailPoet',
|
||||||
|
'width' => '108px',
|
||||||
|
'height' => '65px',
|
||||||
|
'styles' => array(
|
||||||
|
'block' => array(
|
||||||
|
'textAlign' => 'center'
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
);
|
||||||
|
return $content;
|
||||||
|
}
|
||||||
}
|
}
|
@ -24,6 +24,7 @@ class NewsletterRendererTest extends MailPoetTest {
|
|||||||
'status' => 'active'
|
'status' => 'active'
|
||||||
);
|
);
|
||||||
$this->renderer = new Renderer($this->newsletter);
|
$this->renderer = new Renderer($this->newsletter);
|
||||||
|
$this->renderer->premium_license = true;
|
||||||
$this->column_renderer = new ColumnRenderer();
|
$this->column_renderer = new ColumnRenderer();
|
||||||
$this->DOM_parser = new \pQuery();
|
$this->DOM_parser = new \pQuery();
|
||||||
}
|
}
|
||||||
@ -372,6 +373,17 @@ class NewsletterRendererTest extends MailPoetTest {
|
|||||||
expect($preheader)->equals($this->newsletter['preheader']);
|
expect($preheader)->equals($this->newsletter['preheader']);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function testItDoesNotAddMailpoetLogoWhenPremiumIsActive() {
|
||||||
|
$template = $this->renderer->render();
|
||||||
|
expect($template['html'])->notContains('mailpoet_logo_newsletter.png');
|
||||||
|
}
|
||||||
|
|
||||||
|
function testItAddsMailpoetLogoWhenPremiumIsNotActive() {
|
||||||
|
$this->renderer->premium_license = false;
|
||||||
|
$template = $this->renderer->render();
|
||||||
|
expect($template['html'])->contains('mailpoet_logo_newsletter.png');
|
||||||
|
}
|
||||||
|
|
||||||
function testItPostProcessesTemplate() {
|
function testItPostProcessesTemplate() {
|
||||||
$template = $this->renderer->render();
|
$template = $this->renderer->render();
|
||||||
// !important should be stripped from everywhere except from
|
// !important should be stripped from everywhere except from
|
||||||
|
Reference in New Issue
Block a user