Refactor block renderers to use wrapper renderer

[MAILPOET-2746]
This commit is contained in:
Rostislav Wolny
2020-03-12 15:53:15 +01:00
committed by Veljko V
parent 65afeca59e
commit 72a0afa75b
16 changed files with 124 additions and 53 deletions

View File

@@ -2,6 +2,7 @@
namespace MailPoet\Form\Block;
use MailPoet\Form\BlockWrapperRenderer;
use MailPoet\Form\TextInputStylesRenderer;
class Textarea {
@@ -11,17 +12,23 @@ class Textarea {
/** @var TextInputStylesRenderer */
private $inputStylesRenderer;
public function __construct(BlockRendererHelper $rendererHelper, TextInputStylesRenderer $inputStylesRenderer) {
/** @var BlockWrapperRenderer */
private $wrapper;
public function __construct(
BlockRendererHelper $rendererHelper,
TextInputStylesRenderer $inputStylesRenderer,
BlockWrapperRenderer $wrapper
) {
$this->rendererHelper = $rendererHelper;
$this->inputStylesRenderer = $inputStylesRenderer;
$this->wrapper = $wrapper;
}
public function render(array $block, array $formSettings): string {
$html = '';
$styles = $this->inputStylesRenderer->render($block['styles'] ?? []);
$html .= '<div class="mailpoet_paragraph">';
$html .= $this->rendererHelper->renderLabel($block, $formSettings);
$lines = (isset($block['params']['lines']) ? (int)$block['params']['lines'] : 1);
@@ -42,8 +49,6 @@ class Textarea {
$html .= '>' . $this->rendererHelper->getFieldValue($block) . '</textarea>';
$html .= '</div>';
return $html;
return $this->wrapper->render($block, $html);
}
}