[FIX] correctly handle invisible or empty groups in total filters count computation

bzr revid: xmo@openerp.com-20130214075906-kg83zi0pan61au1d
This commit is contained in:
Xavier Morel 2013-02-14 08:59:06 +01:00
parent 9852c6ff1e
commit ab816b74fb
1 changed files with 7 additions and 5 deletions

View File

@ -1740,17 +1740,19 @@ instance.web.search.Filters = instance.web.search.Input.extend({
var running_count = 0;
// get total filters count
var is_group = function (i) { return i instanceof instance.web.search.FilterGroup; };
var filters_count = _(this.view.controls).chain()
var visible_filters = _(this.view.controls).chain().reject(function (group) {
return _(_(group.children).filter(is_group)).isEmpty()
|| group.modifiers.invisible;
});
var filters_count = visible_filters
.pluck('children')
.flatten()
.filter(is_group)
.map(function (i) { return i.filters.length; })
.sum()
.value();
var col1 = [], col2 = _(this.view.controls).chain()
.reject(function (group) {
return _(group.children).isEmpty() || group.modifiers.invisible;
}).map(function (group) {
var col1 = [], col2 = visible_filters.map(function (group) {
var filters = _(group.children).filter(is_group);
return {
name: _.str.sprintf("<span class='oe_i'>%s</span> %s",