[IMP] don't use a parameter object for DataGroup, provide each parameter individually

bzr revid: xmo@openerp.com-20110510111204-8ypp5zdujd0azncf
This commit is contained in:
Xavier Morel 2011-05-10 13:12:04 +02:00
parent 45f47ae65c
commit 1e6e428d7e
2 changed files with 13 additions and 12 deletions

View File

@ -9,15 +9,17 @@ openerp.base.DataGroup = openerp.base.Controller.extend( /** @lends openerp.bas
* @constructs
* @extends openerp.base.Controller
*
* @param {Array} group_by sequence of fields by which to group
* @param {openerp.base.Session} session Current OpenERP session
* @param {openerp.base.DataSet} dataset root dataset, holder of base view state
* @param {String} model name of the model managed by this DataGroup
* @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
*/
init: function(session, group_by, dataset) {
init: function(session, model, domain, context, group_by) {
this._super(session, null);
this.model = dataset.model;
this.context = dataset.context;
this.domain = dataset.domain;
this.model = model;
this.context = context;
this.domain = domain;
this.group_by = group_by;
@ -82,11 +84,8 @@ openerp.base.DataGroup = openerp.base.Controller.extend( /** @lends openerp.bas
var child_context = _.extend({}, this.context, group.__context);
if (group.__context.group_by.length) {
var datagroup = new openerp.base.DataGroup(
this.session, group.__context.group_by, {
model: this.model,
context: child_context,
domain: group.__domain
});
this.session, this.model, group.__domain, child_context,
group.__context.group_by);
ifDataGroup.call(datagroup, datagroup);
} else {
var dataset = new openerp.base.DataSetSearch(this.session, this.model);

View File

@ -296,7 +296,9 @@ openerp.base.ListView = openerp.base.Controller.extend(
self.dataset.domain = results.domain;
if (results.group_by.length) {
self.groups.datagroup = new openerp.base.DataGroup(
self.session, results.group_by, self.dataset);
self.session, self.dataset.model,
results.domain, results.context,
results.group_by);
self.$element.html(self.groups.render());
return;
}