summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js/view_editor.js
diff options
context:
space:
mode:
authorniv-openerp <nicolas.vanhoren@openerp.com>2012-06-06 14:56:44 +0200
committerniv-openerp <nicolas.vanhoren@openerp.com>2012-06-06 14:56:44 +0200
commitd56ca78343f9a4764b8c137985c8d63e8aa47e00 (patch)
treed2dd0df8ca307dad380257e3383f2d404196ca32 /addons/web/static/src/js/view_editor.js
parent0f04086d02f13907003ce76f24ef3260a4f147c6 (diff)
parent2800040c835d4c75cd123edd1d55bd8ddcf9ab73 (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.js16
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;