diff options
| author | niv-openerp <nicolas.vanhoren@openerp.com> | 2011-08-25 19:04:10 +0200 |
|---|---|---|
| committer | niv-openerp <nicolas.vanhoren@openerp.com> | 2011-08-25 19:04:10 +0200 |
| commit | fc766e16fe8a6da5de0f0a9b68a83d4696861ddb (patch) | |
| tree | 8a6db1c1cf9d0feaa8f90d1e19f2e11193a7cb58 /addons/base/static/src | |
| parent | 9225fe407499b4fb942f3ef0ec4b42f43537caf6 (diff) | |
[imp] refactoring to allow correct context handling in clean_action
bzr revid: nicolas.vanhoren@openerp.com-20110825170410-omj3wrugqmslck8w
Diffstat (limited to 'addons/base/static/src')
| -rw-r--r-- | addons/base/static/src/js/form.js | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/addons/base/static/src/js/form.js b/addons/base/static/src/js/form.js index 99da0062810..4138f6d50b5 100644 --- a/addons/base/static/src/js/form.js +++ b/addons/base/static/src/js/form.js @@ -1334,6 +1334,11 @@ openerp.base.form.FieldMany2One = openerp.base.form.Field.extend({ self.set_value(self.value[0]); }); }; + _.each(_.range(self.related_entries.length), function(i) { + bindings[self.cm_id + "_related_" + i] = function() { + self.open_related(self.related_entries[i]); + }; + }); var cmenu = self.$menu_btn.contextMenu(self.cm_id, {'leftClickToo': true, bindings: bindings, itemStyle: {"color": ""}, onContextMenu: function() { @@ -1544,6 +1549,22 @@ openerp.base.form.FieldMany2One = openerp.base.form.Field.extend({ if (this.value === null) { this.invalid = this.required; } + }, + open_related: function(related) { + var self = this; + if (!self.value) + return; + self.rpc("/base/action/load", { + action_id: related[2].id, + context: { + active_id: self.value[0], + active_ids: self.value[1], + active_model: self.field.relation + } + }, function(result) { + //TODO niv + debugger; + }); } }); |
