From 667b4e9c531995026c69d5092342908b894b69fc Mon Sep 17 00:00:00 2001 From: chaideqing Date: Wed, 16 Aug 2023 08:13:06 +0000 Subject: [PATCH] * Fix bug#37349. --- module/task/model.php | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/module/task/model.php b/module/task/model.php index af05d3ab41..eeb75f3255 100755 --- a/module/task/model.php +++ b/module/task/model.php @@ -4242,7 +4242,9 @@ class taskModel extends model { if($task->deleted) return ''; - if($this->config->systemMode == 'PLM') + $isPlmMode = $this->config->systemMode == 'PLM'; + + if($isPlmMode) { $execution = $this->loadModel('execution')->getByID($task->execution); $execution = $this->loadModel('execution')->canStageStart($execution); @@ -4257,11 +4259,12 @@ class taskModel extends model $menu .= $this->buildMenu('task', 'assignTo', "executionID=$task->execution&taskID=$task->id", $task, 'button', '', '', 'iframe', true, '', $this->lang->task->assignTo); - if(!empty($execution['canStart'])) $menu .= $this->buildMenu('task', 'start', $params, $task, 'view', '', '', 'iframe showinonlybody', true); - if(!empty($execution['canStart'])) $menu .= $this->buildMenu('task', 'restart', $params, $task, 'view', '', '', 'iframe showinonlybody', true); - if(!empty($execution['canStart'])) $menu .= $this->buildMenu('task', 'recordEstimate', $params, $task, 'view', '', '', 'iframe showinonlybody', true); + $plmCanStart = !($isPlmMode and empty($execution['canStart'])); + if($plmCanStart) $menu .= $this->buildMenu('task', 'start', $params, $task, 'view', '', '', 'iframe showinonlybody', true); + if($plmCanStart) $menu .= $this->buildMenu('task', 'restart', $params, $task, 'view', '', '', 'iframe showinonlybody', true); + if($plmCanStart) $menu .= $this->buildMenu('task', 'recordEstimate', $params, $task, 'view', '', '', 'iframe showinonlybody', true); $menu .= $this->buildMenu('task', 'pause', $params, $task, 'view', '', '', 'iframe showinonlybody', true); - if(!empty($execution['canStart'])) $menu .= $this->buildMenu('task', 'finish', $params, $task, 'view', '', '', 'iframe showinonlybody text-success', true); + if($plmCanStart) $menu .= $this->buildMenu('task', 'finish', $params, $task, 'view', '', '', 'iframe showinonlybody text-success', true); $menu .= $this->buildMenu('task', 'activate', $params, $task, 'view', '', '', 'iframe showinonlybody text-success', true); $menu .= $this->buildMenu('task', 'close', $params, $task, 'view', '', '', 'iframe showinonlybody', true); $menu .= $this->buildMenu('task', 'cancel', $params, $task, 'view', '', '', 'iframe showinonlybody', true);