[TASK] Fix rending buttons in email templates

This commit is contained in:
Philipp Dieter 2022-06-13 14:49:02 +02:00
parent 007c3368f7
commit 0e9b031feb
2 changed files with 20 additions and 9 deletions

View File

@ -251,14 +251,10 @@ class MailUtility
case 'buttonleft':
case 'buttoncenter':
case 'buttonright':
return '<a style="display: inline-block;" href="'
. $matchesInner[1]
. '">'
. '<span style="display: inline-block; padding: 10px 15px; border-radius: 3px; background-color: red;">'
. 'Button!!!! '
. $matchesInner[2]
. '</span>'
. '</a>';
return json_encode([
$matchesInner[1],
$matchesInner[2]
]);
break;
default:
return '<a href="'

View File

@ -8,6 +8,16 @@
<f:variable name="padding" value="20" />
</f:else>
</f:if>
<f:if condition="{buttonColor}">
<f:else>
<f:variable name="buttonColor" value="#ffffff" />
</f:else>
</f:if>
<f:if condition="{buttonBackgroundcolor}">
<f:else>
<f:variable name="buttonBackgroundcolor" value="#8ABF6F" />
</f:else>
</f:if>
<f:variable name="widthPadded" value="{width - padding - padding}" />
<f:variable name="widthTableColumn" value="{widthPadded / 2}" />
@ -78,7 +88,12 @@
</f:case>
<f:case value="buttoncenter">
<span style="display: inline-block;" class="buttonwrapper">
{row.data -> f:format.nl2br() -> f:format.raw()}
<f:variable name="rowData">{row.data -> v:format.json.decode()}</f:variable>
<a style="display: inline-block; color: {buttonColor}" href="{rowData.0}">
<span style="display: inline-block; padding: 10px 15px; border-radius: 3px; background-color: {buttonBackgroundcolor};">
{rowData.1}
</span>
</a>
</span>
</f:case>
<f:case value="buttonright">