Skip to content

Commit c0b0f26

Browse files
committed
Merge branch 'master' into ifs
2 parents 5ad9c44 + 9d60df1 commit c0b0f26

File tree

3 files changed

+85
-2
lines changed

3 files changed

+85
-2
lines changed

Classes/Domain/Finishers/EmailFinisher.php

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
declare(strict_types = 1);
33
namespace Kitzberger\FormMailtext\Domain\Finishers;
44

5+
use TYPO3\CMS\Core\Mail\FluidEmail;
56
use TYPO3\CMS\Core\Utility\GeneralUtility;
67
use TYPO3\CMS\Fluid\View\StandaloneView;
78
use TYPO3\CMS\Form\Domain\Runtime\FormRuntime;
@@ -30,6 +31,19 @@ protected function initializeStandaloneView(FormRuntime $formRuntime, string $fo
3031
return $standaloneView;
3132
}
3233

34+
protected function initializeFluidEmail(FormRuntime $formRuntime): FluidEmail
35+
{
36+
$fluidEmail = parent::initializeFluidEmail($formRuntime);
37+
38+
$message = $this->parseOption('message');
39+
$formValues = $formRuntime->getFormState()->getFormValues();
40+
$message = $this->replaceIfs($message, $formValues);
41+
42+
$fluidEmail->assign('message', $message);
43+
44+
return $fluidEmail;
45+
}
46+
3347
private function replaceIfs($message, $formValues)
3448
{
3549
return preg_replace_callback(
@@ -94,6 +108,6 @@ function($match) use ($formValues) {
94108
}
95109
},
96110
$message
97-
);
98-
}
111+
);
112+
}
99113
}
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
{namespace formvh=TYPO3\CMS\Form\ViewHelpers}
2+
{namespace formmailtext=Kitzberger\FormMailtext\ViewHelpers}
3+
<f:layout name="SystemEmail" />
4+
<f:section name="Title">{title}</f:section>
5+
<f:section name="Main">
6+
<formmailtext:renderMessage message="{message -> f:format.html()}">
7+
<table>
8+
<formvh:renderAllFormValues renderable="{form.formDefinition}" as="formValue">
9+
<tr>
10+
<f:if condition="{formValue.isSection}">
11+
<f:then>
12+
<td colspan="2"><b>{formvh:translateElementProperty(element: formValue.element, property: 'label')}</b></td>
13+
</f:then>
14+
<f:else>
15+
<td valign="top" align="left">{formvh:translateElementProperty(element: formValue.element, property: 'label')}</td>
16+
<td valign="top" align="left">
17+
<f:if condition="{formValue.value}">
18+
<f:then>
19+
<f:if condition="{formValue.isMultiValue}">
20+
<f:then>
21+
<table cellspacing="0" border="0">
22+
<f:for each="{formValue.processedValue}" as="value">
23+
<tr>
24+
<td>{value}</td>
25+
</tr>
26+
</f:for>
27+
</table>
28+
</f:then>
29+
<f:else>
30+
<table cellspacing="0" border="0">
31+
<tr>
32+
<td><f:format.nl2br>{formValue.processedValue}</f:format.nl2br></td>
33+
</tr>
34+
</table>
35+
</f:else>
36+
</f:if>
37+
</f:then>
38+
<f:else>
39+
-
40+
</f:else>
41+
</f:if>
42+
</td>
43+
</f:else>
44+
</f:if>
45+
</tr>
46+
</formvh:renderAllFormValues>
47+
</table>
48+
</formmailtext:renderMessage>
49+
</f:section>
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
{namespace formvh=TYPO3\CMS\Form\ViewHelpers}
2+
{namespace formmailtext=Kitzberger\FormMailtext\ViewHelpers}
3+
<f:layout name="SystemEmail" />
4+
<f:section name="Title">{title}</f:section>
5+
<f:section name="Main">
6+
<formmailtext:renderMessage message="{message -> f:format.stripTags()}">
7+
<formvh:renderAllFormValues renderable="{form.formDefinition}" as="formValue"><f:spaceless>
8+
<f:if condition="{formValue.isMultiValue}">
9+
<f:then>
10+
<f:if condition="{formValue.isSection}"><f:then>*** <formvh:translateElementProperty element="{formValue.element}" property="label" /> ***</f:then><f:else><formvh:translateElementProperty element="{formValue.element}" property="label" />: <f:for each="{formValue.processedValue}" as="singleValue">- {singleValue}
11+
</f:for></f:else></f:if>
12+
</f:then>
13+
<f:else>
14+
<f:if condition="{formValue.isSection}"><f:then>*** <formvh:translateElementProperty element="{formValue.element}" property="label" /> ***</f:then><f:else><formvh:translateElementProperty element="{formValue.element}" property="label" />: <f:if condition="{formValue.processedValue}"><f:then>{formValue.processedValue -> f:format.raw()}</f:then><f:else>-</f:else></f:if></f:else></f:if>
15+
</f:else>
16+
</f:if>
17+
</f:spaceless>
18+
</formvh:renderAllFormValues>
19+
</formmailtext:renderMessage>
20+
</f:section>

0 commit comments

Comments
 (0)