| | <?php |
| |
|
| | namespace Kanboard\Helper; |
| |
|
| | use Kanboard\Core\Base; |
| | use Kanboard\Filter\ProjectActivityProjectIdFilter; |
| | use Kanboard\Filter\ProjectActivityProjectIdsFilter; |
| | use Kanboard\Filter\ProjectActivityTaskIdFilter; |
| | use Kanboard\Model\ProjectActivityModel; |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | class ProjectActivityHelper extends Base |
| | { |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public function searchEvents($search) |
| | { |
| | $projects = $this->projectUserRoleModel->getActiveProjectsByUser($this->userSession->getId()); |
| | $events = array(); |
| |
|
| | if ($search !== '') { |
| | $queryBuilder = $this->projectActivityLexer->build($search); |
| | $queryBuilder |
| | ->withFilter(new ProjectActivityProjectIdsFilter(array_keys($projects))) |
| | ->getQuery() |
| | ->desc(ProjectActivityModel::TABLE.'.id') |
| | ->limit(500) |
| | ; |
| |
|
| | $events = $queryBuilder->format($this->projectActivityEventFormatter); |
| | } |
| |
|
| | return $events; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getProjectEvents($project_id, $limit = 50) |
| | { |
| | $queryBuilder = $this->projectActivityQuery |
| | ->withFilter(new ProjectActivityProjectIdFilter($project_id)); |
| |
|
| | $queryBuilder->getQuery() |
| | ->desc(ProjectActivityModel::TABLE.'.id') |
| | ->limit($limit) |
| | ; |
| |
|
| | return $queryBuilder->format($this->projectActivityEventFormatter); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getProjectsEvents(array $project_ids, $limit = 50) |
| | { |
| | $queryBuilder = $this->projectActivityQuery |
| | ->withFilter(new ProjectActivityProjectIdsFilter($project_ids)); |
| |
|
| | $queryBuilder->getQuery() |
| | ->desc(ProjectActivityModel::TABLE.'.id') |
| | ->limit($limit) |
| | ; |
| |
|
| | return $queryBuilder->format($this->projectActivityEventFormatter); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getTaskEvents($task_id) |
| | { |
| | $queryBuilder = $this->projectActivityQuery |
| | ->withFilter(new ProjectActivityTaskIdFilter($task_id)); |
| |
|
| | $queryBuilder->getQuery()->desc(ProjectActivityModel::TABLE.'.id'); |
| |
|
| | return $queryBuilder->format($this->projectActivityEventFormatter); |
| | } |
| | } |
| |
|