N°3786 - Fix lock removal when leaving an object details page in edition

The main problem was WebPage::$a_scripts are now printed after the DOM when the mechanism actually prints some JS to redirect to another page immediately.
As there are a LOT of calls to WebPage::add_script(), we kept it to ensure the compatibility; and we add a new WebPage::add_early_script() for JS snippets that explicitly need to be execute before the DOM interpretation.
This commit is contained in:
Molkobain
2021-07-20 09:35:54 +02:00
parent d0813f6607
commit 957cb87b8d
6 changed files with 72 additions and 8 deletions

View File

@@ -7,6 +7,15 @@
{{ 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) #}
<script type="text/javascript">
{{ sJsInline|raw }}
</script>
{% 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) #}

View File

@@ -35,6 +35,15 @@
</style>
{% endfor %}
{% endblock %}
{% 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) #}
<script type="text/javascript">
{{ sJsInline|raw }}
</script>
{% endfor %}
{% endblock %}
</head>
<body data-gui-type="backoffice">
{% block iboPageBodyHtml %}