diff options
| author | Vidhin Mehta (OpenERP) <vme@tinyerp.com> | 2011-11-17 12:25:25 +0530 |
|---|---|---|
| committer | Vidhin Mehta (OpenERP) <vme@tinyerp.com> | 2011-11-17 12:25:25 +0530 |
| commit | d272f9d03b03049da42378fce434c4713f613eb6 (patch) | |
| tree | 80a526361abbb38c4c1ec364607f2819cced5e11 /addons/web/static/src/js/view_editor.js | |
| parent | a03506d84a45429dcfade2e33625dcadd0a554ad (diff) | |
[IMP] implement functionlity of new field add.
bzr revid: vme@tinyerp.com-20111117065525-60ooggze1xh38v63
Diffstat (limited to 'addons/web/static/src/js/view_editor.js')
| -rw-r--r-- | addons/web/static/src/js/view_editor.js | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/addons/web/static/src/js/view_editor.js b/addons/web/static/src/js/view_editor.js index 77d61a2d228..8ebd617e0c2 100644 --- a/addons/web/static/src/js/view_editor.js +++ b/addons/web/static/src/js/view_editor.js @@ -847,6 +847,7 @@ openerp.web.ViewEditor = openerp.web.Widget.extend({ }); }, render_new_field :function(id){ + var self = this; var action = { context: {'default_model_id':id, 'manual':true}, res_model: "ir.model.fields", @@ -858,14 +859,21 @@ openerp.web.ViewEditor = openerp.web.Widget.extend({ } } var action_manager = new openerp.web.ActionManager(self); - action_manager.do_action(action); $.when(action_manager.do_action(action)).then(function() { - var add_controller = action_manager.dialog_viewmanager.views['form'].controller; - add_controller.do_set_readonly.add_last(function(){ - var aa = controller; + var controller = action_manager.dialog_viewmanager.views['form'].controller; + controller.do_set_readonly.add_last(function(){ + action_manager.stop(); + new_fields_name = new openerp.web.DataSetSearch(self,'ir.model.fields', null, null); + new_fields_name.read_ids([controller.datarecord.id], ['name'], function(result) { + self.add_node_dialog.$element. + find('select[id=field_value]'). append($("<option></option>"). + attr("value",result[0].name).text(result[0].name)); + _.detect(self.add_widget,function(widget){ + (widget.name == "field_value")?widget.selection.push(result[0].name):false; + }); + }); }); }); - } }); openerp.web.ViewEditor.Field = openerp.web.Class.extend({ |
