Pārlūkot izejas kodu

Fix multiselect toggle logic

If every element already has the label/member, we do not need to add it
but it should be removed and if every element does not have the element,
we should add it.
Alexander Sulfrian 10 gadi atpakaļ
vecāks
revīzija
6277bd2a90
1 mainītis faili ar 4 papildinājumiem un 4 dzēšanām
  1. 4 4
      client/components/sidebar/sidebarFilters.js

+ 4 - 4
client/components/sidebar/sidebarFilters.js

@@ -69,9 +69,9 @@ BlazeComponent.extendComponent({
         const mappedSelection = this.mapSelection('label', labelId);
         const mappedSelection = this.mapSelection('label', labelId);
 
 
         if (_.every(mappedSelection)) {
         if (_.every(mappedSelection)) {
-          mutateSelectedCards('addLabel', labelId);
-        } else if (_.every(mappedSelection, (bool) => !bool)) {
           mutateSelectedCards('removeLabel', labelId);
           mutateSelectedCards('removeLabel', labelId);
+        } else if (_.every(mappedSelection, (bool) => !bool)) {
+          mutateSelectedCards('addLabel', labelId);
         } else {
         } else {
           const popup = Popup.open('disambiguateMultiLabel');
           const popup = Popup.open('disambiguateMultiLabel');
           // XXX We need to have a better integration between the popup and the
           // XXX We need to have a better integration between the popup and the
@@ -83,9 +83,9 @@ BlazeComponent.extendComponent({
         const memberId = this.currentData()._id;
         const memberId = this.currentData()._id;
         const mappedSelection = this.mapSelection('member', memberId);
         const mappedSelection = this.mapSelection('member', memberId);
         if (_.every(mappedSelection)) {
         if (_.every(mappedSelection)) {
-          mutateSelectedCards('assignMember', memberId);
-        } else if (_.every(mappedSelection, (bool) => !bool)) {
           mutateSelectedCards('unassignMember', memberId);
           mutateSelectedCards('unassignMember', memberId);
+        } else if (_.every(mappedSelection, (bool) => !bool)) {
+          mutateSelectedCards('assignMember', memberId);
         } else {
         } else {
           const popup = Popup.open('disambiguateMultiMember');
           const popup = Popup.open('disambiguateMultiMember');
           // XXX We need to have a better integration between the popup and the
           // XXX We need to have a better integration between the popup and the