From 9bbf57f915784f97c74531bd8d3bc255319ed235 Mon Sep 17 00:00:00 2001 From: Romain Derie Date: Tue, 8 Oct 2019 09:47:26 +0000 Subject: [PATCH] [REM] web: remove unused controller /apps/ MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This controller never really worked in the last 3 versions. It was fixed in 11.3 with e9350993ca0 but broken with refactoring in 12.0 at a higher level with 19eacf7d23c9. It was even worse in 13.0 as it was leading to a traceback: `view_type` field got removed with 3cd7ed07a29c8 but this controller was still reading that field. closes odoo/odoo#38355 X-original-commit: a5c4e262449fef03d05d5250e4523832db5fbf00 Signed-off-by: Jérémy Kersten (jke) --- addons/web/controllers/main.py | 22 ----------------- .../js/chrome/action_manager_act_window.js | 21 ++++------------ .../tests/chrome/action_manager_tests.js | 24 ------------------- 3 files changed, 5 insertions(+), 62 deletions(-) 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) {