diff --git a/deluge/ui/web/js/deluge-all/FilterPanel.js b/deluge/ui/web/js/deluge-all/FilterPanel.js index 70e479ac3..a68617055 100644 --- a/deluge/ui/web/js/deluge-all/FilterPanel.js +++ b/deluge/ui/web/js/deluge-all/FilterPanel.js @@ -86,15 +86,15 @@ Deluge.FilterPanel = Ext.extend(Ext.Panel, { }, /** - * Return the currently selected filter - * @returns {String} the current filter + * Return the currently selected filter state + * @returns {String} the current filter state */ - getFilter: function() { + getState: function() { if (!this.list.getSelectionCount()) return; - var filter = this.list.getSelectedRecords()[0]; - if (filter.id == 'All') return; - return filter.id; + var state = this.list.getSelectedRecords()[0]; + if (state.id == 'All') return; + return state.id; }, /** diff --git a/deluge/ui/web/js/deluge-all/Sidebar.js b/deluge/ui/web/js/deluge-all/Sidebar.js index 8751491e8..53b4cc9ed 100644 --- a/deluge/ui/web/js/deluge-all/Sidebar.js +++ b/deluge/ui/web/js/deluge-all/Sidebar.js @@ -87,17 +87,28 @@ Deluge.Sidebar = Ext.extend(Ext.Panel, { this.fireEvent('afterfiltercreate', this, panel); }, - getFilters: function() { - var filters = {} + getFilterStates: function() { + var states = {} // Grab the filters from each of the filter panels this.items.each(function(panel) { - var filter = panel.getFilter(); - if (!filter == null) return; - filters[panel.filterType] = filter; + var state = panel.getState(); + if (!state == null) return; + states[panel.filterType] = state; }, this); - return filters; + return states; + }, + + hasFilter: function(filter) { + var has = false; + this.items.each(function(panel) { + if (panel.filterType == filter) { + has = true; + return false; + } + }); + return has; }, // private diff --git a/deluge/ui/web/js/deluge-all/UI.js b/deluge/ui/web/js/deluge-all/UI.js index 9286cca17..879ec5fbb 100644 --- a/deluge/ui/web/js/deluge-all/UI.js +++ b/deluge/ui/web/js/deluge-all/UI.js @@ -102,7 +102,7 @@ deluge.ui = { }, update: function() { - var filters = deluge.sidebar.getFilters(); + var filters = deluge.sidebar.getFilterStates(); deluge.client.web.update_ui(Deluge.Keys.Grid, filters, { success: this.onUpdate, failure: this.onUpdateError,