mirror of
https://github.com/sudoxnym/habitica.git
synced 2026-07-13 23:42:12 +00:00
fix(teams): make selectSingle workflows functional
This commit is contained in:
parent
7dbee4caed
commit
74345adf6b
3 changed files with 31 additions and 25 deletions
|
|
@ -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);
|
||||
|
|
|
|||
|
|
@ -24,6 +24,11 @@
|
|||
v-markdown="allItemsMap[selectedItem].name"
|
||||
class="label"
|
||||
></div>
|
||||
<div
|
||||
v-else
|
||||
>
|
||||
{{ emptyMessage }}
|
||||
</div>
|
||||
</template>
|
||||
<div
|
||||
v-if="addNew || availableToSelect.length > 0"
|
||||
|
|
@ -211,21 +216,19 @@ export default {
|
|||
return obj;
|
||||
},
|
||||
selectedItemAsObject () {
|
||||
return this.selected ? this.allItemsMap[this.selected] : null;
|
||||
return this.selectedItem ? this.allItemsMap[this.selectedItem] : null;
|
||||
},
|
||||
availableToSelect () {
|
||||
const availableItems = this.allItems.filter(t => 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) {
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
|
|
|||
Loading…
Reference in a new issue