diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index 41725cecdba..7d9f79dcbb9 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -1839,28 +1839,6 @@ class ExcelExport(ExportFormat, http.Controller): return xlsx_writer.value -class Apps(http.Controller): - @http.route('/apps/', auth='user') - def get_app_url(self, req, app): - try: - record = request.env.ref('base.open_module_tree') - action = record.read(['name', 'type', 'res_model', 'view_mode', 'view_type', 'context', 'views', 'domain'])[0] - action['target'] = 'current' - except ValueError: - action = False - try: - app_id = request.env.ref('base.module_%s' % app).id - except ValueError: - app_id = False - - if action and app_id: - action['res_id'] = app_id - action['view_mode'] = 'form' - action['views'] = [(False, u'form')] - - sakey = Session().save_session_action(action) - return werkzeug.utils.redirect('/web#sa={0}'.format(sakey)) - class ReportController(http.Controller): diff --git a/addons/web/static/src/js/chrome/action_manager_act_window.js b/addons/web/static/src/js/chrome/action_manager_act_window.js index 8034a8e54b8..5f3368038f2 100644 --- a/addons/web/static/src/js/chrome/action_manager_act_window.js +++ b/addons/web/static/src/js/chrome/action_manager_act_window.js @@ -58,11 +58,8 @@ ActionManager.include({ * @param {string} [state.view_type] */ loadState: function (state) { - var callersArguments = arguments; var _super = this._super.bind(this); - var self = this; var action; - var def; var options = { clear_breadcrumbs: true, pushState: false, @@ -117,20 +114,12 @@ ActionManager.include({ action = lastAction; options.viewType = state.view_type; } - } else if (state.sa) { - def = this._rpc({ - route: '/web/session/get_session_action', - params: {key: state.sa}, - }).then(function (sessionAction) { - action = sessionAction; - }); } - return Promise.all([def]).then(function () { - if (action) { - return self.doAction(action, options); - } - return _super.apply(self, callersArguments); - }); + if (action) { + return this.doAction(action, options); + } + return _super.apply(this, arguments); + }, //-------------------------------------------------------------------------- diff --git a/addons/web/static/tests/chrome/action_manager_tests.js b/addons/web/static/tests/chrome/action_manager_tests.js index b878e642b4f..e4e8458a9e7 100644 --- a/addons/web/static/tests/chrome/action_manager_tests.js +++ b/addons/web/static/tests/chrome/action_manager_tests.js @@ -1275,30 +1275,6 @@ QUnit.module('ActionManager', { actionManager.destroy(); }); - QUnit.test('state.sa should load action from session', async function (assert) { - assert.expect(1); - - var actionManager = await createActionManager({ - actions: this.actions, - archs: this.archs, - data: this.data, - mockRPC: function (route, args) { - if (route === '/web/session/get_session_action') { - return Promise.resolve(1); - } - return this._super.apply(this, arguments); - }, - }); - await actionManager.loadState({ - sa: 1, - }); - - assert.strictEqual(actionManager.$('.o_kanban_view').length, 1, - "should have rendered a kanban view"); - - actionManager.destroy(); - }); - QUnit.module('Concurrency management'); QUnit.test('drop previous actions if possible', async function (assert) {