diff options
| author | Xavier Morel <xmo@openerp.com> | 2011-12-06 12:31:41 +0100 |
|---|---|---|
| committer | Xavier Morel <xmo@openerp.com> | 2011-12-06 12:31:41 +0100 |
| commit | 41e8b3f92c74a09fbdb524ee7ecaa7c788dfd010 (patch) | |
| tree | 4b81b0ea9712bc6df8c1edf2a48f80354f35027a | |
| parent | 0eab577b40cb1d253915655b84923911101b72f6 (diff) | |
[FIX] correctly send context during graph's fields_get
lp bug: https://launchpad.net/bugs/898636 fixed
bzr revid: xmo@openerp.com-20111206113141-nbfxp0jx4lrgo95g
| -rw-r--r-- | addons/web/controllers/main.py | 11 | ||||
| -rw-r--r-- | addons/web/static/src/js/data.js | 4 | ||||
| -rw-r--r-- | addons/web_graph/static/src/js/graph.js | 2 |
3 files changed, 10 insertions, 7 deletions
diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py index f811f77b34c..d500ad0684e 100644 --- a/addons/web/controllers/main.py +++ b/addons/web/controllers/main.py @@ -778,12 +778,15 @@ class DataSet(openerpweb.Controller): return Model.unlink(ids, req.session.eval_context(req.context)) def call_common(self, req, model, method, args, domain_id=None, context_id=None): - domain = args[domain_id] if domain_id and len(args) - 1 >= domain_id else [] - context = args[context_id] if context_id and len(args) - 1 >= context_id else {} + has_domain = domain_id is not None and domain_id < len(args) + has_context = context_id is not None and context_id < len(args) + + domain = args[domain_id] if has_domain else [] + context = args[context_id] if has_context else {} c, d = eval_context_and_domain(req.session, context, domain) - if domain_id and len(args) - 1 >= domain_id: + if has_domain: args[domain_id] = d - if context_id and len(args) - 1 >= context_id: + if has_context: args[context_id] = c for i in xrange(len(args)): diff --git a/addons/web/static/src/js/data.js b/addons/web/static/src/js/data.js index d9bb8149ea8..58dcb2ce5af 100644 --- a/addons/web/static/src/js/data.js +++ b/addons/web/static/src/js/data.js @@ -425,8 +425,8 @@ openerp.web.DataSet = openerp.web.Widget.extend( /** @lends openerp.web.DataSet return this.rpc('/web/dataset/call', { model: this.model, method: method, - domain_id: domain_index || null, - context_id: context_index || null, + domain_id: domain_index == undefined ? null : domain_index, + context_id: context_index == undefined ? null : context_index, args: args || [] }, callback, error_callback); }, diff --git a/addons/web_graph/static/src/js/graph.js b/addons/web_graph/static/src/js/graph.js index f940cac8b0b..aa71dd9e25e 100644 --- a/addons/web_graph/static/src/js/graph.js +++ b/addons/web_graph/static/src/js/graph.js @@ -57,7 +57,7 @@ openerp.web_graph.GraphView = openerp.web.View.extend({ }); } return $.when( - this.dataset.call('fields_get', []), + this.dataset.call_and_eval('fields_get', [false, {}], null, 1), loaded) .then(function (fields_result, view_result) { self.fields = fields_result[0]; |
