From 50dbb572b116306e5e972dfa4ae2b45b2b131bfe Mon Sep 17 00:00:00 2001 From: Anthony Lapenna Date: Fri, 5 Jan 2018 14:31:20 +0100 Subject: [PATCH] fix(containers): update the persisted filters after refresh (#1553) --- .../containersDatatableController.js | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/app/directives/ui/datatables/containers-datatable/containersDatatableController.js b/app/directives/ui/datatables/containers-datatable/containersDatatableController.js index e42dbcc58..997b5e727 100644 --- a/app/directives/ui/datatables/containers-datatable/containersDatatableController.js +++ b/app/directives/ui/datatables/containers-datatable/containersDatatableController.js @@ -144,7 +144,20 @@ function (PaginationService, DatatableService) { } availableStateFilters.push({ label: item.Status, display: true }); } - this.filters.state.values = _.uniqBy(availableStateFilters, 'label'); + this.filters.state.values = _.uniqBy(availableStateFilters, 'label'); + }; + + this.updateStoredFilters = function(storedFilters) { + var datasetFilters = this.filters.state.values; + + for (var i = 0; i < datasetFilters.length; i++) { + var filter = datasetFilters[i]; + existingFilter = _.find(storedFilters, ['label', filter.label]); + if (existingFilter && !existingFilter.display) { + filter.display = existingFilter.display; + this.filters.state.enabled = true; + } + } }; this.$onInit = function() { @@ -159,7 +172,7 @@ function (PaginationService, DatatableService) { var storedFilters = DatatableService.getDataTableFilters(this.tableKey); if (storedFilters !== null) { - this.filters = storedFilters; + this.updateStoredFilters(storedFilters.state.values); } this.filters.state.open = false;