From cdd20ff94cff6b466b6b6baaab34a2d60356db7a Mon Sep 17 00:00:00 2001 From: "Vidhin Mehta (OpenERP)" Date: Mon, 14 Nov 2011 14:11:23 +0530 Subject: [PATCH] [imp]Rendered new fields view. bzr revid: vme@tinyerp.com-20111114084123-el9szj2v0ukrcfqt --- addons/web/static/src/js/view_editor.js | 32 +++++++++++++++++-------- 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/addons/web/static/src/js/view_editor.js b/addons/web/static/src/js/view_editor.js index 1dfbc593461..82c7be4745d 100644 --- a/addons/web/static/src/js/view_editor.js +++ b/addons/web/static/src/js/view_editor.js @@ -498,24 +498,15 @@ openerp.web.ViewEditor = openerp.web.Widget.extend({ self.edit_xml_dialog.$element.find("tr[id='viewedit-"+id+"']").find('a').text(new_obj.name); child_list.splice(index, 1, new_obj); }else if(move_direct == "add_node"){ - $(arch1).add(update_values[0]); - var temp_xml = QWeb.load_xml(update_values[0]); - var object_xml = self.create_View_Node(temp_xml.childNodes[0]); switch (update_values[1]) { case "After": - object_xml.level = obj.level; $(arch1).after(update_values[0]); - child_list.splice(index + 1, 0, object_xml); break; case "Before": - object_xml.level = obj.level; $(arch1).before(update_values[0]); - child_list.splice(index - 1, 0, object_xml); break; case "Inside": - object_xml.level = obj.level + 1; $(arch1).append(update_values[0]); - obj.child_id.push(object_xml); break; } } @@ -526,6 +517,11 @@ openerp.web.ViewEditor = openerp.web.Widget.extend({ arch.arch = convert_to_utf; this.dataset.write(parseInt(view_id),{"arch":convert_to_utf}, function(r) { }); + if(move_direct == "add_node"){ + self.add_node_dialog.close(); + self.edit_xml_dialog.close(); + self.xml_element_id = 0; + self.get_arch();} } if (obj.level <= level) { _.each(list_obj_xml, function(child_node) { @@ -693,7 +689,23 @@ openerp.web.ViewEditor = openerp.web.Widget.extend({ table_selector.append(' '); self.add_node_dialog.$element.find("select[id=node_type] option[value=field]").attr("selected",1); self.add_node_dialog.$element.find('#new_field').click(function() { - //to do + var action = { + context: self.session.user_context, + res_model: "ir.model.fields", + views: [[false, 'form']], + type: 'ir.actions.act_window', + target: "new", + flags: { + sidebar: false, + views_switcher: false, + action_buttons: false, + search_view: false, + pager: false, + }, + }; + var action_manager = new openerp.web.ActionManager(self); + action_manager.do_action(action); + }); } });