diff options
| author | Xavier Morel <xmo@openerp.com> | 2011-05-24 08:52:05 +0200 |
|---|---|---|
| committer | Xavier Morel <xmo@openerp.com> | 2011-05-24 08:52:05 +0200 |
| commit | 7321970cf97b4c6b27e0eac1300ea6cda966a6ae (patch) | |
| tree | 6764acc9240f3eb9324104ac442818be602aa9d5 /addons/base/static/src/js/data.js | |
| parent | 96c7c16b5fa765791083c79dd1dd455ae7ef39bc (diff) | |
[ADD] switch to adding special group and count columns, correctly indent inner groups in tree-like structure
bzr revid: xmo@openerp.com-20110524065205-rxulby7dn9gk7qzj
Diffstat (limited to 'addons/base/static/src/js/data.js')
| -rw-r--r-- | addons/base/static/src/js/data.js | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/addons/base/static/src/js/data.js b/addons/base/static/src/js/data.js index 443f6cd8b14..57ab2379e5c 100644 --- a/addons/base/static/src/js/data.js +++ b/addons/base/static/src/js/data.js @@ -22,15 +22,16 @@ openerp.base.DataGroup = openerp.base.Controller.extend( /** @lends openerp.bas * @param {Array} domain search domain for this DataGroup * @param {Object} context context of the DataGroup's searches * @param {Array} group_by sequence of fields by which to group + * @param {Number} [level=0] nesting level of the group */ - init: function(session, model, domain, context, group_by) { + init: function(session, model, domain, context, group_by, level) { if (group_by) { if (group_by.length) { return new openerp.base.ContainerDataGroup( - session, model, domain, context, group_by); + session, model, domain, context, group_by, level); } else { return new openerp.base.GrouplessDataGroup( - session, model, domain, context); + session, model, domain, context, level); } } @@ -38,7 +39,10 @@ openerp.base.DataGroup = openerp.base.Controller.extend( /** @lends openerp.bas this.model = model; this.context = context; this.domain = domain; - } + + this.level = level || 0; + }, + cls: 'DataGroup' }); openerp.base.ContainerDataGroup = openerp.base.DataGroup.extend( /** @lends openerp.base.ContainerDataGroup# */ { @@ -52,9 +56,10 @@ openerp.base.ContainerDataGroup = openerp.base.DataGroup.extend( * @param domain * @param context * @param group_by + * @param level */ - init: function (session, model, domain, context, group_by) { - this._super(session, model, domain, context); + init: function (session, model, domain, context, group_by, level) { + this._super(session, model, domain, context, null, level); this.group_by = group_by; }, @@ -159,7 +164,8 @@ openerp.base.ContainerDataGroup = openerp.base.DataGroup.extend( return _.extend( new openerp.base.DataGroup( self.session, self.model, group.__domain, - child_context, child_context.group_by), + child_context, child_context.group_by, + self.level + 1), group); })); }); @@ -176,9 +182,10 @@ openerp.base.GrouplessDataGroup = openerp.base.DataGroup.extend( * @param model * @param domain * @param context + * @param level */ - init: function (session, model, domain, context) { - this._super(session, model, domain, context); + init: function (session, model, domain, context, level) { + this._super(session, model, domain, context, null, level); }, list: function (ifGroups, ifRecords) { ifRecords(_.extend( @@ -400,7 +407,7 @@ openerp.base.DataSetMany2Many = openerp.base.DataSetStatic.extend({ unlink: function(ids) { // just do nothing - }, + } }); }; |
