diff options
| author | niv-openerp <nicolas.vanhoren@openerp.com> | 2012-06-06 14:56:44 +0200 |
|---|---|---|
| committer | niv-openerp <nicolas.vanhoren@openerp.com> | 2012-06-06 14:56:44 +0200 |
| commit | d56ca78343f9a4764b8c137985c8d63e8aa47e00 (patch) | |
| tree | d2dd0df8ca307dad380257e3383f2d404196ca32 /addons/web/static/src/js/view_editor.js | |
| parent | 0f04086d02f13907003ce76f24ef3260a4f147c6 (diff) | |
| parent | 2800040c835d4c75cd123edd1d55bd8ddcf9ab73 (diff) | |
[fix] problem in view manager
bzr revid: nicolas.vanhoren@openerp.com-20120606125644-6axkuv87dg24itkl
Diffstat (limited to 'addons/web/static/src/js/view_editor.js')
| -rw-r--r-- | addons/web/static/src/js/view_editor.js | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/addons/web/static/src/js/view_editor.js b/addons/web/static/src/js/view_editor.js index f169887cc54..dd7f4728340 100644 --- a/addons/web/static/src/js/view_editor.js +++ b/addons/web/static/src/js/view_editor.js @@ -630,11 +630,9 @@ instance.web.ViewEditor = instance.web.OldWidget.extend({ insert = _.intersection(_.flatten(temp_obj.att_list),_.uniq(check_list)); if (insert.length == _.uniq(check_list).length ) {return xml_child;} }); + xml_arch = QWeb.load_xml(arch.arch); } - arch_to_pass = _.filter($(arch.arch), function (child) { - return child.nodeType == 1; - }); - return self.do_save_xml(arch_to_pass[0], obj[0].child_id[0],obj[0].child_id, move_direct, update_values,arch); + return self.do_save_xml(xml_arch.documentElement, obj[0].child_id[0],obj[0].child_id, move_direct, update_values,arch); }, get_object_by_id: function(id, one_object, result) { var self = this; @@ -891,7 +889,7 @@ instance.web.ViewEditor = instance.web.OldWidget.extend({ var value = _.detect(arch_val[0]['att_list'],function(res) { return res instanceof Array? _.include(res, widget.name): false; }); - + value = value instanceof Array ? value[1] : value; self.edit_node_dialog.$element.find('table[id=rec_table]').append('<tr><td align="right">' + widget.string + ':</td>' + type_widget.render() + '</tr>'); type_widget.start(); @@ -983,14 +981,14 @@ instance.web.ViewEditor = instance.web.OldWidget.extend({ self.add_node_dialog.$element.find('#new_field').click(function() { model_data = new instance.web.DataSetSearch(self,'ir.model', null, null); model_data.read_slice([], {domain: [['model','=', self.model]]}).then(function(result) { - self.render_new_field(result[0].id); + self.render_new_field(result[0]); }); }); }, - render_new_field :function(id){ + render_new_field :function( result ) { var self = this; var action = { - context: {'default_model_id': id, 'manual': true}, + context: {'default_model_id': result.id, 'manual': true, 'module' : result.modules}, res_model: "ir.model.fields", views: [[false, 'form']], type: 'ir.actions.act_window', @@ -1007,7 +1005,7 @@ instance.web.ViewEditor = instance.web.OldWidget.extend({ }); controller.do_save.add_last(function(){ action_manager.destroy(); - var value =controller.fields.name.value; + var value =controller.fields.name.get('value'); self.add_node_dialog.$element.find('select[id=field_value]').append($("<option selected></option>").attr("value",value).text(value)); _.detect(self.add_widget,function(widget){ widget.name == "field_value"? widget.selection.push(value): false; |
