diff --git a/module/action/model.php b/module/action/model.php index 4c36df917b..e8926526e5 100755 --- a/module/action/model.php +++ b/module/action/model.php @@ -1769,10 +1769,10 @@ class actionModel extends model elseif($action->objectType == 'reviewissue') { $issue = $this->dao->select('*')->from(TABLE_REVIEWISSUE)->where('id')->eq($action->objectID)->fetch(); - if(!empty($issue->approval)) + if(!empty($issue->review)) { - $approval = $this->dao->select('*')->from(TABLE_APPROVAL)->where('id')->eq($issue->approval)->fetch(); - if($approval->deleted) + $review = $this->dao->select('*')->from(TABLE_REVIEW)->where('id')->eq($issue->review)->fetch(); + if($review->deleted) { $this->app->loadLang('reviewissue'); return print(js::alert($this->lang->reviewissue->undeleteAction)); diff --git a/module/bug/model.php b/module/bug/model.php index 5c66d8aca6..20aa199c03 100644 --- a/module/bug/model.php +++ b/module/bug/model.php @@ -781,7 +781,11 @@ class bugModel extends model if($bug->execution and $bug->status != $oldBug->status) $this->loadModel('kanban')->updateLane($bug->execution, 'bug'); - if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldBug->feedback) $this->loadModel('feedback')->updateStatus('bug', $oldBug->feedback, $bug->status, $oldBug->status); + if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldBug->feedback) + { + $this->loadModel('feedback')->updateStatus('bug', $oldBug->feedback, $bug->status, $oldBug->status); + if(in_array($bug->status, array('resolved', 'closed'))) $this->loadModel('action')->create('feedback', $oldBug->feedback, 'processed', '', "bug {$bug->status}"); + } return common::createChanges($oldBug, $bug); } @@ -919,6 +923,7 @@ class bugModel extends model { $feedbacks[$oldBug->feedback] = $oldBug->feedback; $this->loadModel('feedback')->updateStatus('bug', $oldBug->feedback, $bug->status, $oldBug->status); + if(in_array($bug->status, array('resolved', 'closed'))) $this->loadModel('action')->create('feedback', $oldBug->feedback, 'processed', '', "bug {$bug->status}"); } } else @@ -1216,7 +1221,11 @@ class bugModel extends model /* Link bug to build and release. */ $this->linkBugToBuild($bugID, $bug->resolvedBuild); - if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldBug->feedback) $this->loadModel('feedback')->updateStatus('bug', $oldBug->feedback, $bug->status, $oldBug->status); + if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldBug->feedback) + { + $this->loadModel('feedback')->updateStatus('bug', $oldBug->feedback, $bug->status, $oldBug->status); + if(in_array($bug->status, array('resolved', 'closed'))) $this->loadModel('action')->create('feedback', $oldBug->feedback, 'processed', '', "bug {$bug->status}"); + } return common::createChanges($oldBug, $bug); } @@ -1395,6 +1404,7 @@ class bugModel extends model { $feedbacks[$oldBug->feedback] = $oldBug->feedback; $this->loadModel('feedback')->updateStatus('bug', $oldBug->feedback, $bug->status, $oldBug->status); + $this->loadModel('action')->create('feedback', $oldBug->feedback, 'processed', '', 'bug resolved'); } } @@ -1507,7 +1517,11 @@ class bugModel extends model if(isset($output['toColID'])) $this->kanban->moveCard($bugID, $output['fromColID'], $output['toColID'], $output['fromLaneID'], $output['toLaneID']); } - if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldBug->feedback) $this->loadModel('feedback')->updateStatus('bug', $oldBug->feedback, $bug->status, $oldBug->status); + if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldBug->feedback) + { + $this->loadModel('feedback')->updateStatus('bug', $oldBug->feedback, $bug->status, $oldBug->status); + $this->loadModel('action')->create('feedback', $oldBug->feedback, 'processed', '', 'bug closed'); + } return common::createChanges($oldBug, $bug); } diff --git a/module/story/model.php b/module/story/model.php index e37d3ad6e2..7608bd56d3 100644 --- a/module/story/model.php +++ b/module/story/model.php @@ -363,7 +363,11 @@ class storyModel extends model $this->loadModel('action')->create('bug', $bugID, 'ToStory', '', $storyID); $this->action->create('bug', $bugID, 'Closed'); - if(($this->config->edition == 'biz' || $this->config->edition == 'max') && !dao::isError() && $oldBug->feedback) $this->loadModel('feedback')->updateStatus('bug', $oldBug->feedback, 'closed', $oldBug->status); + if(($this->config->edition == 'biz' || $this->config->edition == 'max') && !dao::isError() && $oldBug->feedback) + { + $this->loadModel('feedback')->updateStatus('bug', $oldBug->feedback, 'closed', $oldBug->status); + $this->loadModel('action')->create('feedback', $oldBug->feedback, 'processed', '', "bug closed"); + } /* add files to story from bug. */ $files = $this->dao->select('*')->from(TABLE_FILE) @@ -1011,7 +1015,11 @@ class storyModel extends model unset($oldStory->parent); unset($story->parent); - if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldStory->feedback) $this->loadModel('feedback')->updateStatus('story', $oldStory->feedback, $story->status, $oldStory->status); + if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldStory->feedback) + { + $this->loadModel('feedback')->updateStatus('story', $oldStory->feedback, $story->status, $oldStory->status); + if($story->status == 'closed') $this->loadModel('action')->create('feedback', $oldStory->feedback, 'processed', '', "story {$story->status}"); + } $linkStoryField = $oldStory->type == 'story' ? 'linkStories' : 'linkRequirements'; $linkStories = explode(',', $story->{$linkStoryField}); @@ -1146,7 +1154,11 @@ class storyModel extends model $this->action->logHistory($actionID, $changes); } - if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldParentStory->feedback) $this->loadModel('feedback')->updateStatus('story', $oldParentStory->feedback, $newParentStory->status, $oldParentStory->status); + if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldParentStory->feedback) + { + $this->loadModel('feedback')->updateStatus('story', $oldParentStory->feedback, $newParentStory->status, $oldParentStory->status); + if($newParentStory->status == 'closed') $this->loadModel('action')->create('feedback', $oldParentStory->feedback, 'processed', '', "story {$newParentStory->status}"); + } } } else @@ -1386,6 +1398,7 @@ class storyModel extends model { $feedbacks[$oldStory->feedback] = $oldStory->feedback; $this->loadModel('feedback')->updateStatus('story', $oldStory->feedback, $story->status, $oldStory->status); + if($story->status == 'closed') $this->loadModel('action')->create('feedback', $oldStory->feedback, 'processed', '', "story {$story->status}"); } } else @@ -1787,7 +1800,11 @@ class storyModel extends model $this->setStage($storyID); $this->loadModel('score')->create('story', 'close', $storyID); - if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldStory->feedback) $this->loadModel('feedback')->updateStatus('story', $oldStory->feedback, $story->status, $oldStory->status); + if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldStory->feedback) + { + $this->loadModel('feedback')->updateStatus('story', $oldStory->feedback, $story->status, $oldStory->status); + $this->loadModel('action')->create('feedback', $oldStory->feedback, 'processed', '', "story closed"); + } } return common::createChanges($oldStory, $story); } @@ -1856,6 +1873,7 @@ class storyModel extends model { $feedbacks[$oldStory->feedback] = $oldStory->feedback; $this->loadModel('feedback')->updateStatus('story', $oldStory->feedback, $story->status, $oldStory->status); + $this->loadModel('action')->create('feedback', $oldStory->feedback, 'processed', '', "story closed"); } } else diff --git a/module/task/model.php b/module/task/model.php index e6e3499c11..a34b5e12ff 100644 --- a/module/task/model.php +++ b/module/task/model.php @@ -765,7 +765,11 @@ class taskModel extends model $this->action->logHistory($actionID, $changes); } - if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldParentTask->feedback) $this->loadModel('feedback')->updateStatus('task', $oldParentTask->feedback, $newParentTask->status, $oldParentTask->status); + if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldParentTask->feedback) + { + $this->loadModel('feedback')->updateStatus('task', $oldParentTask->feedback, $newParentTask->status, $oldParentTask->status); + if(in_array($newParentTask->status, array('done', 'closed'))) $this->loadModel('action')->create('feedback', $oldParentTask->feedback, 'processed', '', "task {$newParentTask->status}"); + } } } else @@ -1162,7 +1166,11 @@ class taskModel extends model unset($oldTask->parent); unset($task->parent); - if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldTask->feedback) $this->loadModel('feedback')->updateStatus('task', $oldTask->feedback, $task->status, $oldTask->status); + if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldTask->feedback) + { + $this->loadModel('feedback')->updateStatus('task', $oldTask->feedback, $task->status, $oldTask->status); + if(in_array($task->status, array('done', 'closed'))) $this->loadModel('action')->create('feedback', $oldTask->feedback, 'processed', '', "task {$task->status}"); + } return common::createChanges($oldTask, $task); } @@ -1440,6 +1448,7 @@ class taskModel extends model { $feedbacks[$oldTask->feedback] = $oldTask->feedback; $this->loadModel('feedback')->updateStatus('task', $oldTask->feedback, $task->status, $oldTask->status); + if(in_array($task->status, array('done', 'closed'))) $this->loadModel('action')->create('feedback', $oldTask->feedback, 'processed', '', "task {$task->status}"); } $allChanges[$taskID] = common::createChanges($oldTask, $task); } @@ -2008,7 +2017,11 @@ class taskModel extends model if(isset($output['toColID'])) $this->kanban->moveCard($taskID, $output['fromColID'], $output['toColID'], $output['fromLaneID'], $output['toLaneID']); } - if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldTask->feedback) $this->loadModel('feedback')->updateStatus('task', $oldTask->feedback, $task->status, $oldTask->status); + if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldTask->feedback) + { + $this->loadModel('feedback')->updateStatus('task', $oldTask->feedback, $task->status, $oldTask->status); + $this->loadModel('action')->create('feedback', $oldTask->feedback, 'processed', '', "task done"); + } return common::createChanges($oldTask, $task); } @@ -2094,7 +2107,11 @@ class taskModel extends model if(!isset($output['toColID'])) $this->kanban->updateLane($oldTask->execution, 'task', $taskID); if(isset($output['toColID'])) $this->kanban->moveCard($taskID, $output['fromColID'], $output['toColID'], $output['fromLaneID'], $output['toLaneID']); - if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldTask->feedback) $this->loadModel('feedback')->updateStatus('task', $oldTask->feedback, $task->status, $oldTask->status); + if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $oldTask->feedback) + { + $this->loadModel('feedback')->updateStatus('task', $oldTask->feedback, $task->status, $oldTask->status); + $this->loadModel('action')->create('feedback', $oldTask->feedback, 'processed', '', "task closed"); + } return common::createChanges($oldTask, $task); } diff --git a/module/todo/model.php b/module/todo/model.php index a251f011b2..c2c2030d5a 100644 --- a/module/todo/model.php +++ b/module/todo/model.php @@ -305,7 +305,11 @@ class todoModel extends model { $this->file->updateObjectID($this->post->uid, $todoID, 'todo'); if(!empty($oldTodo->cycle)) $this->createByCycle(array($todoID => $todo)); - if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $todo->type == 'feedback' && $todo->idvalue) $this->loadModel('feedback')->updateStatus('todo', $todo->idvalue, $todo->status); + if(($this->config->edition == 'biz' || $this->config->edition == 'max') && $todo->type == 'feedback' && $todo->idvalue) + { + $this->loadModel('feedback')->updateStatus('todo', $todo->idvalue, $todo->status); + if(in_array($todo->status, array('done', 'closed'))) $this->loadModel('action')->create('feedback', $todo->idvalue, 'processed', '', "todo {$todo->status}"); + } return common::createChanges($oldTodo, $todo); } } @@ -377,6 +381,7 @@ class todoModel extends model { $feedbacks[$todo->idvalue] = $todo->idvalue; $this->loadModel('feedback')->updateStatus('todo', $todo->idvalue, $todo->status); + if(in_array($todo->status, array('done', 'closed'))) $this->loadModel('action')->create('feedback', $todo->idvalue, 'processed', '', "todo {$todo->status}"); } $allChanges[$todoID] = common::createChanges($oldTodo, $todo); @@ -429,6 +434,7 @@ class todoModel extends model { $feedbackID = $this->dao->select('idvalue')->from(TABLE_TODO)->where('id')->eq($todoID)->andWhere('type')->eq('feedback')->fetch('idvalue'); if($feedbackID) $this->loadModel('feedback')->updateStatus('todo', $feedbackID, 'done'); + $this->loadModel('action')->create('feedback', $feedbackID, 'processed', '', 'todo done'); } return true; } @@ -798,6 +804,7 @@ class todoModel extends model { $feedbackID = $this->dao->select('idvalue')->from(TABLE_TODO)->where('id')->eq($todoID)->andWhere('type')->eq('feedback')->fetch('idvalue'); if($feedbackID) $this->loadModel('feedback')->updateStatus('todo', $feedbackID, 'closed'); + $this->loadModel('action')->create('feedback', $feedbackID, 'processed', '', 'todo closed'); } return true; }