- Refactored using @badshark's comments
- Integrated changes to JSON data
This commit is contained in:
@ -3,7 +3,6 @@
|
|||||||
use MailPoet\Newsletter\Renderer\StylesHelper;
|
use MailPoet\Newsletter\Renderer\StylesHelper;
|
||||||
|
|
||||||
class Button {
|
class Button {
|
||||||
|
|
||||||
static function render($element) {
|
static function render($element) {
|
||||||
$stylesHelper = new StylesHelper();
|
$stylesHelper = new StylesHelper();
|
||||||
|
|
||||||
@ -45,5 +44,4 @@ class Button {
|
|||||||
|
|
||||||
return $template;
|
return $template;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -1,7 +1,6 @@
|
|||||||
<?php namespace MailPoet\Newsletter\Renderer\Blocks;
|
<?php namespace MailPoet\Newsletter\Renderer\Blocks;
|
||||||
|
|
||||||
class Divider {
|
class Divider {
|
||||||
|
|
||||||
static function render($element) {
|
static function render($element) {
|
||||||
$template = '
|
$template = '
|
||||||
<tr>
|
<tr>
|
||||||
@ -21,5 +20,4 @@ class Divider {
|
|||||||
|
|
||||||
return $template;
|
return $template;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -3,7 +3,6 @@
|
|||||||
use MailPoet\Newsletter\Renderer\StylesHelper;
|
use MailPoet\Newsletter\Renderer\StylesHelper;
|
||||||
|
|
||||||
class Footer {
|
class Footer {
|
||||||
|
|
||||||
static function render($element) {
|
static function render($element) {
|
||||||
$stylesHelper = new StylesHelper();
|
$stylesHelper = new StylesHelper();
|
||||||
|
|
||||||
@ -28,5 +27,4 @@ class Footer {
|
|||||||
|
|
||||||
return $template;
|
return $template;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -3,7 +3,6 @@
|
|||||||
use MailPoet\Newsletter\Renderer\StylesHelper;
|
use MailPoet\Newsletter\Renderer\StylesHelper;
|
||||||
|
|
||||||
class Header {
|
class Header {
|
||||||
|
|
||||||
static function render($element) {
|
static function render($element) {
|
||||||
$stylesHelper = new StylesHelper();
|
$stylesHelper = new StylesHelper();
|
||||||
|
|
||||||
@ -28,5 +27,4 @@ class Header {
|
|||||||
|
|
||||||
return $template;
|
return $template;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -3,7 +3,6 @@
|
|||||||
use MailPoet\Newsletter\Renderer\StylesHelper;
|
use MailPoet\Newsletter\Renderer\StylesHelper;
|
||||||
|
|
||||||
class Image {
|
class Image {
|
||||||
|
|
||||||
static function render($element) {
|
static function render($element) {
|
||||||
$stylesHelper = new StylesHelper();
|
$stylesHelper = new StylesHelper();
|
||||||
|
|
||||||
@ -22,5 +21,4 @@ class Image {
|
|||||||
|
|
||||||
return $template;
|
return $template;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -1,8 +1,7 @@
|
|||||||
<?php namespace MailPoet\Newsletter\Renderer\Blocks;
|
<?php namespace MailPoet\Newsletter\Renderer\Blocks;
|
||||||
|
|
||||||
class Renderer {
|
class Renderer {
|
||||||
|
function render($data) {
|
||||||
function render($data, $column = null) {
|
|
||||||
array_map(function ($block) use (&$blockContent, &$columns) {
|
array_map(function ($block) use (&$blockContent, &$columns) {
|
||||||
$blockContent .= $this->createElementFromBlockType($block);
|
$blockContent .= $this->createElementFromBlockType($block);
|
||||||
if(isset($block['blocks'])) {
|
if(isset($block['blocks'])) {
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
<?php namespace MailPoet\Newsletter\Renderer\Blocks;
|
<?php namespace MailPoet\Newsletter\Renderer\Blocks;
|
||||||
|
|
||||||
class Social {
|
class Social {
|
||||||
|
|
||||||
static function render($element) {
|
static function render($element) {
|
||||||
$iconsBlock = '';
|
$iconsBlock = '';
|
||||||
|
|
||||||
@ -24,5 +23,4 @@ class Social {
|
|||||||
|
|
||||||
return $template;
|
return $template;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -3,7 +3,6 @@
|
|||||||
use MailPoet\Newsletter\Renderer\StylesHelper;
|
use MailPoet\Newsletter\Renderer\StylesHelper;
|
||||||
|
|
||||||
class Spacer {
|
class Spacer {
|
||||||
|
|
||||||
static function render($element) {
|
static function render($element) {
|
||||||
|
|
||||||
$stylesHelper = new StylesHelper();
|
$stylesHelper = new StylesHelper();
|
||||||
@ -21,5 +20,4 @@ class Spacer {
|
|||||||
|
|
||||||
return $template;
|
return $template;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -1,7 +1,6 @@
|
|||||||
<?php namespace MailPoet\Newsletter\Renderer\Blocks;
|
<?php namespace MailPoet\Newsletter\Renderer\Blocks;
|
||||||
|
|
||||||
class Text {
|
class Text {
|
||||||
|
|
||||||
static $typeFace = array(
|
static $typeFace = array(
|
||||||
'Arial' => "Arial, 'Helvetica Neue', Helvetica, sans-serif",
|
'Arial' => "Arial, 'Helvetica Neue', Helvetica, sans-serif",
|
||||||
'Comic Sans MS' => "'Comic Sans MS', 'Marker Felt-Thin', Arial, sans-serif",
|
'Comic Sans MS' => "'Comic Sans MS', 'Marker Felt-Thin', Arial, sans-serif",
|
||||||
@ -112,5 +111,4 @@ EOD;
|
|||||||
|
|
||||||
return preg_replace($pattern, '', $html);
|
return preg_replace($pattern, '', $html);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -1,7 +1,6 @@
|
|||||||
<?php namespace MailPoet\Newsletter\Renderer\Columns;
|
<?php namespace MailPoet\Newsletter\Renderer\Columns;
|
||||||
|
|
||||||
class Renderer {
|
class Renderer {
|
||||||
|
|
||||||
public $columnWidths = array(
|
public $columnWidths = array(
|
||||||
1 => 600,
|
1 => 600,
|
||||||
2 => 300,
|
2 => 300,
|
||||||
@ -15,7 +14,6 @@ class Renderer {
|
|||||||
);
|
);
|
||||||
|
|
||||||
function render($columnsCount, $columnsData) {
|
function render($columnsCount, $columnsData) {
|
||||||
|
|
||||||
$columnWidth = $this->columnWidths[$columnsCount];
|
$columnWidth = $this->columnWidths[$columnsCount];
|
||||||
$columnClass = $this->columnClasses[$columnsCount];
|
$columnClass = $this->columnClasses[$columnsCount];
|
||||||
|
|
||||||
|
@ -3,7 +3,6 @@ namespace MailPoet\Newsletter\Renderer;
|
|||||||
if(!defined('ABSPATH')) exit;
|
if(!defined('ABSPATH')) exit;
|
||||||
|
|
||||||
class Renderer {
|
class Renderer {
|
||||||
|
|
||||||
public $template = 'Template.html';
|
public $template = 'Template.html';
|
||||||
|
|
||||||
function __construct($newsletterData) {
|
function __construct($newsletterData) {
|
||||||
@ -17,8 +16,8 @@ class Renderer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function renderAll() {
|
function renderAll() {
|
||||||
$newsletterContent = $this->renderContent($this->data['data']);
|
$newsletterContent = $this->renderContent($this->data['content']);
|
||||||
$newsletterStyles = $this->renderStyles($this->data['styles']);
|
$newsletterStyles = $this->renderStyles($this->data['globalStyles']);
|
||||||
|
|
||||||
$renderedTemplate = $this->renderTemplate($this->template, array(
|
$renderedTemplate = $this->renderTemplate($this->template, array(
|
||||||
$newsletterStyles,
|
$newsletterStyles,
|
||||||
@ -30,12 +29,12 @@ class Renderer {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function renderContent($content) {
|
function renderContent($content) {
|
||||||
array_map(function ($contentBlock) use (&$newsletterContent) {
|
$newsletterContent = array_map(function ($contentBlock) {
|
||||||
$columnCount = count($contentBlock['blocks']);
|
$columnCount = count($contentBlock['blocks']);
|
||||||
$columnData = $this->blocksRenderer->render($contentBlock);
|
$columnData = $this->blocksRenderer->render($contentBlock);
|
||||||
$newsletterContent .= $this->columnsRenderer->render($columnCount, $columnData);
|
return $this->columnsRenderer->render($columnCount, $columnData);
|
||||||
}, $content['blocks']);
|
}, $content['blocks']);
|
||||||
return $newsletterContent;
|
return implode('', $newsletterContent);
|
||||||
}
|
}
|
||||||
|
|
||||||
function renderStyles($styles) {
|
function renderStyles($styles) {
|
||||||
@ -45,13 +44,13 @@ class Renderer {
|
|||||||
case 'text':
|
case 'text':
|
||||||
$selector = 'span.paragraph, ul, ol';
|
$selector = 'span.paragraph, ul, ol';
|
||||||
break;
|
break;
|
||||||
case 'background':
|
case 'body':
|
||||||
$selector = '.mailpoet_content-wrapper';
|
$selector = '.mailpoet_content-wrapper';
|
||||||
break;
|
break;
|
||||||
case 'link':
|
case 'link':
|
||||||
$selector = '.mailpoet_content-wrapper a';
|
$selector = '.mailpoet_content-wrapper a';
|
||||||
break;
|
break;
|
||||||
case 'newsletter':
|
case 'wrapper':
|
||||||
$selector = '.mailpoet_container, .mailpoet_col-one, .mailpoet_col-two, .mailpoet_col-three';
|
$selector = '.mailpoet_container, .mailpoet_col-one, .mailpoet_col-two, .mailpoet_col-three';
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
<?php namespace MailPoet\Newsletter\Renderer;
|
<?php namespace MailPoet\Newsletter\Renderer;
|
||||||
|
|
||||||
class StylesHelper {
|
class StylesHelper {
|
||||||
|
|
||||||
public $cssAtributesTable = array(
|
public $cssAtributesTable = array(
|
||||||
'backgroundColor' => 'background-color',
|
'backgroundColor' => 'background-color',
|
||||||
'fontColor' => 'color',
|
'fontColor' => 'color',
|
||||||
@ -16,22 +15,20 @@ class StylesHelper {
|
|||||||
'lineHeight' => 'line-height'
|
'lineHeight' => 'line-height'
|
||||||
);
|
);
|
||||||
|
|
||||||
function getBlockStyles($element, $ignore = false) {
|
function getBlockStyles($element) {
|
||||||
if(!isset($element['styles']['block'])) {
|
if(!isset($element['styles']['block'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
return $this->getStyles($element['styles'], 'block', $ignore);
|
return $this->getStyles($element['styles'], 'block');
|
||||||
}
|
}
|
||||||
|
|
||||||
function getStyles($data, $type, $ignore = false) {
|
function getStyles($data, $type) {
|
||||||
array_map(function ($attribute, $style) use (&$styles, $ignore) {
|
$styles = array_map(function ($attribute, $style) {
|
||||||
if(!$ignore || !in_array($attribute, $ignore)) {
|
return $this->translateCSSAttribute($attribute) . ': ' . $style . ' !important;';
|
||||||
$styles .= $this->translateCSSAttribute($attribute) . ': ' . $style . ' !important;';
|
|
||||||
}
|
|
||||||
}, array_keys($data[$type]), $data[$type]);
|
}, array_keys($data[$type]), $data[$type]);
|
||||||
|
|
||||||
return $styles;
|
return implode('', $styles);
|
||||||
}
|
}
|
||||||
|
|
||||||
function translateCSSAttribute($attribute) {
|
function translateCSSAttribute($attribute) {
|
||||||
|
@ -151,7 +151,7 @@
|
|||||||
.mailpoet_padded {
|
.mailpoet_padded {
|
||||||
padding-left: 20px;
|
padding-left: 20px;
|
||||||
padding-right: 20px;
|
padding-right: 20px;
|
||||||
word-break: break-word;
|
/*word-break: break-all;*/
|
||||||
word-wrap: break-word;
|
word-wrap: break-word;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -238,7 +238,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.mailpoet_social img {
|
.mailpoet_social img {
|
||||||
height: 32x !important;
|
height: 32px !important;
|
||||||
width: 32px !important;
|
width: 32px !important;
|
||||||
padding-bottom: 20px !important;
|
padding-bottom: 20px !important;
|
||||||
}
|
}
|
||||||
|
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user