Merge lp:~alexaubin/unifield-web/US-2937 into lp:unifield-web

Proposed by jftempo
Status: Merged
Merged at revision: 4872
Proposed branch: lp:~alexaubin/unifield-web/US-2937
Merge into: lp:unifield-web
Diff against target: 56 lines (+14/-7)
1 file modified
addons/openerp/static/javascript/form_state.js (+14/-7)
To merge this branch: bzr merge lp:~alexaubin/unifield-web/US-2937
Reviewer Review Type Date Requested Status
UniField Dev Team Pending
Review via email: mp+331337@code.launchpad.net
To post a comment you must log in.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'addons/openerp/static/javascript/form_state.js'
2--- addons/openerp/static/javascript/form_state.js 2017-01-02 14:59:00 +0000
3+++ addons/openerp/static/javascript/form_state.js 2017-09-26 07:32:45 +0000
4@@ -190,11 +190,19 @@
5 }
6
7 function list_hookAttrChange(list_name) {
8- jQuery('table[id='+list_name+'_grid] [attrs]').each(function () {
9- var $this = jQuery(this);
10+
11+ // check if an editor exists
12+ var editor_exists = $(".editors").length;
13+
14+ // Loop on list elements which have an 'attrs' attribute
15+ var listgrids = jQuery('table[id='+list_name+'_grid] [attrs]');
16+ for (var i = 0 ; i < listgrids.length ; i++)
17+ {
18+ var elem = listgrids[i];
19+ var $this = jQuery(elem);
20 var attrs = $this.attr('attrs') || '{}';
21 var widget = $this.attr('widget') || '';
22- var container = this;
23+ var container = elem;
24 var prefix = widget.slice(0, widget.lastIndexOf('/')+1) || '';
25
26 // Convert Python statement into it's equivalent in JavaScript.
27@@ -207,11 +215,9 @@
28 try {
29 attrs = eval('(' + attrs + ')');
30 } catch(e){
31- return;
32+ continue;
33 }
34
35- // check if an editor exists
36- var editor_exists = $(".editors").length;
37 var cache_values = {};
38
39 var row_is_editable = editor_exists && $this.parents('tr.grid-row').is('.editors');
40@@ -225,6 +231,7 @@
41 return form_onAttrChange(container, widget, attr, attrs[attr], $this, cache_values);
42 }
43 forEach(attrs[attr], function(n) {
44+
45 if (typeof(n) == "number") { // {'invisible': [1]}
46 return form_onAttrChange(container, widget, attr, n, $this, cache_values);
47 }
48@@ -237,7 +244,7 @@
49 return form_onAttrChange(container, widget, attr, attrs[attr], $this, cache_values);
50 });
51 }
52- });
53+ };
54 }
55
56 function form_onAttrChange(container, widgetName, attr, expr, elem, cache_values) {

Subscribers

People subscribed via source and target branches