diff --git a/application/Espo/Core/Htmlizer/Htmlizer.php b/application/Espo/Core/Htmlizer/Htmlizer.php
index a5dd8641a4..9c8fd3a3b5 100644
--- a/application/Espo/Core/Htmlizer/Htmlizer.php
+++ b/application/Espo/Core/Htmlizer/Htmlizer.php
@@ -919,6 +919,11 @@ class Htmlizer
$newTemplate = str_replace('', '{{/each}}', $newTemplate);
+ $from = strpos($newTemplate,'
') + 6;
+ $to = strrpos($newTemplate, '') - strlen($newTemplate);
+
+ $newTemplate = substr($newTemplate, $from, $to);
+
return preg_replace('//', '{{#each $1}}', $newTemplate) ?? '';
}
diff --git a/tests/unit/Espo/Core/Htmlizer/HtmlizerTest.php b/tests/unit/Espo/Core/Htmlizer/HtmlizerTest.php
index 38c3f00197..eb0e6f2f8b 100644
--- a/tests/unit/Espo/Core/Htmlizer/HtmlizerTest.php
+++ b/tests/unit/Espo/Core/Htmlizer/HtmlizerTest.php
@@ -223,4 +223,22 @@ class HtmlizerTest extends TestCase
$html = $this->htmlizer->render($entity, $template);
$this->assertEquals('test', $html);
}
+
+ public function testIterate(): void
+ {
+ /** @noinspection HtmlUnknownAttribute */
+ $template = "";
+
+ $html = $this->htmlizer->render(null, $template, null, [
+ 'items' => [
+ ['name' => '1'],
+ ['name' => '2'],
+ ],
+ ]);
+
+ /** @noinspection HtmlUnknownAttribute */
+ $expected = "";
+
+ $this->assertEquals($expected, $html);
+ }
}