| | <?php |
| |
|
| | namespace Kanboard\Controller; |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | class ProjectListController extends BaseController |
| | { |
| | |
| | |
| | |
| | |
| | |
| | public function show() |
| | { |
| | if ($this->userSession->isAdmin()) { |
| | $projectIds = $this->projectModel->getAllIds(); |
| | } else { |
| | $projectIds = $this->projectPermissionModel->getProjectIds($this->userSession->getId()); |
| | } |
| |
|
| | $query = $this->projectModel->getQueryByProjectIds($projectIds); |
| | $search = $this->request->getStringParam('search'); |
| |
|
| | if ($search !== '') { |
| | $query->ilike('projects.name', '%' . $search . '%'); |
| | } |
| |
|
| | $paginator = $this->paginator |
| | ->setUrl('ProjectListController', 'show') |
| | ->setMax(20) |
| | ->setOrder('name') |
| | ->setQuery($query) |
| | ->calculate(); |
| |
|
| | $this->response->html($this->helper->layout->app('project_list/listing', array( |
| | 'paginator' => $paginator, |
| | 'title' => t('Projects') . ' (' . $paginator->getTotal() . ')', |
| | 'values' => array('search' => $search), |
| | ))); |
| | } |
| | } |
| |
|