From dc6a6f793c87bacfb3873b9c27e360e784f3a8f6 Mon Sep 17 00:00:00 2001 From: Fabien Meghazi Date: Mon, 10 Sep 2012 11:28:02 +0200 Subject: [PATCH] [FIX] Fix dashboard listview row click. Add support for kanban card click bzr revid: fme@openerp.com-20120910092802-k15c57p9371946ft --- addons/board/static/src/js/dashboard.js | 33 ++++++++++++++++++++----- 1 file changed, 27 insertions(+), 6 deletions(-) diff --git a/addons/board/static/src/js/dashboard.js b/addons/board/static/src/js/dashboard.js index 0333690aa57..8140ae4b91b 100644 --- a/addons/board/static/src/js/dashboard.js +++ b/addons/board/static/src/js/dashboard.js @@ -238,18 +238,39 @@ instance.web.form.DashBoard = instance.web.form.FormWidget.extend({ }); } if (am.inner_widget) { - am.inner_widget.on_mode_switch.add(function(mode) { + var new_form_action = function(id, editable) { var new_views = []; _.each(action_orig.views, function(view) { - new_views[view[1] === mode ? 'unshift' : 'push'](view); + new_views[view[1] === 'form' ? 'unshift' : 'push'](view); }); - if (!new_views.length || new_views[0][1] !== mode) { - new_views.unshift([false, mode]); + if (!new_views.length || new_views[0][1] !== 'form') { + new_views.unshift([false, 'form']); } action_orig.views = new_views; - action_orig.res_id = am.inner_widget.dataset.ids[am.inner_widget.dataset.index]; + action_orig.res_id = id; + action_orig.flags = { + form: { + "initial_mode": editable ? "edit" : "view", + } + }; self.do_action(action_orig); - }); + }; + var list = am.inner_widget.views.list; + if (list) { + list.deferred.then(function() { + $(list.controller.groups).off('row_link').on('row_link', function(e, id) { + new_form_action(id); + }); + }); + } + var kanban = am.inner_widget.views.kanban; + if (kanban) { + kanban.deferred.then(function() { + kanban.controller.open_record = function(id, editable) { + new_form_action(id, editable); + }; + }); + } } }, renderElement: function() {