diff --git a/UI/WebServerResources/js/Contacts/AddressBookController.js b/UI/WebServerResources/js/Contacts/AddressBookController.js index 5d9ab04c3..b3bd7374c 100644 --- a/UI/WebServerResources/js/Contacts/AddressBookController.js +++ b/UI/WebServerResources/js/Contacts/AddressBookController.js @@ -27,6 +27,7 @@ this.service = AddressBook; this.selectedFolder = stateAddressbook; this.mode = { search: false, multiple: 0 }; + this.allSelected = false; _registerHotkeys(hotkeys); @@ -307,8 +308,9 @@ this.selectAll = function() { _.forEach(this.selectedFolder.$cards, function(card) { - card.selected = true; + card.selected = !vm.allSelected; }); + vm.allSelected = !vm.allSelected; this.mode.multiple = this.selectedFolder.$cards.length; }; diff --git a/UI/WebServerResources/js/Mailer/MailboxController.js b/UI/WebServerResources/js/Mailer/MailboxController.js index 9e2058557..41db631a2 100644 --- a/UI/WebServerResources/js/Mailer/MailboxController.js +++ b/UI/WebServerResources/js/Mailer/MailboxController.js @@ -33,6 +33,7 @@ this.selectedFolder = stateMailbox; this.messageDialog = null; // also access from Message controller this.mode = { search: false, multiple: 0 }; + this.allSelected = false; if (!Mailbox.$virtualMode) this.selectedFolder.getLabels(); // fetch labels from server @@ -579,11 +580,12 @@ var i = 0, length = folder.$messages.length; folder.$selectedMessages = []; for (; i < length; i++) { - folder.$messages[i].selected = true; + folder.$messages[i].selected = !vm.allSelected; folder.$selectedMessages.push(folder.$messages[i]); } count += length; }); + vm.allSelected = !vm.allSelected; vm.mode.multiple = count; }; diff --git a/UI/WebServerResources/js/Scheduler/CalendarListController.js b/UI/WebServerResources/js/Scheduler/CalendarListController.js index 8f691197c..dc4f4ec2d 100644 --- a/UI/WebServerResources/js/Scheduler/CalendarListController.js +++ b/UI/WebServerResources/js/Scheduler/CalendarListController.js @@ -45,6 +45,7 @@ vm.reload = reload; vm.cancelSearch = cancelSearch; vm.mode = { search: false, multiple: 0 }; + vm.allSelected = false; this.$onInit = function() { @@ -120,8 +121,9 @@ function selectAll() { _.forEach(Component['$' + vm.componentType], function(component) { - component.selected = true; + component.selected = !vm.allSelected; }); + vm.allSelected = !vm.allSelected; vm.mode.multiple = Component['$' + vm.componentType].length; }