From 74345adf6bec8a96e3fa3160bcd3d1b2dfa1f770 Mon Sep 17 00:00:00 2001 From: Sabe Jones Date: Tue, 13 Apr 2021 16:42:50 -0500 Subject: [PATCH] fix(teams): make selectSingle workflows functional --- .../group-plans/taskInformation.vue | 1 + .../tasks/modal-controls/selectSingle.vue | 26 +++++++++-------- .../client/src/components/tasks/taskModal.vue | 29 ++++++++++--------- 3 files changed, 31 insertions(+), 25 deletions(-) diff --git a/website/client/src/components/group-plans/taskInformation.vue b/website/client/src/components/group-plans/taskInformation.vue index e215d80212..80c2f97f32 100644 --- a/website/client/src/components/group-plans/taskInformation.vue +++ b/website/client/src/components/group-plans/taskInformation.vue @@ -301,6 +301,7 @@ export default { taskEdited (task) { const index = findIndex(this.tasksByType[task.type], taskItem => taskItem._id === task._id); this.tasksByType[task.type].splice(index, 1, task); + this.loadTasks(); }, taskDestroyed (task) { const index = findIndex(this.tasksByType[task.type], taskItem => taskItem._id === task._id); diff --git a/website/client/src/components/tasks/modal-controls/selectSingle.vue b/website/client/src/components/tasks/modal-controls/selectSingle.vue index 11e881910f..9015540a10 100644 --- a/website/client/src/components/tasks/modal-controls/selectSingle.vue +++ b/website/client/src/components/tasks/modal-controls/selectSingle.vue @@ -24,6 +24,11 @@ v-markdown="allItemsMap[selectedItem].name" class="label" > +
+ {{ emptyMessage }} +
t.id !== this.selected); - const searchString = this.search.toLowerCase(); - const filteredItems = availableItems.filter(i => i.name.toLowerCase().includes(searchString)); + const filteredItems = this.allItems.filter(i => i.name.toLowerCase().includes(searchString)); return filteredItems; }, }, watch: { selected () { - this.$emit('changed', this.selected); + this.$emit('changed', this.selectedItem); }, }, created () { @@ -253,14 +256,13 @@ export default { $event.preventDefault(); } }, - closeIfOpen () { - this.closeSelectPopup(); - }, selectItem (item) { - this.$emit('toggle', item.id); - }, - removeItem () { - this.$emit('toggle', null); + if (item.id === this.selectedItem) { + this.$emit('toggle', null); + } else { + this.$emit('toggle', item.id); + } + this.closeSelectPopup(); }, hideCallback ($event) { if (this.preventHide) { diff --git a/website/client/src/components/tasks/taskModal.vue b/website/client/src/components/tasks/taskModal.vue index 7fe26c9561..81f96c8716 100644 --- a/website/client/src/components/tasks/taskModal.vue +++ b/website/client/src/components/tasks/taskModal.vue @@ -1489,20 +1489,23 @@ export default { this.$emit('cancel'); }, async toggleAssignment (memberId) { - if (this.purpose === 'create') { - return; - } + if (this.purpose !== 'create') { + if (this.assignedMember === null) { + await this.$store.dispatch('tasks:unassignTask', { + taskId: this.task._id, + userId: memberId, + }); + } else { + await this.$store.dispatch('tasks:unassignTask', { + taskId: this.task._id, + userId: this.assignedMember, + }); - if (this.assignedMember === null) { - await this.$store.dispatch('tasks:unassignTask', { - taskId: this.task._id, - userId: memberId, - }); - } else { - await this.$store.dispatch('tasks:assignTask', { - taskId: this.task._id, - userId: memberId, - }); + await this.$store.dispatch('tasks:assignTask', { + taskId: this.task._id, + userId: memberId, + }); + } } this.assignedMember = memberId;