summaryrefslogtreecommitdiff
path: root/addons/web/static/src
diff options
context:
space:
mode:
authorXavier Morel <xmo@openerp.com>2013-02-14 08:59:06 +0100
committerXavier Morel <xmo@openerp.com>2013-02-14 08:59:06 +0100
commitab816b74fb007dd19c28dcb00281a2555ae7f2ee (patch)
tree5bacba6325a4f1f86d8e56bae65162492d019628 /addons/web/static/src
parent9852c6ff1e212df4e944b61cc9d1ad586b5f08ef (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.js12
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",