diff --git a/datamodels/2.x/itop-core-update/templates/ConfirmUpdate.html.twig b/datamodels/2.x/itop-core-update/templates/ConfirmUpdate.html.twig
index 9cc273a27..b54d81901 100644
--- a/datamodels/2.x/itop-core-update/templates/ConfirmUpdate.html.twig
+++ b/datamodels/2.x/itop-core-update/templates/ConfirmUpdate.html.twig
@@ -1,9 +1,6 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
-
{% UIContentBlock Standard {'aContainerClasses': ['ibo-update-core', 'ibo-setup--wizard']} %}
-
{% if bSuccess %}
{% UIContentBlock Standard {'aContainerClasses': ['ibo-setup--wizard--content']} %}
{% UIFieldSet Standard {'sLegend':'iTopUpdate:UI:Status'|dict_s, 'sId':'update_progress'} %}
@@ -11,9 +8,7 @@
{% set sVersion = 'UI:iTopVersion:Long'|dict_format(constant('ITOP_APPLICATION'), constant('ITOP_VERSION'), constant('ITOP_REVISION'), constant('ITOP_BUILD_DATE')) %}
{% UIField Large {'sLabel':'iTopUpdate:UI:CurrentVersion'|dict_s, 'sValueHtml':sVersion} %}{% EndUIField %}
{% EndUIFieldSet %}
-
{% UIFieldSet Standard {'sLegend':'iTopUpdate:UI:Backup'|dict_s} %}
-
{% if bDoBackup or bDoFilesArchive %}
{% if bDoBackup %}
{% UIField Large {'sLabel':'iTopUpdate:UI:WithDBBackup'|dict_s, 'sValueHtml':sBackupFile} %}{% EndUIField %}
@@ -24,14 +19,11 @@
{% else %}
{% UIAlert ForWarning {'sContent':'iTopUpdate:UI:WithoutBackup'|dict_s, 'IsCollapsible':false, 'IsClosable':false} %}{% EndUIAlert %}
{% endif %}
-
{% EndUIFieldSet %}
-
{% UIFieldSet Standard {'sLegend':'iTopUpdate:UI:Action'|dict_s} %}
{% UIAlert ForWarning {'sContent':'iTopUpdate:UI:WarningReadOnlyDuringUpdate'|dict_s, 'IsCollapsible':false, 'IsClosable':false} %}{% EndUIAlert %}
{% EndUIFieldSet %}
{% EndUIContentBlock %}
-
{% UIToolbar ForButton {'AddCSSClass':'ibo-setup--wizard--buttons-container'} %}
{% UIForm Standard {'CSSClasses':['form-inline']} %}
{% UIButton ForCancel {'sId':'cancel-update', 'sLabel':'iTopUpdate:UI:Cancel'|dict_s, 'bIsSubmit':true} %}
@@ -46,17 +38,12 @@
{% UIInput ForHidden {'sName':'doFilesArchive', 'sValue':bDoFilesArchive} %}
{% EndUIForm %}
{% EndUIToolbar %}
-
{% else %}
-
{% UIFieldSet Standard {'sLegend':''} %}
{% UIAlert ForFailure {'sContent':sError, 'IsCollapsible':false, 'IsClosable':false} %}{% EndUIAlert %}
{% UIForm Standard {} %}
{% UIButton ForPrimaryAction {'sLabel':'iTopUpdate:UI:Back'|dict_s, 'bIsSubmit':true} %}
{% EndUIForm %}
{% EndUIFieldSet %}
-
{% endif %}
-
-{% EndUIContentBlock %}
-{% endapply %}
\ No newline at end of file
+{% EndUIContentBlock %}
\ No newline at end of file
diff --git a/datamodels/2.x/itop-core-update/templates/SelectUpdateFile.html.twig b/datamodels/2.x/itop-core-update/templates/SelectUpdateFile.html.twig
index 33d68114e..d583394e0 100644
--- a/datamodels/2.x/itop-core-update/templates/SelectUpdateFile.html.twig
+++ b/datamodels/2.x/itop-core-update/templates/SelectUpdateFile.html.twig
@@ -1,11 +1,7 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
-
{% UIContentBlock Standard {'aContainerClasses':['ibo-update-core']} %}
-
{% UIPanel Neutral {sTitle:'iTopUpdate:UI:PageTitle'|dict_s} %}
-
{% UIContentBlock Standard {'aContainerClasses': ['display_block', 'display-files']} %}
{% UIFieldSet Standard {'sLegend':'iTopUpdate:UI:Status'|dict_s} %}
{% UIAlert ForInformation {'sId':'header-requirements', 'IsCollapsible':false, 'IsClosable':false} %}
@@ -18,34 +14,26 @@
{% EndUIContentBlock %}
{% EndUICollapsibleSection %}
{% EndUIAlert %}
-
{% UIField Standard {'sLabel':'iTopUpdate:UI:CurrentVersion'|dict_s} %}
{{ 'UI:iTopVersion:Long'|dict_format(constant('ITOP_APPLICATION'), constant('ITOP_VERSION'), constant('ITOP_REVISION'), constant('ITOP_BUILD_DATE')) }}
{% EndUIField %}
-
{% UIField Standard {'sLabel':'iTopUpdate:UI:DiskFreeSpace'|dict_s} %}
{{ sDiskFreeSpace }}
{% EndUIField %}
-
{% UIField Standard {'sLabel':'iTopUpdate:UI:ItopDiskSpace'|dict_s, 'ValueId':'itop-disk-space'} %}
{% UISpinner Standard {} %}
{% EndUIField %}
-
{% UIField Standard {'sLabel':'iTopUpdate:UI:DBDiskSpace'|dict_s, 'ValueId':'db-disk-space'} %}
{% UISpinner Standard {} %}
{% EndUIField %}
-
{% UIField Standard {'sLabel':'iTopUpdate:UI:FileUploadMaxSize'|dict_s} %}
{{ sFileUploadMaxSize }}
{% EndUIField %}
-
{% EndUIFieldSet %}
-
{% UIFieldSet Standard {'sLegend':'iTopUpdate:UI:SelectUpdateFile'|dict_s, 'sId':'form-update-outer'} %}
{% UIForm Standard {} %}
{% UIInput ForHidden {'sName':'route', 'sValue':'core_update.confirm_update'} %}
{% UIInput ForHidden {'sName':'transaction_id', 'sValue':sTransactionId} %}
-
{% UIAlert ForFailure {'sId':'header-file-size', 'IsHidden':true} %}
{% UIContentBlock Standard {'aContainerClasses':['ibo-file-size-error']} %}
{{ 'iTopUpdate:Error:FileUploadMaxSizeTooSmall'|dict_s }}
@@ -57,34 +45,25 @@
{{ 'iTopUpdate:UI:UploadMaxFileSize'|dict_format(sUploadMaxSize) }}
{% EndUIContentBlock %}
{% EndUIAlert %}
-
{% UIAlert ForInformation {'sId':'check-in-progress', 'IsHidden':false} %}
{{ 'iTopUpdate:UI:CheckInProgress'|dict_s }}
{% EndUIAlert %}
-
{% UIFileSelect Standard {sName: 'file', sId: 'file','AddCSSClass':'ibo-is-hidden'} %}
-
{% UIAlert ForWarning {'sId':'dobackup-warning', 'IsHidden':true} %}
{{ 'iTopUpdate:UI:DoBackup:Warning'|dict_s }}
{% EndUIAlert %}
-
{% UIContentBlock Standard {'aContainerClasses':['ibo-font-ral-nor-150']} %}
{% UIInput Standard {'sType':'checkbox', 'sId':'doBackup', 'sName':'doBackup', 'sValue':'1', 'IsChecked':true, 'CSSClasses':['ibo-input-checkbox', 'ibo-input--label-left'], 'Label':'iTopUpdate:UI:DoBackup:Label'|dict_s} %}
{% EndUIContentBlock %}
-
{% UIContentBlock Standard {'aContainerClasses':['ibo-font-ral-nor-150']} %}
{% UIInput Standard {'sType':'checkbox', 'sId':'doFilesArchive', 'sName':'doFilesArchive', 'sValue':'1', 'IsChecked':true, 'CSSClasses':['ibo-input-checkbox', 'ibo-input--label-left'], 'Label':'iTopUpdate:UI:DoFilesArchive'|dict_s} %}
{% EndUIContentBlock %}
-
{% UIContentBlock Standard {'aContainerClasses':['ibo_check_update_submit']} %}
{% UIButton ForPrimaryAction {'sLabel':'iTopUpdate:UI:CheckUpdate'|dict_s, 'sId':'check-update', 'bIsSubmit':true, 'IsDisabled':true} %}
{% UISpinner Standard {'sId':'submit-wait', 'IsHidden':true} %}
{% EndUIContentBlock %}
-
{% EndUIForm %}
-
{% EndUIFieldSet %}
-
{% if bIsSetupLaunchButtonEnabled %}
{% UIFieldSet Standard {'sLegend':'iTopUpdate:UI:Setup'|dict_s} %}
{% UIForm Standard {'sId':'launch-setup-form', Action:sLaunchSetupUrl} %}
@@ -99,14 +78,9 @@
{% UISpinner Standard {sId:'fast-setup-wait', IsHidden:true} %}
{% EndUIFieldSet %}
{% endif %}
-
{% UIFieldSet Standard {'sLegend':'iTopUpdate:UI:History'|dict_s} %}
{% UIDataTable ForRendering {'sListId':'iboupdatehistory', 'oSet':oSet} %}{% EndUIDataTable %}
{% EndUIFieldSet %}
-
{% EndUIContentBlock %}
-
{% EndUIPanel %}
-
-{% EndUIContentBlock %}
-{% endapply %}
\ No newline at end of file
+{% EndUIContentBlock %}
\ No newline at end of file
diff --git a/datamodels/2.x/itop-core-update/templates/UpdateCoreFiles.html.twig b/datamodels/2.x/itop-core-update/templates/UpdateCoreFiles.html.twig
index c22b0ccdf..76bea5057 100644
--- a/datamodels/2.x/itop-core-update/templates/UpdateCoreFiles.html.twig
+++ b/datamodels/2.x/itop-core-update/templates/UpdateCoreFiles.html.twig
@@ -1,68 +1,64 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
+{% UIContentBlock Standard {aContainerClasses: ['ibo-update-core', 'ibo-setup--wizard']} %}
-{% apply spaceless %}
+ {% UIContentBlock Standard {'aContainerClasses': ['ibo-setup--wizard--content']} %}
+ {% UIFieldSet Standard {sLegend:'iTopUpdate:UI:Progress'|dict_s, sId:'installation_progress'} %}
+ {# Todo 3.0 Add Progress bar UIBlock #}
+
+
{{ 'iTopUpdate:UI:SetupMessage:Ready'|dict_s }}
+
0%
+
+ {% EndUIFieldSet %}
- {% UIContentBlock Standard {aContainerClasses: ['ibo-update-core', 'ibo-setup--wizard']} %}
-
- {% UIContentBlock Standard {'aContainerClasses': ['ibo-setup--wizard--content']} %}
- {% UIFieldSet Standard {sLegend:'iTopUpdate:UI:Progress'|dict_s, sId:'installation_progress'} %}
- {# Todo 3.0 Add Progress bar UIBlock #}
-
-
{{ 'iTopUpdate:UI:SetupMessage:Ready'|dict_s }}
-
0%
-
- {% EndUIFieldSet %}
-
- {% UIFieldSet Standard {sLegend:'iTopUpdate:UI:Status'|dict_s} %}
- {% UIAlert ForSuccess {sId:'new_version', sTitle:'iTopUpdate:UI:NewVersion'|dict_s, IsHidden:true, IsCollapsible:false, IsClosable:false} %}
- {% UIContentBlock Standard {aContainerClasses:['ibo-update-core--current-version']} %}
- {{ sCurrentVersion }}
- {% EndUIContentBlock %}
- {% EndUIAlert %}
- {% UIAlert ForInformation {sId:'current_version', IsCollapsible:false, IsClosable:false} %}
- {% UIContentBlock Standard {aContainerClasses:['ibo-update-core--current-version']} %}
- {{ sCurrentVersion }}
- {% EndUIContentBlock %}
- {% EndUIAlert %}
-
- {% if bDoBackup %}
- {% UIAlert ForInformation {sId:'do_backup_done', sTitle:'iTopUpdate:UI:WithDBBackup'|dict_s, sContent:sBackupFile, IsHidden:true} %}{% EndUIAlert %}
- {% endif %}
-
- {% if bDoFilesArchive %}
- {% UIAlert ForInformation {sId:'do_files_archive_done', sTitle:'iTopUpdate:UI:WithFilesBackup'|dict_s, sContent:sItopArchive, IsHidden:true} %}{% EndUIAlert %}
- {% endif %}
- {% EndUIFieldSet %}
-
- {% UIFieldSet Standard {sLegend:''} %}
- {% UIAlert ForFailure {sId:'setup_error_outer', sContent:'', IsCollapsible:false, IsClosable:false, IsHidden:true} %}
- {% UIContentBlock Standard {sId:'setup_error',aContainerClasses:['ibo-update-core--error']} %}{% EndUIContentBlock %}
- {% if bDoFilesArchive %}
- {{ 'iTopUpdate:UI:RestoreArchive'|dict_format(sItopArchive) }}
- {% endif %}
- {% if bDoBackup %}
- {{ 'iTopUpdate:UI:RestoreBackup'|dict_format(sBackupFile) }}
- {% endif %}
- {{ 'iTopUpdate:UI:MaintenanceModeActive'|dict_s }}
- {% EndUIAlert %}
- {% EndUIFieldSet %}
- {% EndUIContentBlock %}
-
- {% UIToolbar ForButton {'AddCSSClass':'ibo-setup--wizard--buttons-container'} %}
- {% UIContentBlock Standard {sId:'run_setup',aContainerClasses:['ibo-update-core--run-setup'], IsHidden:true} %}
- {% UIForm Standard {CSSClasses:['form-inline']} %}
- {% UIInput ForHidden {sName:'route', sValue:'core_update.run_setup'} %}
- {% UIInput ForHidden {sName:'authent', sValue:sSetupToken} %}
- {% UIInput ForHidden {sName:'', sValue:''} %}
- {% UIButton ForPrimaryAction {sLabel:'iTopUpdate:UI:RunSetup'|dict_s, sId:'run_setup', bIsSubmit:true, IsDisabled:false} %}
- {% EndUIForm %}
+ {% UIFieldSet Standard {sLegend:'iTopUpdate:UI:Status'|dict_s} %}
+ {% UIAlert ForSuccess {sId:'new_version', sTitle:'iTopUpdate:UI:NewVersion'|dict_s, IsHidden:true, IsCollapsible:false, IsClosable:false} %}
+ {% UIContentBlock Standard {aContainerClasses:['ibo-update-core--current-version']} %}
+ {{ sCurrentVersion }}
{% EndUIContentBlock %}
- {% UIToolbarSpacer Standard {} %}
- {% UIForm Standard {CSSClasses:['form-inline']} %}
- {% UIButton ForPrimaryAction {sLabel:'iTopUpdate:UI:Continue'|dict_s, sId:'setup_continue', bIsSubmit:true, IsDisabled:true} %}
- {% EndUIForm %}
- {% EndUIToolbar %}
+ {% EndUIAlert %}
+ {% UIAlert ForInformation {sId:'current_version', IsCollapsible:false, IsClosable:false} %}
+ {% UIContentBlock Standard {aContainerClasses:['ibo-update-core--current-version']} %}
+ {{ sCurrentVersion }}
+ {% EndUIContentBlock %}
+ {% EndUIAlert %}
+ {% if bDoBackup %}
+ {% UIAlert ForInformation {sId:'do_backup_done', sTitle:'iTopUpdate:UI:WithDBBackup'|dict_s, sContent:sBackupFile, IsHidden:true} %}{% EndUIAlert %}
+ {% endif %}
+
+ {% if bDoFilesArchive %}
+ {% UIAlert ForInformation {sId:'do_files_archive_done', sTitle:'iTopUpdate:UI:WithFilesBackup'|dict_s, sContent:sItopArchive, IsHidden:true} %}{% EndUIAlert %}
+ {% endif %}
+ {% EndUIFieldSet %}
+
+ {% UIFieldSet Standard {sLegend:''} %}
+ {% UIAlert ForFailure {sId:'setup_error_outer', sContent:'', IsCollapsible:false, IsClosable:false, IsHidden:true} %}
+ {% UIContentBlock Standard {sId:'setup_error',aContainerClasses:['ibo-update-core--error']} %}{% EndUIContentBlock %}
+ {% if bDoFilesArchive %}
+ {{ 'iTopUpdate:UI:RestoreArchive'|dict_format(sItopArchive) }}
+ {% endif %}
+ {% if bDoBackup %}
+ {{ 'iTopUpdate:UI:RestoreBackup'|dict_format(sBackupFile) }}
+ {% endif %}
+ {{ 'iTopUpdate:UI:MaintenanceModeActive'|dict_s }}
+ {% EndUIAlert %}
+ {% EndUIFieldSet %}
{% EndUIContentBlock %}
-{% endapply %}
\ No newline at end of file
+
+ {% UIToolbar ForButton {'AddCSSClass':'ibo-setup--wizard--buttons-container'} %}
+ {% UIContentBlock Standard {sId:'run_setup',aContainerClasses:['ibo-update-core--run-setup'], IsHidden:true} %}
+ {% UIForm Standard {CSSClasses:['form-inline']} %}
+ {% UIInput ForHidden {sName:'route', sValue:'core_update.run_setup'} %}
+ {% UIInput ForHidden {sName:'authent', sValue:sSetupToken} %}
+ {% UIInput ForHidden {sName:'', sValue:''} %}
+ {% UIButton ForPrimaryAction {sLabel:'iTopUpdate:UI:RunSetup'|dict_s, sId:'run_setup', bIsSubmit:true, IsDisabled:false} %}
+ {% EndUIForm %}
+ {% EndUIContentBlock %}
+ {% UIToolbarSpacer Standard {} %}
+ {% UIForm Standard {CSSClasses:['form-inline']} %}
+ {% UIButton ForPrimaryAction {sLabel:'iTopUpdate:UI:Continue'|dict_s, sId:'setup_continue', bIsSubmit:true, IsDisabled:true} %}
+ {% EndUIForm %}
+ {% EndUIToolbar %}
+
+{% EndUIContentBlock %}
\ No newline at end of file
diff --git a/templates/application/display-block/block-chart/layout.html.twig b/templates/application/display-block/block-chart/layout.html.twig
index ed83efac1..89beb550b 100644
--- a/templates/application/display-block/block-chart/layout.html.twig
+++ b/templates/application/display-block/block-chart/layout.html.twig
@@ -1,9 +1,7 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
-
-
-
-
+
+
+
-{% endapply %}
\ No newline at end of file
+
\ 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 7d2fbbfa9..874e43c76 100644
--- a/templates/application/display-block/block-chart/layout.js.twig
+++ b/templates/application/display-block/block-chart/layout.js.twig
@@ -1,7 +1,5 @@
{# @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);
-});
-{% endapply %}
\ No newline at end of file
+});
\ 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 f1866e2c4..229c6777c 100644
--- a/templates/application/display-block/block-csv/layout.html.twig
+++ b/templates/application/display-block/block-csv/layout.html.twig
@@ -1,29 +1,27 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
-
-
-
- {% if oUIBlock.bAdvancedMode %}
-
- {{ 'UI:CSVExport:AdvancedMode+'|dict_s }}
-
- {% endif %}
-
-
-
-
- {{ 'UI:Loading'|dict_s }}
-
-
-
+
+
+
+ {% if oUIBlock.bAdvancedMode %}
+
+ {{ 'UI:CSVExport:AdvancedMode+'|dict_s }}
+
+ {% endif %}
-{% endapply %}
\ No newline at end of file
+
+
+
+ {{ 'UI:Loading'|dict_s }}
+
+
+
+
\ 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 0547daa6a..2279c1663 100644
--- a/templates/application/display-block/block-csv/layout.js.twig
+++ b/templates/application/display-block/block-csv/layout.js.twig
@@ -1,6 +1,5 @@
{# @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 }},
@@ -8,5 +7,4 @@ $.post(
$('#csv_content').html(data);
$('#csv_content_loading').hide();
$('#csv_content').show();
- });
-{% endapply %}
\ No newline at end of file
+ });
\ 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 2252989d2..4aea4dc21 100644
--- a/templates/application/display-block/block-list/layout.html.twig
+++ b/templates/application/display-block/block-list/layout.html.twig
@@ -1,25 +1,21 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
+{% if oUIBlock.bEmptySet or oUIBlock.bNotAuthorized %}
+
{{ 'UI:NoObjectToDisplay'|dict_s }}
+{% endif %}
- {% if oUIBlock.bEmptySet or oUIBlock.bNotAuthorized %}
-
{{ 'UI:NoObjectToDisplay'|dict_s }}
- {% endif %}
+{# 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 %}
- {# 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 %}
-
- {% for oSubBlock in oUIBlock.GetSubBlocks() %}
- {{ render_block(oSubBlock, {aPage: aPage}) }}
- {% endfor %}
-
-{% endapply %}
\ No newline at end of file
+{% for oSubBlock in oUIBlock.GetSubBlocks() %}
+ {{- render_block(oSubBlock, {aPage: aPage}) -}}
+{% endfor %}
\ No newline at end of file
diff --git a/templates/application/display-block/block-list/layout.js.twig b/templates/application/display-block/block-list/layout.js.twig
index d4a05b19c..7313a230c 100644
--- a/templates/application/display-block/block-list/layout.js.twig
+++ b/templates/application/display-block/block-list/layout.js.twig
@@ -1,7 +1,5 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
- {% if oUIBlock.sEventAttachedData is not empty %}
- $('body').trigger('update_history.itop', [{{ oUIBlock.sEventAttachedData|raw }}]);
- {% endif %}
-{% endapply %}
\ No newline at end of file
+{% if oUIBlock.sEventAttachedData is not empty %}
+ $('body').trigger('update_history.itop', [{{ oUIBlock.sEventAttachedData|raw }}]);
+{% endif %}
\ No newline at end of file
diff --git a/templates/application/links/direct/block-direct-linkset-edit-table/layout.js.twig b/templates/application/links/direct/block-direct-linkset-edit-table/layout.js.twig
index 400cce7b7..c0fb297d2 100644
--- a/templates/application/links/direct/block-direct-linkset-edit-table/layout.js.twig
+++ b/templates/application/links/direct/block-direct-linkset-edit-table/layout.js.twig
@@ -1,6 +1,5 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
oWidget{{ oUIBlock.oUILinksDirectWidget.GetInputId() }} = $('#{{ oUIBlock.oUILinksDirectWidget.GetInputId() }}').directlinks({
class_name: '{{ oUIBlock.oUILinksDirectWidget.GetClass() }}',
att_code: '{{ oUIBlock.oUILinksDirectWidget.GetAttCode() }}',
@@ -8,5 +7,4 @@ oWidget{{ oUIBlock.oUILinksDirectWidget.GetInputId() }} = $('#{{ oUIBlock.oUILin
submit_to: '{{ oUIBlock.sSubmitUrl }}',
oWizardHelper: {{ oUIBlock.sWizHelper }},
do_search: '{{ oUIBlock.sJSDoSearch }}'
-});
-{% endapply %}
\ No newline at end of file
+});
\ No newline at end of file
diff --git a/templates/application/links/indirect/block-indirect-linkset-edit-table/layout.js.twig b/templates/application/links/indirect/block-indirect-linkset-edit-table/layout.js.twig
index 2dc44fdb0..5d65668ef 100644
--- a/templates/application/links/indirect/block-indirect-linkset-edit-table/layout.js.twig
+++ b/templates/application/links/indirect/block-indirect-linkset-edit-table/layout.js.twig
@@ -1,6 +1,5 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
oWidget{{ oUIBlock.oUILinksWidget.GetInputId() }} = new LinksWidget(
'{{ oUIBlock.oUILinksWidget.GetLinkedSetId() }}',
'{{ oUIBlock.oUILinksWidget.GetClass() }}',
@@ -14,5 +13,4 @@ oWidget{{ oUIBlock.oUILinksWidget.GetInputId() }} = new LinksWidget(
{{ oUIBlock.iMaxAddedId }},
{{ oUIBlock.aRemoved | json_encode | raw }}
);
-oWidget{{ oUIBlock.oUILinksWidget.GetInputId() }}.Init();
-{% endapply %}
\ No newline at end of file
+oWidget{{ oUIBlock.oUILinksWidget.GetInputId() }}.Init();
\ No newline at end of file
diff --git a/templates/application/links/indirect/block-indirect-linkset-edit-table/layout.ready.js.twig b/templates/application/links/indirect/block-indirect-linkset-edit-table/layout.ready.js.twig
index f52b3cd6c..18230e6ff 100644
--- a/templates/application/links/indirect/block-indirect-linkset-edit-table/layout.ready.js.twig
+++ b/templates/application/links/indirect/block-indirect-linkset-edit-table/layout.ready.js.twig
@@ -1,5 +1,3 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
-oWidget{{ oUIBlock.oUILinksWidget.GetInputId() }}.RegisterChange();
-{% endapply %}
\ No newline at end of file
+oWidget{{ oUIBlock.oUILinksWidget.GetInputId() }}.RegisterChange();
\ No newline at end of file
diff --git a/templates/application/links/indirect/block-object-picker-dialog/layout.ready.js.twig b/templates/application/links/indirect/block-object-picker-dialog/layout.ready.js.twig
index c62e86c9d..dc01439d5 100644
--- a/templates/application/links/indirect/block-object-picker-dialog/layout.ready.js.twig
+++ b/templates/application/links/indirect/block-object-picker-dialog/layout.ready.js.twig
@@ -1,7 +1,5 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
-
$('#dlg_{{ oUIBlock.oUILinksWidget.GetLinkedSetId() }}').dialog({
width: $(window).width()*0.8,
height: $(window).height()*0.8,
@@ -30,6 +28,4 @@ $('#dlg_{{ oUIBlock.oUILinksWidget.GetLinkedSetId() }}').dialog({
});
$('#SearchFormToAdd_{{ oUIBlock.oUILinksWidget.GetLinkedSetId() }} form').on('submit.uilinksWizard', oWidget{{ oUIBlock.oUILinksWidget.GetInputId() }}.SearchObjectsToAdd);
-$('#SearchFormToAdd_{{ oUIBlock.oUILinksWidget.GetLinkedSetId() }}').on('resize', oWidget{{ oUIBlock.oUILinksWidget.GetInputId() }}.UpdateSizes);
-
-{% endapply %}
\ No newline at end of file
+$('#SearchFormToAdd_{{ oUIBlock.oUILinksWidget.GetLinkedSetId() }}').on('resize', oWidget{{ oUIBlock.oUILinksWidget.GetInputId() }}.UpdateSizes);
\ No newline at end of file
diff --git a/templates/application/links/layout.ready.js.twig b/templates/application/links/layout.ready.js.twig
index 801b9c6db..74e9a05ee 100644
--- a/templates/application/links/layout.ready.js.twig
+++ b/templates/application/links/layout.ready.js.twig
@@ -1,8 +1,6 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
{{ oUIBlock.GetWidgetName() }} = $('#{{ oUIBlock.GetId() }}').links_view_table({
link_class: '{{ oUIBlock.GetLinkedClass() }}',
external_key_to_me: '{{ oUIBlock.GetExternalKeyToMe() }}'
-});
-{% endapply %}
\ No newline at end of file
+});
\ No newline at end of file
diff --git a/templates/application/preferences/block-shortcuts/layout.js.twig b/templates/application/preferences/block-shortcuts/layout.js.twig
index cdf4c9b76..a94fb685c 100644
--- a/templates/application/preferences/block-shortcuts/layout.js.twig
+++ b/templates/application/preferences/block-shortcuts/layout.js.twig
@@ -1,7 +1,5 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
-
var selectionCount{{ oUIBlock.sIdShortcuts }} = $('#{{ oUIBlock.sIdShortcuts }} [name="selectionCount"]');
selectionCount{{ oUIBlock.sIdShortcuts }}.on('change',function()
{
@@ -47,6 +45,4 @@ $('#shortcut_btn_delete').on('click', function() {
});
}
return false;
-});
-
-{% endapply %}
\ No newline at end of file
+});
\ No newline at end of file
diff --git a/templates/application/printable/block-print-header/layout.html.twig b/templates/application/printable/block-print-header/layout.html.twig
index d4fffe250..8a6020798 100644
--- a/templates/application/printable/block-print-header/layout.html.twig
+++ b/templates/application/printable/block-print-header/layout.html.twig
@@ -1,21 +1,17 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
+
+
{{'UI:ExplainPrintable'| dict_format(' ')| raw}}
+
+
{{'UI:Button:GoPrint'| dict_s}}
+
{{ 'UI:Button:Cancel'| dict_s}}
-
-
{{'UI:ExplainPrintable'| dict_format(' ')| raw}}
-
-
{{'UI:Button:GoPrint'| dict_s}}
-
{{ 'UI:Button:Cancel'| dict_s}}
+
+ {{ 'UI:PrintResolution:FullSize'|dict_s }}
+ {{ 'UI:PrintResolution:A4Portrait'|dict_s }}
+ {{ 'UI:PrintResolution:A4Landscape'|dict_s }}
+ {{ 'UI:PrintResolution:LetterPortrait'|dict_s }}
+ {{ 'UI:PrintResolution:LetterLandscape'|dict_s }}
+
-
- {{ 'UI:PrintResolution:FullSize'|dict_s }}
- {{ 'UI:PrintResolution:A4Portrait'|dict_s }}
- {{ 'UI:PrintResolution:A4Landscape'|dict_s }}
- {{ 'UI:PrintResolution:LetterPortrait'|dict_s }}
- {{ 'UI:PrintResolution:LetterLandscape'|dict_s }}
-
-
-
-
-{% endapply %}
\ No newline at end of file
+
\ No newline at end of file
diff --git a/templates/application/printable/block-print-header/layout.live.js.twig b/templates/application/printable/block-print-header/layout.live.js.twig
index e35795e04..6a6ac7414 100644
--- a/templates/application/printable/block-print-header/layout.live.js.twig
+++ b/templates/application/printable/block-print-header/layout.live.js.twig
@@ -1,7 +1,3 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
-
-var oHiddeableChapters = {};
-
-{% endapply %}
\ No newline at end of file
+var oHiddeableChapters = {};
\ No newline at end of file
diff --git a/templates/application/printable/block-print-header/layout.ready.js.twig b/templates/application/printable/block-print-header/layout.ready.js.twig
index acded995e..a8d3afda6 100644
--- a/templates/application/printable/block-print-header/layout.ready.js.twig
+++ b/templates/application/printable/block-print-header/layout.ready.js.twig
@@ -1,7 +1,5 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
-
var sHiddeableChapters = '
';
for (sId in oHiddeableChapters)
{
@@ -27,6 +25,4 @@ $('fieldset').each(function() {
$('legend').css('cursor', 'pointer').on('click', function(){
$(this).parent('fieldset').toggleClass('not-printable strikethrough');
-});
-
-{% endapply %}
\ No newline at end of file
+});
\ No newline at end of file
diff --git a/templates/base/components/button-group/layout.html.twig b/templates/base/components/button-group/layout.html.twig
index 73922197b..7abaf3d15 100644
--- a/templates/base/components/button-group/layout.html.twig
+++ b/templates/base/components/button-group/layout.html.twig
@@ -1,18 +1,17 @@
-{% apply spaceless %}
-
{% for oButton in oUIBlock.GetButtons() %}
- {{ render_block(oButton) }}
+ {{- render_block(oButton) -}}
{% endfor %}
- {% for oExtraBlock in oUIBlock.GetExtraBlocks() %}
- {{ render_block(oExtraBlock) }}
- {% endfor %}
-{% endapply %}
\ No newline at end of file
+{% for oExtraBlock in oUIBlock.GetExtraBlocks() %}
+ {{- render_block(oExtraBlock) -}}
+{% endfor %}
diff --git a/templates/base/components/dashlet/dashlet-badge.html.twig b/templates/base/components/dashlet/dashlet-badge.html.twig
index 49c9b312c..7a4cd81b1 100644
--- a/templates/base/components/dashlet/dashlet-badge.html.twig
+++ b/templates/base/components/dashlet/dashlet-badge.html.twig
@@ -1,33 +1,31 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
- '|escape }}{{ oUIBlock.GetClassLabel() }}{{ '
'|escape }}{{ oUIBlock.GetClassDescription() }}{{ '
'|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/ #}
-
-
-
+'|escape }}{{ oUIBlock.GetClassLabel() }}{{ '
'|escape }}{{ oUIBlock.GetClassDescription() }}{{ '
'|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/ #}
+
-{% endapply %}
\ No newline at end of file
+
+
\ 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 7d3e555fc..d49360c0d 100644
--- a/templates/base/components/dashlet/dashlet-header-static.html.twig
+++ b/templates/base/components/dashlet/dashlet-header-static.html.twig
@@ -1,17 +1,15 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
-
\ 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 a04251b2d..43037199d 100644
--- a/templates/base/components/spinner/layout.html.twig
+++ b/templates/base/components/spinner/layout.html.twig
@@ -1,14 +1,12 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
-
{% if oUIBlock.HasDescription() %}
{{ oUIBlock.GetDescription() }}
{% endif %}
-
-{% endapply %}
\ No newline at end of file
+
\ 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 36e1e63aa..eb725b455 100644
--- a/templates/base/components/template/layout.html.twig
+++ b/templates/base/components/template/layout.html.twig
@@ -1,9 +1,7 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
-
- {% for oSubBlock in oUIBlock.GetSubBlocks() %}
- {{ render_block(oSubBlock, {aPage: aPage}) }}
- {% endfor %}
-
-{% endapply %}
\ No newline at end of file
+
+ {% for oSubBlock in oUIBlock.GetSubBlocks() %}
+ {{- render_block(oSubBlock, {aPage: aPage}) -}}
+ {% endfor %}
+
\ 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 4d55ae3af..d7d15c749 100644
--- a/templates/base/components/text/layout.html.twig
+++ b/templates/base/components/text/layout.html.twig
@@ -1,5 +1,3 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
- {{ oUIBlock.GetText() }}
-{% endapply %}
\ No newline at end of file
+{{ oUIBlock.GetText() }}
\ 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 288662831..8ddff503f 100644
--- a/templates/base/components/title/layout.html.twig
+++ b/templates/base/components/title/layout.html.twig
@@ -1,18 +1,16 @@
-{% apply spaceless %}
-
- {% if oUIBlock.HasIcon() %}
-
- {% endif %}
-
- {% block iboPageTitleText %}
-
- {% for oSubBlock in oUIBlock.GetSubBlocks() %}
- {{ render_block(oSubBlock, {aPage: aPage}) }}
- {% endfor %}
-
- {% endblock %}
+
+ {% if oUIBlock.HasIcon() %}
+
+ {% endif %}
+
+ {% block iboPageTitleText %}
+
+ {% for oSubBlock in oUIBlock.GetSubBlocks() %}
+ {{- render_block(oSubBlock, {aPage: aPage}) -}}
+ {% endfor %}
+
+ {% endblock %}
-{% endapply %}
\ No newline at end of file
+
\ 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 18ad86924..e062b363f 100644
--- a/templates/base/components/toolbar/layout.html.twig
+++ b/templates/base/components/toolbar/layout.html.twig
@@ -1,14 +1,10 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
{# Toolbar #}
-{% apply spaceless %}
-
-
- {% for oSubBlock in oUIBlock.GetSubBlocks() %}
- {{ render_block(oSubBlock, {aPage: aPage}) }}
- {% endfor %}
-
-{% endapply %}
\ No newline at end of file
+
+ {% for oSubBlock in oUIBlock.GetSubBlocks() %}
+ {{- render_block(oSubBlock, {aPage: aPage}) -}}
+ {% endfor %}
+
\ 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 02598e34b..22ab602c2 100644
--- a/templates/base/components/toolbar/separator/vertical-separator/layout.html.twig
+++ b/templates/base/components/toolbar/separator/vertical-separator/layout.html.twig
@@ -1,9 +1,8 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
-
-
-{% endapply %}
\ No newline at end of file
+
+
+
\ 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 4d1141bc6..75e32ab08 100644
--- a/templates/base/components/toolbar/toolbar-spacer/layout.html.twig
+++ b/templates/base/components/toolbar/toolbar-spacer/layout.html.twig
@@ -1,6 +1,4 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
-
-
-{% endapply %}
\ No newline at end of file
+
+
\ 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 a302cabca..5b521cdae 100644
--- a/templates/base/layouts/activity-panel/activity-entry/layout.html.twig
+++ b/templates/base/layouts/activity-panel/activity-entry/layout.html.twig
@@ -32,7 +32,6 @@
- {% apply spaceless %}
{% block iboActivityEntrySubInformation %}
{% if oUIBlock.GetOrigin() is not null and oUIBlock.GetOrigin != constant('Combodo\\iTop\\Core\\CMDBChange\\CMDBChangeOrigin::INTERACTIVE') %}
@@ -48,7 +47,6 @@
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 d37355314..9bda2be44 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,4 +1,3 @@
-{% apply spaceless %}
-{% endapply %}
\ No newline at end of file
+
\ 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 6fd18f76d..b0d25f147 100644
--- a/templates/base/layouts/content-block/layout.html.twig
+++ b/templates/base/layouts/content-block/layout.html.twig
@@ -1,23 +1,18 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
{# Content Block #}
-{% 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
+{# 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
diff --git a/templates/base/layouts/dashboard/column/layout.html.twig b/templates/base/layouts/dashboard/column/layout.html.twig
index 376d9ebdc..f2556faee 100644
--- a/templates/base/layouts/dashboard/column/layout.html.twig
+++ b/templates/base/layouts/dashboard/column/layout.html.twig
@@ -1,22 +1,20 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
{# Dashboard Column #}
-{% apply spaceless %}
- {% if oUIBlock.IsEditMode() %}
- {% if oUIBlock.IsLastRow() %}
- {% set sCellClass = "layout_cell edit_mode layout_extension" %}
- {% else %}
- {% set sCellClass = "layout_cell edit_mode" %}
- {% endif %}
+{% if oUIBlock.IsEditMode() %}
+ {% if oUIBlock.IsLastRow() %}
+ {% set sCellClass = "layout_cell edit_mode layout_extension" %}
{% else %}
- {% set sCellClass = "dashboard" %}
+ {% set sCellClass = "layout_cell edit_mode" %}
{% endif %}
-
- {% for oSubBlock in oUIBlock.GetSubBlocks() %}
- {{ render_block(oSubBlock, {aPage: aPage}) }}
- {% endfor %}
-
-{% endapply %}
\ No newline at end of file
+{% else %}
+ {% set sCellClass = "dashboard" %}
+{% endif %}
+
+ {% for oSubBlock in oUIBlock.GetSubBlocks() %}
+ {{- render_block(oSubBlock, {aPage: aPage}) -}}
+ {% endfor %}
+
\ 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 b61727439..b99471791 100644
--- a/templates/base/layouts/dashboard/layout.html.twig
+++ b/templates/base/layouts/dashboard/layout.html.twig
@@ -1,16 +1,14 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
{# Dashboard Layout #}
-{% apply spaceless %}
- {% if oUIBlock.HasTitle() or oUIBlock.HasToolbar() %}
-
-
{{ oUIBlock.GetTitle() }}
- {{ render_block(oUIBlock.GetToolbar(), {aPage: aPage}) }}
-
- {% endif %}
-
- {% for oSubBlock in oUIBlock.GetDashboardRows() %}
- {{ render_block(oSubBlock, {aPage: aPage}) }}
- {% endfor %}
+{% if oUIBlock.HasTitle() or oUIBlock.HasToolbar() %}
+
+
{{ oUIBlock.GetTitle() }}
+ {{ render_block(oUIBlock.GetToolbar(), {aPage: aPage}) }}
-{% endapply %}
\ No newline at end of file
+{% endif %}
+
+ {% for oSubBlock in oUIBlock.GetDashboardRows() %}
+ {{ render_block(oSubBlock, {aPage: aPage}) }}
+ {% endfor %}
+
\ 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 7340fa1de..56be4575c 100644
--- a/templates/base/layouts/dashboard/row/layout.html.twig
+++ b/templates/base/layouts/dashboard/row/layout.html.twig
@@ -1,10 +1,8 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
{# Dashboard Row #}
-{% apply spaceless %}
-
- {% for oSubBlock in oUIBlock.GetSubBlocks() %}
- {{ render_block(oSubBlock, {aPage: aPage}) }}
- {% endfor %}
-
-{% endapply %}
\ No newline at end of file
+
+ {% for oSubBlock in oUIBlock.GetSubBlocks() %}
+ {{- render_block(oSubBlock, {aPage: aPage}) -}}
+ {% endfor %}
+
\ 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 717659f6b..c1eca9964 100644
--- a/templates/datamodel/ActionEmail/email-notification-preview.html.twig
+++ b/templates/datamodel/ActionEmail/email-notification-preview.html.twig
@@ -1,4 +1,3 @@
-{% apply spaceless %}
{% UIAlert ForWarning{sTitle:'', sContent: '', sId: null} %}
@@ -9,5 +8,4 @@
{% EndUIAlert %}
-
-{% endapply %}
\ No newline at end of file
+
\ 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 17ab28b70..25f4c18be 100644
--- a/templates/pages/backoffice/ajaxpage/layout.html.twig
+++ b/templates/pages/backoffice/ajaxpage/layout.html.twig
@@ -1,196 +1,73 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
- {% 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 %}
+{% 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 %}
+
- {% endif %}
-
- {% set sPromiseId = aPage.sPromiseId %}
- {% if aPage.aJsFiles is not empty %}
- {% block iboPageJsFiles %}
-
- {% endblock %}
- {% else %}
- {% if bHasOnInitOrOnDomReadyScripts %}
- {% block iboPageJsInlineOnDomReady %}
-
- {% endblock %}
- {% 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 %}
-
- {% endif %}
+
+ let iCurrentIdx = 0;
+ let iFilesToLoadCount = aJsFilesToLoad.length;
+ if (iFilesToLoadCount > 0)
+ {
+ let fLoadScript{{ sId }} = function () {
+ let sCurrentFileId = aJsFilesToLoad[iCurrentIdx]["id"];
+ let sCurrentFileUrl = aJsFilesToLoad[iCurrentIdx]["url"];
+
+ /** @type {Promise} oPromise Promise to use once file is loaded */
+ let oPromise = null;
+ // If file is handled by another request, retrieve the existing promise
+ if ($.inArray(sCurrentFileId, aJsFilesToLoadByOtherRequests) !== -1) {
+ oPromise = aLoadedJsFilesRegister.get(sCurrentFileId)
+ }
+ // Otherwise create its own promise to load it
+ else {
+ oPromise = $.when(
+ $.ajax({
+ url: sCurrentFileUrl,
+ dataType: 'script',
+ cache: true
+ }),
+ aLoadedJsFilesResolveCallbacks.get(sCurrentFileId)()
+ );
+ }
+
+ // Only once file is loaded (by the request or another), proceed to next step
+ oPromise.then(function () {
+ iCurrentIdx++;
+ if (iCurrentIdx !== iFilesToLoadCount)
+ {
+ fLoadScript{{ sId }}();
+ }
+ else
+ {
+ fOnJsFilesLoaded{{ sId }}(fAllJsFilesResolve);
+ }
+ });
+ };
+ fLoadScript{{ sId }}();
+ }
+ else
+ {
+ fOnJsFilesLoaded{{ sId }}(fAllJsFilesResolve);
+ }
+ });
+
{% endblock %}
-
- {{ aPage.sCapturedOutput|raw }}
-
-{% endapply %}
\ No newline at end of file
+{% else %}
+ {% if bHasOnInitOrOnDomReadyScripts %}
+ {% block iboPageJsInlineOnDomReady %}
+
+ {% endblock %}
+ {% 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 %}
+
+ {% endif %}
+{% endblock %}
+{{- aPage.sCapturedOutput|raw -}}
\ 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 65531fdc2..37eaea827 100644
--- a/templates/pages/backoffice/clilikewebpage/layout.html.twig
+++ b/templates/pages/backoffice/clilikewebpage/layout.html.twig
@@ -1,5 +1,3 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
- {{ render_block(oLayout, {aPage: aPage}) }}
-{% endapply %}
\ No newline at end of file
+{{ render_block(oLayout, {aPage: aPage}) }}
\ 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 e1969b8aa..cded4991f 100644
--- a/templates/pages/backoffice/extension-blocks/banner.html.twig
+++ b/templates/pages/backoffice/extension-blocks/banner.html.twig
@@ -1,7 +1,5 @@
{# @copyright Copyright (C) 2010-2024 Combodo SAS #}
{# @license http://opensource.org/licenses/AGPL-3.0 #}
-{% apply spaceless %}
-
- {{ render_block(aLayouts.oBanner, {aPage: aPage}) }}
-
-{% endapply %}
\ No newline at end of file
+
+ {{- render_block(aLayouts.oBanner, {aPage: aPage}) -}}
+
\ No newline at end of file
diff --git a/templates/pages/backoffice/extension-blocks/footer.html.twig b/templates/pages/backoffice/extension-blocks/footer.html.twig
index 433b97917..b36def948 100644
--- a/templates/pages/backoffice/extension-blocks/footer.html.twig
+++ b/templates/pages/backoffice/extension-blocks/footer.html.twig
@@ -1,9 +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
+
\ No newline at end of file
diff --git a/templates/pages/backoffice/extension-blocks/header.html.twig b/templates/pages/backoffice/extension-blocks/header.html.twig
index f25dffedb..bc776eeb8 100644
--- a/templates/pages/backoffice/extension-blocks/header.html.twig
+++ b/templates/pages/backoffice/extension-blocks/header.html.twig
@@ -1,7 +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
+ {{- render_block(aLayouts.oHeader, {aPage: aPage}) -}}
+
\ No newline at end of file