From abf83d268559516d8c6de24567731390f496a327 Mon Sep 17 00:00:00 2001 From: niv-openerp Date: Thu, 23 Jun 2011 14:40:16 +0200 Subject: [PATCH] [imp] made m2o compatible with set_value(int) bzr revid: nicolas.vanhoren@openerp.com-20110623124016-5vhg59oodplvj5ig --- addons/base/static/src/js/form.js | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/addons/base/static/src/js/form.js b/addons/base/static/src/js/form.js index a2ca5b42b20..62ffb997783 100644 --- a/addons/base/static/src/js/form.js +++ b/addons/base/static/src/js/form.js @@ -1266,9 +1266,21 @@ openerp.base.form.FieldMany2One = openerp.base.form.Field.extend({ set_value_from_ui: function() {}, set_value: function(value) { value = value || null; - this._super(value); - this.original_value = value; - this._change_int_ext_value(value); + var self = this; + var _super = this._super; + var real_set_value = function(rval) { + _super.apply(self, rval); + self.original_value = rval; + self._change_int_ext_value(rval); + }; + if(typeof(value) === "number") { + var dataset = new openerp.base.DataSetStatic(this.session, this.field.relation, []); + dataset.call("name_get", value, function(data) { + real_set_value(data.result[0]); + }); + } else { + setTimeout(function() {real_set_value(value);}, 0); + } }, get_value: function() { if (this.value === undefined)