\ No newline at end of file
+{% endapply %}
\ No newline at end of file
diff --git a/templates/application/display-block/block-chart/layout.js.twig b/templates/application/display-block/block-chart/layout.js.twig
index 874e43c76..7d2fbbfa9 100644
--- a/templates/application/display-block/block-chart/layout.js.twig
+++ b/templates/application/display-block/block-chart/layout.js.twig
@@ -1,5 +1,7 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
+{% apply spaceless %}
$.post('{{ oUIBlock.sUrl|escape('js') }}', {}, function (data) {
$('body').append(data);
-});
\ No newline at end of file
+});
+{% endapply %}
\ No newline at end of file
diff --git a/templates/application/display-block/block-csv/layout.html.twig b/templates/application/display-block/block-csv/layout.html.twig
index 229c6777c..f1866e2c4 100644
--- a/templates/application/display-block/block-csv/layout.html.twig
+++ b/templates/application/display-block/block-csv/layout.html.twig
@@ -1,27 +1,29 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-
\ No newline at end of file
+{% endapply %}
\ No newline at end of file
diff --git a/templates/application/display-block/block-csv/layout.js.twig b/templates/application/display-block/block-csv/layout.js.twig
index 2279c1663..0547daa6a 100644
--- a/templates/application/display-block/block-csv/layout.js.twig
+++ b/templates/application/display-block/block-csv/layout.js.twig
@@ -1,5 +1,6 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
+{% apply spaceless %}
$.post(
'{{ oUIBlock.sAjaxLink|escape('js') }}',
{{ oUIBlock.sJsonParams|raw }},
@@ -7,4 +8,5 @@ $.post(
$('#csv_content').html(data);
$('#csv_content_loading').hide();
$('#csv_content').show();
- });
\ No newline at end of file
+ });
+{% endapply %}
\ No newline at end of file
diff --git a/templates/application/display-block/block-list/layout.html.twig b/templates/application/display-block/block-list/layout.html.twig
index 4aea4dc21..2252989d2 100644
--- a/templates/application/display-block/block-list/layout.html.twig
+++ b/templates/application/display-block/block-list/layout.html.twig
@@ -1,21 +1,25 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% if oUIBlock.bEmptySet or oUIBlock.bNotAuthorized %}
-
{{ 'UI:NoObjectToDisplay'|dict_s }}
-{% endif %}
+{% apply spaceless %}
-{# TODO 3.1: This section should be removed if BlockList is no longer used as is, but always with a table #}
-{% if oUIBlock.bCreateNew %}
-
-{% endif %}
+ {% if oUIBlock.bEmptySet or oUIBlock.bNotAuthorized %}
+
{{ 'UI:NoObjectToDisplay'|dict_s }}
+ {% endif %}
-{% for oSubBlock in oUIBlock.GetSubBlocks() %}
- {{- render_block(oSubBlock, {aPage: aPage}) -}}
-{% endfor %}
\ No newline at end of file
+ {# TODO 3.1: This section should be removed if BlockList is no longer used as is, but always with a table #}
+ {% if oUIBlock.bCreateNew %}
+
'|escape }}"
- data-tooltip-html-enabled="true"
- {% else %}
- {# Display only class name as it could be truncated if too long #}
- data-tooltip-content="{{ oUIBlock.GetClassLabel() }}"
- {% endif %}
- {# Delay display to avoid having all tooltips appearing when mouse is just passing through the tabs #}
- data-tooltip-show-delay="300">
-
- {# Mind the empty "alt" attribute https://www.w3.org/WAI/tutorials/images/decorative/ #}
-
-
\ No newline at end of file
+{% endapply %}
\ No newline at end of file
diff --git a/templates/base/components/dashlet/dashlet-header-static.html.twig b/templates/base/components/dashlet/dashlet-header-static.html.twig
index d49360c0d..7d3e555fc 100644
--- a/templates/base/components/dashlet/dashlet-header-static.html.twig
+++ b/templates/base/components/dashlet/dashlet-header-static.html.twig
@@ -1,15 +1,17 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-
-
- {% if oUIBlock.GetIconUrl() is not empty %}
-
- {# Mind the empty "alt" attribute https://www.w3.org/WAI/tutorials/images/decorative/ #}
-
-
- {% endif %}
- {% if oUIBlock.GetTitle() is not empty %}
-
{{ oUIBlock.GetTitle() }}
- {% endif %}
+{% apply spaceless %}
+
+
+ {% if oUIBlock.GetIconUrl() is not empty %}
+
+ {# Mind the empty "alt" attribute https://www.w3.org/WAI/tutorials/images/decorative/ #}
+
+
+ {% endif %}
+ {% if oUIBlock.GetTitle() is not empty %}
+
{{ oUIBlock.GetTitle() }}
+ {% endif %}
+
-
\ No newline at end of file
+{% endapply %}
\ No newline at end of file
diff --git a/templates/base/components/dashlet/dashlet-plain-text.html.twig b/templates/base/components/dashlet/dashlet-plain-text.html.twig
index 586e70c92..061331d6b 100644
--- a/templates/base/components/dashlet/dashlet-plain-text.html.twig
+++ b/templates/base/components/dashlet/dashlet-plain-text.html.twig
@@ -1,6 +1,8 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-
- {# |raw filter is ok here as the escaping is already done by the \DashletPlainText class itself #}
- {{- oUIBlock.GetText()|raw -}}
-
\ No newline at end of file
+{% apply spaceless %}
+
+ {# |raw filter is ok here as the escaping is already done by the \DashletPlainText class itself #}
+ {{ oUIBlock.GetText()|raw }}
+
+{% endapply %}
\ No newline at end of file
diff --git a/templates/base/components/dashlet/layout.html.twig b/templates/base/components/dashlet/layout.html.twig
index 375c45499..8cfe046bf 100644
--- a/templates/base/components/dashlet/layout.html.twig
+++ b/templates/base/components/dashlet/layout.html.twig
@@ -1,2 +1,5 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
+{% apply spaceless %}
+
+{% endapply %}
\ No newline at end of file
diff --git a/templates/base/components/form/layout.html.twig b/templates/base/components/form/layout.html.twig
index 0c2a159ef..756dee092 100644
--- a/templates/base/components/form/layout.html.twig
+++ b/templates/base/components/form/layout.html.twig
@@ -13,9 +13,11 @@
{% endfor %}
{% endif %}
>
- {% block iboContentBlockContainer %}
- {% for oSubBlock in oUIBlock.GetSubBlocks() %}
- {{- render_block(oSubBlock, {aPage: aPage}) -}}
- {% endfor %}
- {% endblock %}
+ {% apply spaceless %}
+ {% block iboContentBlockContainer %}
+ {% for oSubBlock in oUIBlock.GetSubBlocks() %}
+ {{ render_block(oSubBlock, {aPage: aPage}) }}
+ {% endfor %}
+ {% endblock %}
+ {% endapply %}
\ No newline at end of file
diff --git a/templates/base/components/input/file-select/layout.html.twig b/templates/base/components/input/file-select/layout.html.twig
index 585281664..886a1e445 100644
--- a/templates/base/components/input/file-select/layout.html.twig
+++ b/templates/base/components/input/file-select/layout.html.twig
@@ -1,13 +1,15 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-
-
-
\ No newline at end of file
+{% apply spaceless %}
+
+
+
+{% endapply %}
\ No newline at end of file
diff --git a/templates/base/components/medallion-icon/layout.html.twig b/templates/base/components/medallion-icon/layout.html.twig
index 91357ed19..1f274c054 100644
--- a/templates/base/components/medallion-icon/layout.html.twig
+++ b/templates/base/components/medallion-icon/layout.html.twig
@@ -1,5 +1,6 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
+{% apply spaceless %}
{% if oUIBlock.GetImageUrl() != '' %}
@@ -10,4 +11,5 @@
{% if oUIBlock.GetDescription() != '' %}
{{ oUIBlock.GetDescription() }}
{% endif %}
-
\ No newline at end of file
+
+{% endapply %}
\ No newline at end of file
diff --git a/templates/base/components/spinner/layout.html.twig b/templates/base/components/spinner/layout.html.twig
index 43037199d..a04251b2d 100644
--- a/templates/base/components/spinner/layout.html.twig
+++ b/templates/base/components/spinner/layout.html.twig
@@ -1,12 +1,14 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-
{% if oUIBlock.HasDescription() %}
{{ oUIBlock.GetDescription() }}
{% endif %}
-
\ No newline at end of file
+
+{% endapply %}
\ No newline at end of file
diff --git a/templates/base/components/template/layout.html.twig b/templates/base/components/template/layout.html.twig
index eb725b455..36e1e63aa 100644
--- a/templates/base/components/template/layout.html.twig
+++ b/templates/base/components/template/layout.html.twig
@@ -1,7 +1,9 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-
- {% for oSubBlock in oUIBlock.GetSubBlocks() %}
- {{- render_block(oSubBlock, {aPage: aPage}) -}}
- {% endfor %}
-
\ No newline at end of file
+{% apply spaceless %}
+
+ {% for oSubBlock in oUIBlock.GetSubBlocks() %}
+ {{ render_block(oSubBlock, {aPage: aPage}) }}
+ {% endfor %}
+
+{% endapply %}
\ No newline at end of file
diff --git a/templates/base/components/text/layout.html.twig b/templates/base/components/text/layout.html.twig
index d7d15c749..4d55ae3af 100644
--- a/templates/base/components/text/layout.html.twig
+++ b/templates/base/components/text/layout.html.twig
@@ -1,3 +1,5 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{{ oUIBlock.GetText() }}
\ No newline at end of file
+{% apply spaceless %}
+ {{ oUIBlock.GetText() }}
+{% endapply %}
\ No newline at end of file
diff --git a/templates/base/components/title/layout.html.twig b/templates/base/components/title/layout.html.twig
index 8ddff503f..288662831 100644
--- a/templates/base/components/title/layout.html.twig
+++ b/templates/base/components/title/layout.html.twig
@@ -1,16 +1,18 @@
-
\ No newline at end of file
+{% endapply %}
\ No newline at end of file
diff --git a/templates/base/components/toolbar/layout.html.twig b/templates/base/components/toolbar/layout.html.twig
index e062b363f..18ad86924 100644
--- a/templates/base/components/toolbar/layout.html.twig
+++ b/templates/base/components/toolbar/layout.html.twig
@@ -1,10 +1,14 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
{# Toolbar #}
-
- {% for oSubBlock in oUIBlock.GetSubBlocks() %}
- {{- render_block(oSubBlock, {aPage: aPage}) -}}
- {% endfor %}
-
\ No newline at end of file
+{% apply spaceless %}
+
+
+ {% for oSubBlock in oUIBlock.GetSubBlocks() %}
+ {{ render_block(oSubBlock, {aPage: aPage}) }}
+ {% endfor %}
+
+{% endapply %}
\ No newline at end of file
diff --git a/templates/base/components/toolbar/separator/vertical-separator/layout.html.twig b/templates/base/components/toolbar/separator/vertical-separator/layout.html.twig
index 22ab602c2..02598e34b 100644
--- a/templates/base/components/toolbar/separator/vertical-separator/layout.html.twig
+++ b/templates/base/components/toolbar/separator/vertical-separator/layout.html.twig
@@ -1,8 +1,9 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-
-
-
\ No newline at end of file
+{% apply spaceless %}
+
+
+{% endapply %}
\ No newline at end of file
diff --git a/templates/base/components/toolbar/toolbar-spacer/layout.html.twig b/templates/base/components/toolbar/toolbar-spacer/layout.html.twig
index 75e32ab08..4d1141bc6 100644
--- a/templates/base/components/toolbar/toolbar-spacer/layout.html.twig
+++ b/templates/base/components/toolbar/toolbar-spacer/layout.html.twig
@@ -1,4 +1,6 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-
-
\ No newline at end of file
+{% apply spaceless %}
+
+
+{% endapply %}
\ No newline at end of file
diff --git a/templates/base/layouts/activity-panel/activity-entry/layout.html.twig b/templates/base/layouts/activity-panel/activity-entry/layout.html.twig
index 5b521cdae..a302cabca 100644
--- a/templates/base/layouts/activity-panel/activity-entry/layout.html.twig
+++ b/templates/base/layouts/activity-panel/activity-entry/layout.html.twig
@@ -32,6 +32,7 @@
+ {% apply spaceless %}
{% block iboActivityEntrySubInformation %}
{% if oUIBlock.GetOrigin() is not null and oUIBlock.GetOrigin != constant('Combodo\\iTop\\Core\\CMDBChange\\CMDBChangeOrigin::INTERACTIVE') %}
@@ -47,6 +48,7 @@
data-raw-datetime="{{ oUIBlock.GetRawDateTime() }}"
data-formatted-datetime="{{ oUIBlock.GetFormattedDateTime() }}">{{ oUIBlock.GetFormattedDateTime() }}
{% endblock %}
+ {% endapply %}
{% endblock %}
diff --git a/templates/base/layouts/activity-panel/caselog-entry-form/layout.html.twig b/templates/base/layouts/activity-panel/caselog-entry-form/layout.html.twig
index 9bda2be44..d37355314 100644
--- a/templates/base/layouts/activity-panel/caselog-entry-form/layout.html.twig
+++ b/templates/base/layouts/activity-panel/caselog-entry-form/layout.html.twig
@@ -1,3 +1,4 @@
+{% apply spaceless %}
\ No newline at end of file
+
+{% endapply %}
\ No newline at end of file
diff --git a/templates/base/layouts/content-block/layout.html.twig b/templates/base/layouts/content-block/layout.html.twig
index b0d25f147..6fd18f76d 100644
--- a/templates/base/layouts/content-block/layout.html.twig
+++ b/templates/base/layouts/content-block/layout.html.twig
@@ -1,18 +1,23 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
{# Content Block #}
-{# Important: We don't want the UIContentBlock have a div node based on the inherited CSS classes, otherwise the node would always be present, which is not what we want #}
-{% set bHasDiv = (oUIBlock.GetAdditionalCSSClassesAsString() or oUIBlock.GetDataAttributes() or oUIBlock.IsHidden() or oUIBlock.HasForcedDiv()) %}
-{% block iboContentBlockContainer %}
- {% if bHasDiv %}
-
{% endif %}
- {% for oSubBlock in oUIBlock.GetSubBlocks() %} {{ render_block(oSubBlock, {aPage: aPage}) }} {% endfor %}
- {% if bHasDiv %}
{% endif %}
-{% endblock %}
\ No newline at end of file
+{% apply spaceless %}
+
+ {# Important: We don't want the UIContentBlock have a div node based on the inherited CSS classes, otherwise the node would always be present, which is not what we want #}
+ {% set bHasDiv = (oUIBlock.GetAdditionalCSSClassesAsString() or oUIBlock.GetDataAttributes() or oUIBlock.IsHidden() or oUIBlock.HasForcedDiv()) %}
+
+ {% block iboContentBlockContainer %}
+ {% if bHasDiv %}
+
{% endif %}
+ {% for oSubBlock in oUIBlock.GetSubBlocks() %} {{ render_block(oSubBlock, {aPage: aPage}) }} {% endfor %}
+ {% if bHasDiv %}
{% endif %}
+
+ {% endblock %}
+{% endapply %}
\ No newline at end of file
diff --git a/templates/base/layouts/dashboard/column/layout.html.twig b/templates/base/layouts/dashboard/column/layout.html.twig
index f2556faee..376d9ebdc 100644
--- a/templates/base/layouts/dashboard/column/layout.html.twig
+++ b/templates/base/layouts/dashboard/column/layout.html.twig
@@ -1,20 +1,22 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
{# Dashboard Column #}
-{% if oUIBlock.IsEditMode() %}
- {% if oUIBlock.IsLastRow() %}
- {% set sCellClass = "layout_cell edit_mode layout_extension" %}
+{% apply spaceless %}
+ {% if oUIBlock.IsEditMode() %}
+ {% if oUIBlock.IsLastRow() %}
+ {% set sCellClass = "layout_cell edit_mode layout_extension" %}
+ {% else %}
+ {% set sCellClass = "layout_cell edit_mode" %}
+ {% endif %}
{% else %}
- {% set sCellClass = "layout_cell edit_mode" %}
+ {% set sCellClass = "dashboard" %}
{% endif %}
-{% else %}
- {% set sCellClass = "dashboard" %}
-{% endif %}
-
- {% for oSubBlock in oUIBlock.GetSubBlocks() %}
- {{- render_block(oSubBlock, {aPage: aPage}) -}}
- {% endfor %}
-
\ No newline at end of file
+
+ {% for oSubBlock in oUIBlock.GetSubBlocks() %}
+ {{ render_block(oSubBlock, {aPage: aPage}) }}
+ {% endfor %}
+
+{% endapply %}
\ No newline at end of file
diff --git a/templates/base/layouts/dashboard/layout.html.twig b/templates/base/layouts/dashboard/layout.html.twig
index b99471791..b61727439 100644
--- a/templates/base/layouts/dashboard/layout.html.twig
+++ b/templates/base/layouts/dashboard/layout.html.twig
@@ -1,14 +1,16 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
{# Dashboard Layout #}
-{% if oUIBlock.HasTitle() or oUIBlock.HasToolbar() %}
-
-
{{ oUIBlock.GetTitle() }}
- {{ render_block(oUIBlock.GetToolbar(), {aPage: aPage}) }}
+{% apply spaceless %}
+ {% if oUIBlock.HasTitle() or oUIBlock.HasToolbar() %}
+
+ {% for oSubBlock in oUIBlock.GetDashboardRows() %}
+ {{ render_block(oSubBlock, {aPage: aPage}) }}
+ {% endfor %}
-{% endif %}
-
- {% for oSubBlock in oUIBlock.GetDashboardRows() %}
- {{ render_block(oSubBlock, {aPage: aPage}) }}
- {% endfor %}
-
\ No newline at end of file
+{% endapply %}
\ No newline at end of file
diff --git a/templates/base/layouts/dashboard/row/layout.html.twig b/templates/base/layouts/dashboard/row/layout.html.twig
index 56be4575c..7340fa1de 100644
--- a/templates/base/layouts/dashboard/row/layout.html.twig
+++ b/templates/base/layouts/dashboard/row/layout.html.twig
@@ -1,8 +1,10 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
{# Dashboard Row #}
-
- {% for oSubBlock in oUIBlock.GetSubBlocks() %}
- {{- render_block(oSubBlock, {aPage: aPage}) -}}
- {% endfor %}
-
\ No newline at end of file
+{% apply spaceless %}
+
+ {% for oSubBlock in oUIBlock.GetSubBlocks() %}
+ {{ render_block(oSubBlock, {aPage: aPage}) }}
+ {% endfor %}
+
+{% endapply %}
\ No newline at end of file
diff --git a/templates/datamodel/ActionEmail/email-notification-preview.html.twig b/templates/datamodel/ActionEmail/email-notification-preview.html.twig
index c1eca9964..717659f6b 100644
--- a/templates/datamodel/ActionEmail/email-notification-preview.html.twig
+++ b/templates/datamodel/ActionEmail/email-notification-preview.html.twig
@@ -1,3 +1,4 @@
+{% apply spaceless %}
{% UIAlert ForWarning{sTitle:'', sContent: '', sId: null} %}
@@ -8,4 +9,5 @@
{% EndUIAlert %}
-
\ No newline at end of file
+
+{% endapply %}
\ No newline at end of file
diff --git a/templates/pages/backoffice/ajaxpage/layout.html.twig b/templates/pages/backoffice/ajaxpage/layout.html.twig
index 25f4c18be..17ab28b70 100644
--- a/templates/pages/backoffice/ajaxpage/layout.html.twig
+++ b/templates/pages/backoffice/ajaxpage/layout.html.twig
@@ -1,202 +1,214 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% set sId = oLayout.GetId() | sanitize(constant('utils::ENUM_SANITIZATION_FILTER_VARIABLE_NAME')) %}
-{% set bHasOnInitOrOnDomReadyScripts = aPage.aJsInlineOnInit is not empty or aPage.aJsInlineOnDomReady is not empty %}
-{% if bEscapeContent %}
- {{- render_block(oLayout, {aPage: aPage})|escape -}}
-{% else %}
- {{- render_block(oLayout, {aPage: aPage}) -}}
-{% endif %}
-{% block iboPageJsInlineEarly %}
- {% for sJsInline in aPage.aJsInlineEarly %}
- {# We put each scripts in a dedicated script tag to prevent massive failure if 1 script is broken (eg. missing semi-colon or non closed multi-line comment) #}
-
- {% endfor %}
-{% endblock %}
-{% block iboPageJsInlineLive %}
- {% for sJsInline in aPage.aJsInlineLive %}
- {# We put each scripts in a dedicated script tag to prevent massive failure if 1 script is broken (eg. missing semi-colon or non closed multi-line comment) #}
-
- {% endfor %}
-{% endblock %}
-{% if bHasOnInitOrOnDomReadyScripts %}
-
-{% endif %}
-{% set sPromiseId = aPage.sPromiseId %}
-{% if aPage.aJsFiles is not empty %}
- {% block iboPageJsFiles %}
+
+ {% endfor %}
+ {% endblock %}
+
+ {% block iboPageJsInlineLive %}
+ {% for sJsInline in aPage.aJsInlineLive %}
+ {# We put each scripts in a dedicated script tag to prevent massive failure if 1 script is broken (eg. missing semi-colon or non closed multi-line comment) #}
+
+ {% endfor %}
+ {% endblock %}
+
+ {% if bHasOnInitOrOnDomReadyScripts %}
- {% endblock %}
-{% else %}
- {% if bHasOnInitOrOnDomReadyScripts %}
- {% block iboPageJsInlineOnDomReady %}
+ {% endif %}
+
+ {% set sPromiseId = aPage.sPromiseId %}
+ {% if aPage.aJsFiles is not empty %}
+ {% block iboPageJsFiles %}
{% endblock %}
+ {% else %}
+ {% if bHasOnInitOrOnDomReadyScripts %}
+ {% block iboPageJsInlineOnDomReady %}
+
+ {% endblock %}
+ {% endif %}
{% endif %}
-{% endif %}
-{% if aDeferredBlocks is not empty %}
- {% for oBlock in aDeferredBlocks %}
- {{- render_block(oBlock, {aPage: aPage})|raw -}}
- {% endfor %}
-{% endif %}
-{% if sDeferredContent %}
-
-{% endif %}
-{% block iboPageCssFiles %}
- {% if aPage.aCssFiles is not empty %}
+
+ {% if aDeferredBlocks is not empty %}
+ {% for oBlock in aDeferredBlocks %}
+ {{ render_block(oBlock, {aPage: aPage})|raw }}
+ {% endfor %}
+ {% endif %}
+
+ {% if sDeferredContent %}
{% endif %}
-{% endblock %}
-{{- aPage.sCapturedOutput|raw -}}
\ No newline at end of file
+
+ {% block iboPageCssFiles %}
+ {% if aPage.aCssFiles is not empty %}
+
+ {% endif %}
+ {% endblock %}
+
+ {{ aPage.sCapturedOutput|raw }}
+
+{% endapply %}
\ No newline at end of file
diff --git a/templates/pages/backoffice/clilikewebpage/layout.html.twig b/templates/pages/backoffice/clilikewebpage/layout.html.twig
index 37eaea827..65531fdc2 100644
--- a/templates/pages/backoffice/clilikewebpage/layout.html.twig
+++ b/templates/pages/backoffice/clilikewebpage/layout.html.twig
@@ -1,3 +1,5 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{{ render_block(oLayout, {aPage: aPage}) }}
\ No newline at end of file
+{% apply spaceless %}
+ {{ render_block(oLayout, {aPage: aPage}) }}
+{% endapply %}
\ No newline at end of file
diff --git a/templates/pages/backoffice/extension-blocks/banner.html.twig b/templates/pages/backoffice/extension-blocks/banner.html.twig
index cded4991f..e1969b8aa 100644
--- a/templates/pages/backoffice/extension-blocks/banner.html.twig
+++ b/templates/pages/backoffice/extension-blocks/banner.html.twig
@@ -1,5 +1,7 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-