diff options
| author | Xavier Morel <xmo@openerp.com> | 2013-02-14 08:59:06 +0100 |
|---|---|---|
| committer | Xavier Morel <xmo@openerp.com> | 2013-02-14 08:59:06 +0100 |
| commit | ab816b74fb007dd19c28dcb00281a2555ae7f2ee (patch) | |
| tree | 5bacba6325a4f1f86d8e56bae65162492d019628 /addons/web/static/src | |
| parent | 9852c6ff1e212df4e944b61cc9d1ad586b5f08ef (diff) | |
[FIX] correctly handle invisible or empty groups in total filters count computation
bzr revid: xmo@openerp.com-20130214075906-kg83zi0pan61au1d
Diffstat (limited to 'addons/web/static/src')
| -rw-r--r-- | addons/web/static/src/js/search.js | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/addons/web/static/src/js/search.js b/addons/web/static/src/js/search.js index c57dec67229..bb846726b93 100644 --- a/addons/web/static/src/js/search.js +++ b/addons/web/static/src/js/search.js @@ -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", |
