From f90e630dabad6d2fac43cfb34324cb5705e73446 Mon Sep 17 00:00:00 2001 From: "Kunal Chavda (OpenERP)" Date: Thu, 10 Nov 2011 15:13:03 +0530 Subject: [PATCH 1/2] [FIX]Fixed code for consider view mode attrs as first priority. lp bug: https://launchpad.net/bugs/885996 fixed bzr revid: kch@tinyerp.com-20111110094303-s63381get48xrn2u --- addons/web_dashboard/static/src/js/dashboard.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/addons/web_dashboard/static/src/js/dashboard.js b/addons/web_dashboard/static/src/js/dashboard.js index e629a4a6ef5..5221df9ce19 100644 --- a/addons/web_dashboard/static/src/js/dashboard.js +++ b/addons/web_dashboard/static/src/js/dashboard.js @@ -221,6 +221,15 @@ openerp.web.form.DashBoard = openerp.web.form.Widget.extend({ var self = this; var action_orig = _.extend({}, result.result); var action = result.result; + var view_mode = this.actions_attrs[action.id]['view_mode']; + if(view_mode) { + action.views = _.map(view_mode.split(','), function(mode){ + mode = mode === 'tree' ? 'list': mode; + return _.find(action.views, function(view) { + return view[1] == mode; + }); + }); + } action.flags = { search_view : false, sidebar : false, From 36317df4b1e21995c83fab83c5b3af8758754649 Mon Sep 17 00:00:00 2001 From: "Kunal Chavda (OpenERP)" Date: Fri, 11 Nov 2011 18:00:08 +0530 Subject: [PATCH 2/2] [FIX]Fixed code for if the original views collection does not contain the view looked for it should not return undefined. bzr revid: kch@tinyerp.com-20111111123008-qk9nn6xo1svy1324 --- addons/web_dashboard/static/src/js/dashboard.js | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/addons/web_dashboard/static/src/js/dashboard.js b/addons/web_dashboard/static/src/js/dashboard.js index 5221df9ce19..fa18d5df8b8 100644 --- a/addons/web_dashboard/static/src/js/dashboard.js +++ b/addons/web_dashboard/static/src/js/dashboard.js @@ -222,12 +222,17 @@ openerp.web.form.DashBoard = openerp.web.form.Widget.extend({ var action_orig = _.extend({}, result.result); var action = result.result; var view_mode = this.actions_attrs[action.id]['view_mode']; - if(view_mode) { - action.views = _.map(view_mode.split(','), function(mode){ - mode = mode === 'tree' ? 'list': mode; - return _.find(action.views, function(view) { - return view[1] == mode; - }); + if(view_mode && view_mode != action.view_mode) { + var action_view_mode = action.view_mode.split(','); + action.views = _.map(view_mode.split(','), function(mode) { + if(_.indexOf(action_view_mode, mode) < 0) { + return [false, mode == 'tree' ? 'list': mode]; + } else { + mode = mode === 'tree' ? 'list': mode; + return _.find(action.views, function(view) { + return view[1] == mode; + }) + } }); } action.flags = {