diff options
author | Frédéric Guillot <fred@kanboard.net> | 2014-12-26 17:43:13 -0500 |
---|---|---|
committer | Frédéric Guillot <fred@kanboard.net> | 2014-12-26 17:43:13 -0500 |
commit | cf821e117ce8b937cff7f386a107aaa81ba6bf9b (patch) | |
tree | 6075f4d1c5192f45e8b13479bc67f973b046fdf2 /app/Model/Board.php | |
parent | 2b27d986b374923a266c132ac0a67fb515d30d1c (diff) |
Add swimlanes
Diffstat (limited to 'app/Model/Board.php')
-rw-r--r-- | app/Model/Board.php | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/app/Model/Board.php b/app/Model/Board.php index 9ba2e066..8208b99d 100644 --- a/app/Model/Board.php +++ b/app/Model/Board.php @@ -227,29 +227,30 @@ class Board extends Base } /** - * Get all columns and tasks for a given project + * Get all tasks sorted by columns and swimlanes * * @access public * @param integer $project_id Project id * @return array */ - public function get($project_id) + public function getBoard($project_id) { + $swimlanes = $this->swimlane->getSwimlanes($project_id); $columns = $this->getColumns($project_id); - $tasks = $this->taskFinder->getTasksOnBoard($project_id); + $nb_columns = count($columns); - foreach ($columns as &$column) { + foreach ($swimlanes as &$swimlane) { - $column['tasks'] = array(); - - foreach ($tasks as &$task) { - if ($task['column_id'] == $column['id']) { - $column['tasks'][] = $task; - } + foreach ($columns as &$column) { + $column['tasks'] = $this->taskFinder->getTasksByColumnAndSwimlane($project_id, $column['id'], $swimlane['id']); + $column['nb_tasks'] = count($column['tasks']); } + + $swimlane['columns'] = $columns; + $swimlane['nb_columns'] = $nb_columns; } - return $columns; + return $swimlanes; } /** |