[FIX]Fixed code for finding tag name from selecting tr in edit node.
authorKunal Chavda (OpenERP) <kch@tinyerp.com>
Tue, 8 Nov 2011 06:44:01 +0000 (12:14 +0530)
committerKunal Chavda (OpenERP) <kch@tinyerp.com>
Tue, 8 Nov 2011 06:44:01 +0000 (12:14 +0530)
bzr revid: kch@tinyerp.com-20111108064401-lfjvhm1ejbga2ch3

addons/web/static/src/js/view_editor.js

index 382a934..881dc5c 100644 (file)
@@ -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('<table id="rec_table" class="oe_forms"></table>');
-        self.edit_widget = [];
+        this.edit_node_dialog.$element.append('<table id="rec_table" class="oe_forms"></table>');
+        this.edit_widget = [];
         _.each(properties,function(record){
             var id = record,
             type_widget;