diff --git a/src/app/staticanalysis/staticAnalysisView.js b/src/app/staticanalysis/staticAnalysisView.js index 8e5abef71a..3af5c3a858 100644 --- a/src/app/staticanalysis/staticAnalysisView.js +++ b/src/app/staticanalysis/staticAnalysisView.js @@ -139,14 +139,9 @@ staticAnalysisView.prototype.checkAll = function (event) { if (!this.view) { return } - var all = this.view.querySelectorAll('[name="staticanalysismodule"]') - var isAnySelected = false - for (var i = 0; i < all.length; i++) { - if (all[i].checked === true) { - isAnySelected = true - break - } - } + var all = this.view.querySelectorAll('[id="staticanalysismodule]"') + var isAnySelected = this.view.querySelectorAll('[id="staticanalysismodule]":checked').length !== 0; + for (var j = 0; j < all.length; j++) { all[j].checked = !isAnySelected } @@ -154,9 +149,12 @@ staticAnalysisView.prototype.checkAll = function (event) { } staticAnalysisView.prototype.checkModule = function (event) { - var selectAll = this.view.querySelector('[id="checkallstaticanalysis" ]') + var selectAll = this.view.querySelector('[id="checkallstaticanalysis"]') + var selected = this.view.querySelectorAll('[id="staticanalysismodule]":checked') if (event.target.checked) { selectAll.checked = true + } else if (selected.length === 0) { + selectAll.checked = false } } diff --git a/src/app/tabs/test-tab.js b/src/app/tabs/test-tab.js index 7aab707694..e8ff527357 100644 --- a/src/app/tabs/test-tab.js +++ b/src/app/tabs/test-tab.js @@ -144,15 +144,17 @@ module.exports = class TestTab { if (e.target.checked) { selectAll.checked = true } + if (selectedTests.length === 0) { + selectAll.checked = false + } + } function checkAll (event) { - var all = self.testList.children - var checkBoxes = document.querySelectorAll('input.singleTest') - var isAnySelected = document.querySelectorAll('input.singleTest:checked').length != 0 + var isAnySelected = document.querySelectorAll('input.singleTest:checked').length !== 0 // checks/unchecks all - checkBoxes.forEach (function(checkBox) { + checkBoxes.forEach(function (checkBox) { checkBox.checked = !isAnySelected }) event.target.checked = !isAnySelected