summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js
diff options
context:
space:
mode:
authorbth-openerp <bth@tinyerp.com>2013-07-05 17:40:36 +0530
committerbth-openerp <bth@tinyerp.com>2013-07-05 17:40:36 +0530
commit19ae69201c1feff1ff005b765b76055d60d5aa35 (patch)
treed52e3c7b26221d09181f30f31c3200ef939a0fae /addons/web/static/src/js
parent7e4776f2f2edae4a59ebeda47deb076dff8fdb6d (diff)
[IMP]Add parent-id attribute to get childrens of that parentid and show selected parent's childrens rather than else.
lp bug: https://launchpad.net/bugs/1183156 fixed bzr revid: bth@tinyerp.com-20130705121036-0pn454ts3z9wkwxr
Diffstat (limited to 'addons/web/static/src/js')
-rw-r--r--addons/web/static/src/js/view_tree.js22
1 files changed, 11 insertions, 11 deletions
diff --git a/addons/web/static/src/js/view_tree.js b/addons/web/static/src/js/view_tree.js
index 2f9efad9171..a9ec2bb6001 100644
--- a/addons/web/static/src/js/view_tree.js
+++ b/addons/web/static/src/js/view_tree.js
@@ -163,12 +163,13 @@ instance.web.TreeView = instance.web.View.extend(/** @lends instance.web.TreeVie
var is_loaded = 0,
$this = $(this),
record_id = $this.data('id'),
+ parent_id = $this.data('parent-id'),
record = self.records[record_id],
children_ids = record[self.children_field];
_(children_ids).each(function(childid) {
- if (self.$el.find('#treerow_' + childid).length) {
- if (self.$el.find('#treerow_' + childid).is(':hidden')) {
+ if (self.$el.find('[id=treerow_' + childid + '][data-parent-id='+ record_id +']').length ) {
+ if (self.$el.find('[id=treerow_' + childid + '][data-parent-id='+ record_id +']').is(':hidden')) {
is_loaded = -1;
} else {
is_loaded++;
@@ -180,7 +181,7 @@ instance.web.TreeView = instance.web.View.extend(/** @lends instance.web.TreeVie
self.getdata(record_id, children_ids);
}
} else {
- self.showcontent(record_id, is_loaded < 0);
+ self.showcontent($this, record_id, is_loaded < 0);
}
});
},
@@ -201,9 +202,9 @@ instance.web.TreeView = instance.web.View.extend(/** @lends instance.web.TreeVie
'fields': self.fields,
'level': $curr_node.data('level') || 0,
'render': instance.web.format_value,
- 'color_for': self.color_for
+ 'color_for': self.color_for,
+ 'parent_id': id
});
-
if ($curr_node.length) {
$curr_node.addClass('oe_open');
$curr_node.after(children_rows);
@@ -243,14 +244,13 @@ instance.web.TreeView = instance.web.View.extend(/** @lends instance.web.TreeVie
},
// show & hide the contents
- showcontent: function (record_id, show) {
- this.$el.find('#treerow_' + record_id)
- .toggleClass('oe_open', show);
-
+ showcontent: function (curnode,record_id, show) {
+ curnode.parent('tr').toggleClass('oe_open', show);
_(this.records[record_id][this.children_field]).each(function (child_id) {
- var $child_row = this.$el.find('#treerow_' + child_id);
+ var $child_row = this.$el.find('[id=treerow_' + child_id + '][data-parent-id='+ curnode.data('id') +']');
if ($child_row.hasClass('oe_open')) {
- this.showcontent(child_id, false);
+ $child_row.toggleClass('oe_open',show);
+ this.showcontent($child_row, child_id, false);
}
$child_row.toggle(show);
}, this);