Align correctly input fields in rendered form

[MAILPOET-2809]
This commit is contained in:
Pavel Dohnal
2020-04-27 15:19:23 +02:00
committed by Veljko V
parent ea09f3de05
commit d8c461f7d5
2 changed files with 18 additions and 7 deletions

View File

@ -27,7 +27,7 @@ class Textarea {
public function render(array $block, array $formSettings): string { public function render(array $block, array $formSettings): string {
$html = ''; $html = '';
$styles = $this->inputStylesRenderer->renderForTextInput($block['styles'] ?? []); $styles = $this->inputStylesRenderer->renderForTextInput($block['styles'] ?? [], $formSettings);
$html .= $this->rendererHelper->renderLabel($block, $formSettings); $html .= $this->rendererHelper->renderLabel($block, $formSettings);

View File

@ -26,6 +26,9 @@ class BlockStylesRenderer {
if (isset($formSettings['inputPadding'])) { if (isset($formSettings['inputPadding'])) {
$rules[] = "padding:{$formSettings['inputPadding']}px;"; $rules[] = "padding:{$formSettings['inputPadding']}px;";
} }
if (isset($formSettings['alignment'])) {
$rules[] = $this->convertAlignmentToMargin($formSettings['alignment']);
}
return implode('', $rules); return implode('', $rules);
} }
@ -43,6 +46,9 @@ class BlockStylesRenderer {
if (isset($formSettings['inputPadding'])) { if (isset($formSettings['inputPadding'])) {
$rules[] = "padding:{$formSettings['inputPadding']}px;"; $rules[] = "padding:{$formSettings['inputPadding']}px;";
} }
if (isset($formSettings['alignment'])) {
$rules[] = $this->convertAlignmentToMargin($formSettings['alignment']);
}
return $this->renderForTextInput($styles) . implode('', $rules); return $this->renderForTextInput($styles) . implode('', $rules);
} }
@ -52,13 +58,18 @@ class BlockStylesRenderer {
$rules[] = "padding:{$formSettings['inputPadding']}px;"; $rules[] = "padding:{$formSettings['inputPadding']}px;";
} }
if (isset($formSettings['alignment'])) { if (isset($formSettings['alignment'])) {
if ($formSettings['alignment'] === 'right') { $rules[] = $this->convertAlignmentToMargin($formSettings['alignment']);
$rules[] = 'margin: 0 0 0 auto;';
}
if ($formSettings['alignment'] === 'center') {
$rules[] = 'margin: 0 auto;';
}
} }
return implode('', $rules); return implode('', $rules);
} }
private function convertAlignmentToMargin(string $alignment): string {
if ($alignment === 'right') {
return 'margin: 0 0 0 auto;';
}
if ($alignment === 'center') {
return 'margin: 0 auto;';
}
return 'margin: 0 auto;';
}
} }