From 942e520c5628aa6a2ee983cf9a4acc7046eba06c Mon Sep 17 00:00:00 2001 From: Pavel Dohnal Date: Tue, 9 Jun 2020 15:56:18 +0200 Subject: [PATCH] Render font family [MAILPOET-2911] --- assets/js/src/public.jsx | 2 +- lib/Form/BlockStylesRenderer.php | 9 ++++++++- tests/unit/Form/BlockStylesRendererTest.php | 11 +++++++++++ 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/assets/js/src/public.jsx b/assets/js/src/public.jsx index 94ce5cda72..8920ece6a3 100644 --- a/assets/js/src/public.jsx +++ b/assets/js/src/public.jsx @@ -50,7 +50,7 @@ jQuery(($) => { const originalFontFamily = formDiv.css('font-family'); const newFontFamily = `"${fontName}", ${originalFontFamily}`; formDiv.css('font-family', newFontFamily); - formDiv.find('input, option').css('font-family', 'inherit'); + formDiv.find('option').css('font-family', 'inherit'); formDiv.find('input[type=text], textarea, input[type=email], select').css('font-family', newFontFamily); formDiv.find(':header').css('font-family', 'inherit'); } diff --git a/lib/Form/BlockStylesRenderer.php b/lib/Form/BlockStylesRenderer.php index 43f84d9897..6b47fc7f2d 100644 --- a/lib/Form/BlockStylesRenderer.php +++ b/lib/Form/BlockStylesRenderer.php @@ -23,12 +23,19 @@ class BlockStylesRenderer { if (isset($styles['border_color'])) { $rules[] = "border-color:{$styles['border_color']};"; } - if (isset($formSettings['input_padding'])) { + if (isset($styles['padding'])) { + $rules[] = "padding:{$styles['padding']}px;"; + } elseif (isset($formSettings['input_padding'])) { $rules[] = "padding:{$formSettings['input_padding']}px;"; } if (isset($formSettings['alignment'])) { $rules[] = $this->convertAlignmentToMargin($formSettings['alignment']); } + if (isset($styles['font_family'])) { + $rules[] = "font-family:'{$styles['font_family']}';" ; + } elseif (isset($formSettings['font_family'])) { + $rules[] = "font-family:'{$formSettings['font_family']}';" ; + } if (isset($styles['font_size'])) { $rules[] = "font-size:" . intval($styles['font_size']) . "px;"; } diff --git a/tests/unit/Form/BlockStylesRendererTest.php b/tests/unit/Form/BlockStylesRendererTest.php index 6ea0ac522c..bd11460f2e 100644 --- a/tests/unit/Form/BlockStylesRendererTest.php +++ b/tests/unit/Form/BlockStylesRendererTest.php @@ -97,4 +97,15 @@ class BlockStylesRendererTest extends \MailPoetUnitTest { 'styles' => ['font_color' => 'red'], ], 'input'))->notEquals(''); } + + public function testItShouldRenderFontFamily() { + $styles = []; + $settings = [ + 'font_family' => 'font1', + ]; + $result = $this->renderer->renderForButton($styles, $settings); + expect($result)->contains("font-family:'font1'"); + $result = $this->renderer->renderForButton(['font_family' => 'font2'], $settings); + expect($result)->contains("font-family:'font2'"); + } }