diff --git a/lib/Form/Util/Styles.php b/lib/Form/Util/Styles.php index 741b0ac7cc..e7ecbebf67 100644 --- a/lib/Form/Util/Styles.php +++ b/lib/Form/Util/Styles.php @@ -37,10 +37,14 @@ class Styles { // Wrapper styles $styles = []; - if (isset($formSettings['backgroundColor'])) { + if (isset($formSettings['backgroundColor']) && empty($formSettings['gradient'])) { $styles[] = 'background-color: ' . trim($formSettings['backgroundColor']); } + if (!empty($formSettings['gradient'])) { + $styles[] = 'background: ' . trim($formSettings['gradient']); + } + if (isset($formSettings['border_size']) && isset($formSettings['border_color'])) { $styles[] = 'border: ' . $formSettings['border_size'] . 'px solid ' . $formSettings['border_color']; } diff --git a/tests/unit/Form/Util/StylesTest.php b/tests/unit/Form/Util/StylesTest.php index 4542550bdc..e26185b361 100644 --- a/tests/unit/Form/Util/StylesTest.php +++ b/tests/unit/Form/Util/StylesTest.php @@ -47,6 +47,13 @@ class StylesTest extends \MailPoetUnitTest { expect($styles)->contains('background-color: red'); } + public function testItShouldRenderBackgroundGradient() { + $form = Fixtures::get('simple_form_body'); + $form['settings'] = ['gradient' => 'linear-gradient(#fff, #000)']; + $styles = $this->styles->renderFormSettingsStyles($form, '#prefix', FormEntity::DISPLAY_TYPE_OTHERS); + expect($styles)->contains('background: linear-gradient(#fff, #000)'); + } + public function testItShouldRenderFontColour() { $form = Fixtures::get('simple_form_body'); $form['settings'] = ['fontColor' => 'red'];