Add projects search
This commit is contained in:
parent
bda7f38ceb
commit
2eeca3db3a
|
|
@ -9,7 +9,7 @@ Breaking changes:
|
|||
New features:
|
||||
|
||||
* Add predefined templates for task descriptions
|
||||
* Add user and group search box
|
||||
* Add users, groups and projects search
|
||||
* Romanian translation
|
||||
|
||||
Improvements:
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ class GroupListController extends BaseController
|
|||
$query = $this->groupModel->getQuery();
|
||||
|
||||
if ($search !== '') {
|
||||
$query->ilike('name', '%'.$search.'%');
|
||||
$query->ilike('groups.name', '%'.$search.'%');
|
||||
}
|
||||
|
||||
$paginator = $this->paginator
|
||||
|
|
|
|||
|
|
@ -23,16 +23,24 @@ class ProjectListController extends BaseController
|
|||
$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($this->projectModel->getQueryByProjectIds($projectIds))
|
||||
->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),
|
||||
)));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,6 +21,15 @@
|
|||
<?= $this->hook->render('template:project-list:menu:after') ?>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div class="margin-bottom">
|
||||
<form method="get" action="<?= $this->url->dir() ?>" class="search">
|
||||
<?= $this->form->hidden('controller', array('controller' => 'ProjectListController')) ?>
|
||||
<?= $this->form->hidden('action', array('action' => 'show')) ?>
|
||||
<?= $this->form->text('search', $values, array(), array('placeholder="'.t('Search').'"')) ?>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<?php if ($paginator->isEmpty()): ?>
|
||||
<p class="alert"><?= t('There is no project.') ?></p>
|
||||
<?php else: ?>
|
||||
|
|
|
|||
Loading…
Reference in New Issue