- Refactors ColumnsHelper class
This commit is contained in:
@ -18,7 +18,7 @@ class Image {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static function getImageDimensions($element, $column_count) {
|
static function getImageDimensions($element, $column_count) {
|
||||||
$column_width = ColumnsHelper::$columns_width[$column_count];
|
$column_width = ColumnsHelper::columnWidth($column_count);
|
||||||
$padded_width = StylesHelper::$padding_width * 2;
|
$padded_width = StylesHelper::$padding_width * 2;
|
||||||
// resize image if it's wider than the column width
|
// resize image if it's wider than the column width
|
||||||
if((int) $element['width'] >= $column_width) {
|
if((int) $element['width'] >= $column_width) {
|
||||||
|
@ -19,4 +19,20 @@ class ColumnsHelper {
|
|||||||
2 => 'left',
|
2 => 'left',
|
||||||
3 => 'right'
|
3 => 'right'
|
||||||
);
|
);
|
||||||
|
|
||||||
|
static function columnWidth($columns_count) {
|
||||||
|
return self::$columns_width[$columns_count];
|
||||||
|
}
|
||||||
|
|
||||||
|
static function columnClass($columns_count) {
|
||||||
|
return self::$columns_class[$columns_count];
|
||||||
|
}
|
||||||
|
|
||||||
|
static function columnClasses() {
|
||||||
|
return self::$columns_class;
|
||||||
|
}
|
||||||
|
|
||||||
|
static function columnAlignment($columns_count) {
|
||||||
|
return self::$columns_alignment[$columns_count];
|
||||||
|
}
|
||||||
}
|
}
|
@ -4,9 +4,9 @@ namespace MailPoet\Newsletter\Renderer\Columns;
|
|||||||
class Renderer {
|
class Renderer {
|
||||||
function render($column_styles, $columns_count, $columns_data) {
|
function render($column_styles, $columns_count, $columns_data) {
|
||||||
$styles = $column_styles['block'];
|
$styles = $column_styles['block'];
|
||||||
$width = ColumnsHelper::$columns_width[$columns_count];
|
$width = ColumnsHelper::columnWidth($columns_count);
|
||||||
$class = ColumnsHelper::$columns_class[$columns_count];
|
$class = ColumnsHelper::columnClass($columns_count);
|
||||||
$alignment = ColumnsHelper::$columns_alignment[$columns_count];
|
$alignment = ColumnsHelper::columnAlignment($columns_count);
|
||||||
$template = ($columns_count === 1) ?
|
$template = ($columns_count === 1) ?
|
||||||
$this->getOneColumnTemplate($styles, $class) :
|
$this->getOneColumnTemplate($styles, $class) :
|
||||||
$this->getMultipleColumnsTemplate($styles, $width, $alignment, $class);
|
$this->getMultipleColumnsTemplate($styles, $width, $alignment, $class);
|
||||||
@ -19,7 +19,7 @@ class Renderer {
|
|||||||
}
|
}
|
||||||
return $result;
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
function getOneColumnTemplate($styles, $class) {
|
function getOneColumnTemplate($styles, $class) {
|
||||||
$template['content_start'] = '
|
$template['content_start'] = '
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -197,14 +197,14 @@ class StylesHelper {
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
static $padding_width = 20;
|
static $padding_width = 20;
|
||||||
|
|
||||||
static function getBlockStyles($element, $ignore_specific_styles = false) {
|
static function getBlockStyles($element, $ignore_specific_styles = false) {
|
||||||
if(!isset($element['styles']['block'])) {
|
if(!isset($element['styles']['block'])) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
return self::getStyles($element['styles'], 'block', $ignore_specific_styles);
|
return self::getStyles($element['styles'], 'block', $ignore_specific_styles);
|
||||||
}
|
}
|
||||||
|
|
||||||
static function getStyles($data, $type, $ignore_specific_styles = false) {
|
static function getStyles($data, $type, $ignore_specific_styles = false) {
|
||||||
$styles = array_map(function ($attribute, $style) use ($ignore_specific_styles) {
|
$styles = array_map(function ($attribute, $style) use ($ignore_specific_styles) {
|
||||||
if(!$ignore_specific_styles || !in_array($attribute, $ignore_specific_styles)) {
|
if(!$ignore_specific_styles || !in_array($attribute, $ignore_specific_styles)) {
|
||||||
@ -213,7 +213,7 @@ class StylesHelper {
|
|||||||
}, array_keys($data[$type]), $data[$type]);
|
}, array_keys($data[$type]), $data[$type]);
|
||||||
return implode('', $styles);
|
return implode('', $styles);
|
||||||
}
|
}
|
||||||
|
|
||||||
static function translateCSSAttribute($attribute) {
|
static function translateCSSAttribute($attribute) {
|
||||||
return (array_key_exists($attribute, self::$css_attributes)) ?
|
return (array_key_exists($attribute, self::$css_attributes)) ?
|
||||||
self::$css_attributes[$attribute] :
|
self::$css_attributes[$attribute] :
|
||||||
@ -232,10 +232,10 @@ class StylesHelper {
|
|||||||
|
|
||||||
static function setFontAndLineHeight($font_size, $selector) {
|
static function setFontAndLineHeight($font_size, $selector) {
|
||||||
$css = '';
|
$css = '';
|
||||||
foreach(ColumnsHelper::$columns_class as $columnCount => $columnClass) {
|
foreach(ColumnsHelper::columnClasses() as $column_count => $column_class) {
|
||||||
$css .= '.mailpoet_content-' . $columnClass . ' ' . $selector . '{' . PHP_EOL;
|
$css .= '.mailpoet_content-' . $column_class . ' ' . $selector . '{' . PHP_EOL;
|
||||||
$css .= 'font-size:' . $font_size . 'px;' . PHP_EOL;
|
$css .= 'font-size:' . $font_size . 'px;' . PHP_EOL;
|
||||||
$css .= 'line-height:' . StylesHelper::$font_size[$font_size][$columnCount] . 'px;' . PHP_EOL;
|
$css .= 'line-height:' . StylesHelper::$font_size[$font_size][$column_count] . 'px;' . PHP_EOL;
|
||||||
$css .= '}' . PHP_EOL;
|
$css .= '}' . PHP_EOL;
|
||||||
}
|
}
|
||||||
return $css;
|
return $css;
|
||||||
|
Reference in New Issue
Block a user