summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/view_editor.js
diff options
context:
space:
mode:
authorVidhin Mehta (OpenERP) <vme@tinyerp.com>2011-11-17 12:25:25 +0530
committerVidhin Mehta (OpenERP) <vme@tinyerp.com>2011-11-17 12:25:25 +0530
commitd272f9d03b03049da42378fce434c4713f613eb6 (patch)
tree80a526361abbb38c4c1ec364607f2819cced5e11 /addons/web/static/src/js/view_editor.js
parenta03506d84a45429dcfade2e33625dcadd0a554ad (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.js18
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({