From bdeae00a6e35d4afc7ba8509bb5771b5ed9acda6 Mon Sep 17 00:00:00 2001 From: Faris Ansari Date: Wed, 19 Sep 2018 17:46:04 +0530 Subject: [PATCH] fix(filters): Allow filter on same field multiple times --- frappe/public/js/frappe/ui/filters/field_select.js | 5 ----- frappe/public/js/frappe/ui/filters/filter.js | 3 --- frappe/public/js/frappe/ui/filters/filter_list.js | 4 ++-- 3 files changed, 2 insertions(+), 10 deletions(-) diff --git a/frappe/public/js/frappe/ui/filters/field_select.js b/frappe/public/js/frappe/ui/filters/field_select.js index d33ce418b6..1efee0c1d3 100644 --- a/frappe/public/js/frappe/ui/filters/field_select.js +++ b/frappe/public/js/frappe/ui/filters/field_select.js @@ -144,11 +144,6 @@ frappe.ui.FieldSelect = Class.extend({ table = df.parent; } - // check if this option should be added - if (this.filter_options && this.filter_options(table, df.fieldname) === false) { - return; - } - if(frappe.model.no_value_type.indexOf(df.fieldtype) == -1 && !(me.fields_by_name[df.parent] && me.fields_by_name[df.parent][df.fieldname])) { this.options.push({ diff --git a/frappe/public/js/frappe/ui/filters/filter.js b/frappe/public/js/frappe/ui/filters/filter.js index 0fe454b218..53acb8ef89 100644 --- a/frappe/public/js/frappe/ui/filters/filter.js +++ b/frappe/public/js/frappe/ui/filters/filter.js @@ -48,9 +48,6 @@ frappe.ui.Filter = class { filter_fields: this.filter_fields, select: (doctype, fieldname) => { this.set_field(doctype, fieldname); - }, - filter_options: (doctype, fieldname) => { - return this.filter_items(doctype, fieldname); } }); diff --git a/frappe/public/js/frappe/ui/filters/filter_list.js b/frappe/public/js/frappe/ui/filters/filter_list.js index 893959723b..2baeb6d033 100644 --- a/frappe/public/js/frappe/ui/filters/filter_list.js +++ b/frappe/public/js/frappe/ui/filters/filter_list.js @@ -21,10 +21,10 @@ frappe.ui.FilterGroup = class { let promises = []; for (const filter of filters) { - promises.push(this.add_filter(...filter)); + promises.push(() => this.add_filter(...filter)); } - return Promise.all(promises); + return frappe.run_serially(promises); } add_filter(doctype, fieldname, condition, value, hidden) {