diff --git a/resources/report/js/filters.js b/resources/report/js/filters.js index d725a306..8165f786 100644 --- a/resources/report/js/filters.js +++ b/resources/report/js/filters.js @@ -62,6 +62,14 @@ var filters = { } }, + inactiveFilter: function(plugin) { + if (document.getElementById('hideInactivePlugins').checked) { + return plugin.isActive; + } else { + return true; + } + }, + applyPluginFilters: function(plugins) { var search = document.getElementById('searchBox').value.toLowerCase(); hiddenPluginNo = 0; @@ -71,6 +79,7 @@ var filters = { plugins.forEach(function(plugin){ /* Messageless filter needs to run first. */ if (this.messagelessFilter(plugin) + && this.inactiveFilter(plugin) && this.searchFilter(plugin, search)) { filteredPlugins.push(plugin); diff --git a/resources/report/js/script.js b/resources/report/js/script.js index 0d7d991e..aecacecf 100644 --- a/resources/report/js/script.js +++ b/resources/report/js/script.js @@ -430,24 +430,7 @@ function applyFilters(evt) { */ getConflictingPluginsFromFilter().then(function(conflicts) { for (var i = 0; i < cards.length; ++i) { - var isConflictingPlugin = false; - var hasInactivePluginMessages = false; - var messages = cards[i].getElementsByTagName('ul')[0].getElementsByTagName('li'); - if (cards[i].getAttribute('data-active') == 'false') { - hasInactivePluginMessages = true; - } - if (conflicts.indexOf(cards[i].getName()) != -1) { - isConflictingPlugin = true; - } - for (var j = 0; j < messages.length; ++j) { - if (document.getElementById('hideInactivePluginMessages').checked && hasInactivePluginMessages) { - hideElement(messages[j]); - ++hiddenMessageNo; - } else { - showElement(messages[j]); - } - } - if (conflicts.length > 0 && !isConflictingPlugin) { + if (conflicts.length > 0 && !conflicts.indexOf(cards[i].getName()) != -1) { hideElement(cards[i]); hideElement(entries[i]); ++hiddenPluginNo; @@ -1107,7 +1090,7 @@ function setupEventHandlers() { document.getElementById('hideBashTags').addEventListener('change', toggleDisplayCSS, false); document.getElementById('hideNotes').addEventListener('change', setFilteredUIData, false); document.getElementById('hideDoNotCleanMessages').addEventListener('change', setFilteredUIData, false); - document.getElementById('hideInactivePluginMessages').addEventListener('change', applyFilters, false); + document.getElementById('hideInactivePlugins').addEventListener('change', setFilteredUIData, false); document.getElementById('hideAllPluginMessages').addEventListener('change', setFilteredUIData, false); document.getElementById('hideMessagelessPlugins').addEventListener('change', setFilteredUIData, false); document.body.addEventListener('loot-filter-conflicts', handleConflictsFilter, false); diff --git a/resources/report/report.html b/resources/report/report.html index 1f02b43c..c64eed71 100644 --- a/resources/report/report.html +++ b/resources/report/report.html @@ -125,8 +125,8 @@ - +
Hidden plugins: