diff --git a/module/task/js/batchedit.ui.js b/module/task/js/batchedit.ui.js index d593aa43f5..4193418ff6 100644 --- a/module/task/js/batchedit.ui.js +++ b/module/task/js/batchedit.ui.js @@ -9,7 +9,7 @@ window.renderRowData = function($row, index, row) }); let taskMembers = []; - if(row.mode == 'multi' && teams[row.id] != undefined) + if(row.mode != '' && teams[row.id] != undefined) { teamAccounts = teams[row.id]; $.each(teamAccounts, function(index, teamAccount) @@ -26,7 +26,7 @@ window.renderRowData = function($row, index, row) const taskUsers = []; let disabled = false; $row.find('.form-batch-input[data-name="assignedTo"]').empty(); - if(teams[row.id] != undefined && ((row.assignedTo != currentUser && row.mode == 'linear') || taskMembers[currentUser] == undefined)) + if(teams[row.id] != undefined && ((row.mode == 'linear' && row.status != 'done') || taskMembers[currentUser] == undefined)) { disabled = true; } diff --git a/module/task/model.php b/module/task/model.php index e745badb1b..16005a0e71 100755 --- a/module/task/model.php +++ b/module/task/model.php @@ -877,6 +877,7 @@ class taskModel extends model if(!empty($_POST['assignedTo']) && is_string($_POST['assignedTo'])) { $currentTask->assignedTo = $this->post->assignedTo; + if(!in_array($currentTask->assignedTo, $members)) $currentTask->assignedTo = $this->getAssignedTo4Multi($members, $oldTask); } /* If assignedTo is empty, get the assignedTo for the multiply linear task. */ else diff --git a/module/task/zen.php b/module/task/zen.php index 3d53993107..3a34350ac3 100644 --- a/module/task/zen.php +++ b/module/task/zen.php @@ -366,9 +366,9 @@ class taskZen extends task $members = $this->loadModel('user')->getTeamMemberPairs($objectID, $memberType, 'nodeleted'); /* Compute next assignedTo. */ - if(!empty($task->team) && in_array($task->status, $this->config->task->unfinishedStatus)) + if(!empty($task->team)) { - $task->nextUser = $this->task->getAssignedTo4Multi($task->team, $task, 'next'); + if(in_array($task->status, $this->config->task->unfinishedStatus)) $task->nextUser = $this->task->getAssignedTo4Multi($task->team, $task, 'next'); $members = $this->task->getMemberPairs($task); }