From d8a2f16c434d1ebaf76d17187d1ca541b4b4b217 Mon Sep 17 00:00:00 2001 From: "Kunal Chavda (OpenERP)" Date: Tue, 8 Nov 2011 12:14:01 +0530 Subject: [PATCH] [FIX]Fixed code for finding tag name from selecting tr in edit node. bzr revid: kch@tinyerp.com-20111108064401-lfjvhm1ejbga2ch3 --- addons/web/static/src/js/view_editor.js | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/addons/web/static/src/js/view_editor.js b/addons/web/static/src/js/view_editor.js index 382a9342d64..881dc5cfce9 100644 --- a/addons/web/static/src/js/view_editor.js +++ b/addons/web/static/src/js/view_editor.js @@ -382,18 +382,12 @@ openerp.web.ViewEditor = openerp.web.Widget.extend({ case "side-remove": break; case "side-edit": - var tag, fld_name; var tr = $(this).closest("tr[id^='viewedit-']").find('a').text(); - var tag_fld = tr.split(" "); - if (tag_fld.length > 3){ - tag = tag_fld[1].replace(/[^a-zA-Z 0-9]+/g,''); - fld_name = tag_fld[2].split("=")[1].replace(/[^a-zA-Z _ 0-9]+/g,''); - }else{ - tag = tag_fld[1].replace(/[^a-zA-Z 0-9]+/g,''); - fld_name= tag; - } + var tag = _.detect(_.keys(_PROPERTIES),function(res){ + return _.includes(tr, res); + }); var properties = _PROPERTIES[tag]; - self.on_edit_node(properties, fld_name, tr_id, one_object, view_id, view_xml_id, level); + self.on_edit_node(properties, tr_id, one_object, view_id, view_xml_id, level); break; case "side-up": while (1) { @@ -579,7 +573,7 @@ openerp.web.ViewEditor = openerp.web.Widget.extend({ tr.show(); }); }, - on_edit_node:function(properties, fld_name, tr_id, obj, view_id, view_xml_id, level){ + on_edit_node:function(properties, tr_id, obj, view_id, view_xml_id, level){ var self = this; this.edit_node_dialog = new openerp.web.Dialog(this,{ modal: true, @@ -606,8 +600,8 @@ openerp.web.ViewEditor = openerp.web.Widget.extend({ this.edit_node_dialog.start().open(); var widget = ['readonly','required','nolabel','completion','widget','groups','position','icon','align','special','type','target']; var arch_val = self.get_view_object(tr_id,one_object,[]); - self.edit_node_dialog.$element.append('
'); - self.edit_widget = []; + this.edit_node_dialog.$element.append('
'); + this.edit_widget = []; _.each(properties,function(record){ var id = record, type_widget;