diff options
Diffstat (limited to 'app/Controller/Listing.php')
-rw-r--r-- | app/Controller/Listing.php | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/app/Controller/Listing.php b/app/Controller/Listing.php new file mode 100644 index 00000000..2c197e3e --- /dev/null +++ b/app/Controller/Listing.php @@ -0,0 +1,37 @@ +<?php + +namespace Controller; + +use Model\Task as TaskModel; + +/** + * List view controller + * + * @package controller + * @author Frederic Guillot + */ +class Listing extends Base +{ + /** + * Show list view for projects + * + * @access public + */ + public function show() + { + $params = $this->getProjectFilters('listing', 'show'); + $query = $this->taskFilter->search($params['filters']['search'])->filterByProject($params['project']['id'])->getQuery(); + + $paginator = $this->paginator + ->setUrl('listing', 'show', array('project_id' => $params['project']['id'])) + ->setMax(30) + ->setOrder(TaskModel::TABLE.'.id') + ->setDirection('DESC') + ->setQuery($query) + ->calculate(); + + $this->response->html($this->template->layout('listing/show', $params + array( + 'paginator' => $paginator, + ))); + } +} |