| | <?php |
| |
|
| | namespace Kanboard\Action; |
| |
|
| | use Kanboard\Model\TaskModel; |
| | use Kanboard\Model\SubtaskModel; |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | class StopSubtaskTimerMoveTaskColumn extends Base |
| | { |
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getDescription() |
| | { |
| | return t('Stop the timer of all subtasks when moving a task to another column'); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getCompatibleEvents() |
| | { |
| | return array( |
| | TaskModel::EVENT_MOVE_COLUMN, |
| | ); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getActionRequiredParameters() |
| | { |
| | return array( |
| | 'column_id' => t('Column'), |
| | ); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getEventRequiredParameters() |
| | { |
| | return array( |
| | 'task_id', |
| | 'task' => array( |
| | 'id', |
| | 'column_id', |
| | 'project_id', |
| | ), |
| | ); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public function doAction(array $data) |
| | { |
| | $subtasks = $this->subtaskModel->getAll($data['task']['id']); |
| | $results = array(); |
| |
|
| | foreach ($subtasks as $subtask) { |
| | $results[] = $this->subtaskModel->update(array('id' => $subtask['id'], 'status' => SubtaskModel::STATUS_DONE)); |
| | $results[] = $this->subtaskTimeTrackingModel->logEndTime($subtask['id'], $subtask['user_id']); |
| | } |
| |
|
| | return !in_array(false, $results, true); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public function hasRequiredCondition(array $data) |
| | { |
| | return $data['task']['column_id'] == $this->getParam('column_id'); |
| | } |
| | } |
| |
|