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
|
||||
namespace MailPoet\Newsletter\Renderer;
|
||||
|
||||
use MailPoet\Config\Env;
|
||||
use MailPoet\Util\License\License;
|
||||
use MailPoet\Util\pQuery\pQuery;
|
||||
|
||||
if(!defined('ABSPATH')) exit;
|
||||
@ -24,6 +26,7 @@ class Renderer {
|
||||
$this->DOM_parser = new pQuery();
|
||||
$this->CSS_inliner = new \MailPoet\Util\CSS();
|
||||
$this->template = file_get_contents(dirname(__FILE__) . '/' . self::NEWSLETTER_TEMPLATE);
|
||||
$this->premium_license = License::getLicense();
|
||||
}
|
||||
|
||||
function render($type = false) {
|
||||
@ -38,6 +41,10 @@ class Renderer {
|
||||
? $body['globalStyles']
|
||||
: array();
|
||||
|
||||
if(!$this->premium_license) {
|
||||
$content = $this->addMailpoetLogoContentBlock($content, $styles);
|
||||
}
|
||||
|
||||
$rendered_body = $this->renderBody($content);
|
||||
$rendered_styles = $this->renderStyles($styles);
|
||||
|
||||
@ -135,4 +142,44 @@ class Renderer {
|
||||
);
|
||||
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'
|
||||
);
|
||||
$this->renderer = new Renderer($this->newsletter);
|
||||
$this->renderer->premium_license = true;
|
||||
$this->column_renderer = new ColumnRenderer();
|
||||
$this->DOM_parser = new \pQuery();
|
||||
}
|
||||
@ -372,6 +373,17 @@ class NewsletterRendererTest extends MailPoetTest {
|
||||
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() {
|
||||
$template = $this->renderer->render();
|
||||
// !important should be stripped from everywhere except from
|
||||
|
Reference in New Issue
Block a user