From 2d6dc75a2cb5fa81189920d0f7fdc7b7f12132ab Mon Sep 17 00:00:00 2001 From: fja-odoo Date: Thu, 25 Jul 2019 08:20:59 +0000 Subject: [FIX] web, *: make crash_manager use services correctly * = website_forum, stock Fix for: https://github.com/odoo/odoo/pull/32132 crash_manager.js was using the services while bypassing ServiceProviderMixin That means all services are duplicated, each having their own state. To fix this issue, CrashManager now extends AbstractService. Also crash_manager is now registered in serviceRegistry instead of being instanciated on the fly. The crash_manager now being a Service raise one issue with the tests: The services are not run for the tests but some tests needs the crash_manager 'unhandledrejection' listener. For that matter the services are reenable in qunit. Also the crash_manager's 'unhandledrejection' listener has to have precedence over the qunit listener as it will handle rejections wich have no reason or are not Errors. Part of: https://github.com/odoo/odoo/pull/35209 --- addons/web/static/src/js/views/pivot/pivot_controller.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'addons/web/static/src/js/views/pivot/pivot_controller.js') diff --git a/addons/web/static/src/js/views/pivot/pivot_controller.js b/addons/web/static/src/js/views/pivot/pivot_controller.js index 046c2979063..b5257a987c7 100644 --- a/addons/web/static/src/js/views/pivot/pivot_controller.js +++ b/addons/web/static/src/js/views/pivot/pivot_controller.js @@ -14,7 +14,6 @@ odoo.define('web.PivotController', function (require) { var AbstractController = require('web.AbstractController'); var core = require('web.core'); -var crash_manager = require('web.crash_manager'); var framework = require('web.framework'); var session = require('web.session'); @@ -126,7 +125,7 @@ var PivotController = AbstractController.extend({ _downloadTable: function () { var table = this.model.exportData(); if(table.measure_row.length + 1 > 256) { - crash_manager.show_message(_t("For Excel compatibility, data cannot be exported if there are more than 256 columns.\n\nTip: try to flip axis, filter further or reduce the number of measures.")); + this.call('crash_manager', 'show_message', _t("For Excel compatibility, data cannot be exported if there are more than 256 columns.\n\nTip: try to flip axis, filter further or reduce the number of measures.")); framework.unblockUI(); return; } @@ -136,7 +135,7 @@ var PivotController = AbstractController.extend({ url: '/web/pivot/export_xls', data: {data: JSON.stringify(table)}, complete: framework.unblockUI, - error: crash_manager.rpc_error.bind(crash_manager) + error: () => this.call('crash_manager', 'rpc_error', ...arguments), }); }, /** -- cgit v1.2.3