Add user dashboard view
This commit is contained in:
@@ -22,34 +22,44 @@ class App extends Base
|
||||
$this->response->text('OK');
|
||||
}
|
||||
|
||||
/**
|
||||
* User dashboard view for admins
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
public function dashboard()
|
||||
{
|
||||
$this->index($this->request->getIntegerParam('user_id'), 'dashboard');
|
||||
}
|
||||
|
||||
/**
|
||||
* Dashboard for the current user
|
||||
*
|
||||
* @access public
|
||||
*/
|
||||
public function index()
|
||||
public function index($user_id = 0, $action = 'index')
|
||||
{
|
||||
$status = array(SubTaskModel::STATUS_TODO, SubTaskModel::STATUS_INPROGRESS);
|
||||
$user_id = $this->userSession->getId();
|
||||
$user_id = $user_id ?: $this->userSession->getId();
|
||||
$projects = $this->projectPermission->getActiveMemberProjects($user_id);
|
||||
$project_ids = array_keys($projects);
|
||||
|
||||
$task_paginator = $this->paginator
|
||||
->setUrl('app', 'index', array('pagination' => 'tasks'))
|
||||
->setUrl('app', $action, array('pagination' => 'tasks'))
|
||||
->setMax(10)
|
||||
->setOrder('tasks.id')
|
||||
->setQuery($this->taskFinder->getUserQuery($user_id))
|
||||
->calculateOnlyIf($this->request->getStringParam('pagination') === 'tasks');
|
||||
|
||||
$subtask_paginator = $this->paginator
|
||||
->setUrl('app', 'index', array('pagination' => 'subtasks'))
|
||||
->setUrl('app', $action, array('pagination' => 'subtasks'))
|
||||
->setMax(10)
|
||||
->setOrder('tasks.id')
|
||||
->setQuery($this->subTask->getUserQuery($user_id, $status))
|
||||
->calculateOnlyIf($this->request->getStringParam('pagination') === 'subtasks');
|
||||
|
||||
$project_paginator = $this->paginator
|
||||
->setUrl('app', 'index', array('pagination' => 'projects'))
|
||||
->setUrl('app', $action, array('pagination' => 'projects'))
|
||||
->setMax(10)
|
||||
->setOrder('name')
|
||||
->setQuery($this->project->getQueryColumnStats($project_ids))
|
||||
|
||||
Reference in New Issue
Block a user