diff --git a/assets/js/error_handler.js b/assets/js/error_handler.js index f4659269..2b2e35e8 100644 --- a/assets/js/error_handler.js +++ b/assets/js/error_handler.js @@ -28,7 +28,9 @@ class ErrorHandlerHelper { console.log('Error Handler registered'); const content = document.getElementById('content'); - content.addEventListener('turbo:before-fetch-response', (event) => this.handleError(event)); + //content.addEventListener('turbo:before-fetch-response', (event) => this.handleError(event)); + content.addEventListener('turbo:fetch-request-error', (event) => this.handleError(event)); + content.addEventListener('turbo:frame-missing', (event) => this.handleError(event)); $(document).ajaxError(this.handleJqueryErrror.bind(this)); } @@ -87,8 +89,10 @@ class ErrorHandlerHelper { } handleError(event) { - const fetchResponse = event.detail.fetchResponse; - const response = fetchResponse.response; + //Prevent default error handling + event.preventDefault(); + + const response = event.detail.response; //Ignore aborted requests. if (response.statusText === 'abort' || response.status == 0) { @@ -100,11 +104,11 @@ class ErrorHandlerHelper { return; } - if(fetchResponse.failed) { + if(!response.ok) { response.text().then(responseHTML => { - this._showAlert(response.statusText, response.status, fetchResponse.location.toString(), responseHTML); + this._showAlert(response.statusText, response.status, response.url, responseHTML); }).catch(err => { - this._showAlert(response.statusText, response.status, fetchResponse.location.toString(), '
' + err + '
'); + this._showAlert(response.statusText, response.status, response.url, '
' + err + '
'); }); } } diff --git a/templates/admin/base_admin.html.twig b/templates/admin/base_admin.html.twig index df510908..72a6ec60 100644 --- a/templates/admin/base_admin.html.twig +++ b/templates/admin/base_admin.html.twig @@ -179,7 +179,7 @@
{% trans %}export_all.label{% endtrans %} - {% include 'admin/_export_form.html.twig' with {'path' : path('attachment_type_export_all')} %} + {% include 'admin/_export_form.html.twig' with {'path' : path(route_base ~ '_export_all')} %}