mirror of
https://github.com/HabitRPG/habitica.git
synced 2025-12-16 22:27:26 +01:00
WIP(teams): display assigned tasks on user's personal board
This commit is contained in:
@@ -1,4 +1,3 @@
|
||||
import clone from 'lodash/clone';
|
||||
import filter from 'lodash/filter';
|
||||
import find from 'lodash/find';
|
||||
import isArray from 'lodash/isArray';
|
||||
@@ -20,19 +19,26 @@ async function updateTeamTasks (team) {
|
||||
boardTask.group.assignedDate = undefined;
|
||||
boardTask.group.assigningUsername = undefined;
|
||||
boardTask.group.sharedCompletion = undefined;
|
||||
const assignedUsers = clone(boardTask.group.assignedUsers);
|
||||
boardTask.group.assignedUsers = null;
|
||||
for (const assignedUser of assignedUsers) {
|
||||
|
||||
for (const assignedUser of boardTask.group.assignedUsers) {
|
||||
const userTask = find(teamUserTasks, task => task.userId === assignedUser
|
||||
&& task.group.taskId === boardTask._id);
|
||||
if (!boardTask.group.assignedUsersDetail) boardTask.group.assignedUsersDetail = {};
|
||||
if (userTask) {
|
||||
if (!boardTask.group.assignedUsers) boardTask.group.assignedUsers = {};
|
||||
boardTask.group.assignedUsers[assignedUser] = {
|
||||
boardTask.group.assignedUsersDetail[assignedUser] = {
|
||||
assignedDate: userTask.group.assignedDate,
|
||||
assigningUsername: userTask.group.assigningUsername,
|
||||
completed: userTask.completed || false,
|
||||
completedDate: userTask.dateCompleted,
|
||||
};
|
||||
toSave.push(Tasks.Task.findByIdAndDelete(userTask._id));
|
||||
} else {
|
||||
boardTask.group.assignedUsersDetail[assignedUser] = {
|
||||
assignedDate: new Date(),
|
||||
assigningUsername: null,
|
||||
completed: false,
|
||||
completedDate: null,
|
||||
};
|
||||
}
|
||||
}
|
||||
boardTask.markModified('group');
|
||||
|
||||
Reference in New Issue
Block a user