public function getMilestones($status, $iduser = null) { $projectModel = new Model_Project(); $idproject = $projectModel->getId(); $milestones = $this->_dbTable->get(array('idproject = ' . $idproject, 'status = "' . $status . '"'), array('idmilestone', 'name', 'datetime', 'status'), 'datetime ASC', null, null, true); $milestoneUserModel = new Model_MilestoneUser(); if (!empty($milestones)) { $ids = array(); foreach ($milestones as $id) { $ids[] = $id['idmilestone']; } $mu = $milestoneUserModel->getUsersIds($ids); $userMetaModel = new Model_UserMeta(); $ids = array(); foreach ($mu as $id) { $ids[] = $id['iduser']; } $users = $userMetaModel->getUsers($ids); foreach ($milestones as $key => $val) { $return[$key] = (object) $val; foreach ($mu as $mukey => $muval) { if ($muval['idmilestone'] == $val['idmilestone']) { foreach ($users as $user) { if ($user['iduser'] == $muval['iduser']) { $return[$key]->users[$mukey] = (object) $user; } } } } } return $return; } }
public function indexAction() { $data = $this->_model->getAll($this->_project); $data->setItemCountPerPage(20); $data->setPageRange(5); Zend_Paginator::setDefaultScrollingStyle('Sliding'); Zend_View_Helper_PaginationControl::setDefaultViewPartial('pagination/pagination.phtml'); $page = $this->_getParam('page', 1); $data->setCurrentPageNumber($page); $ids = array(); foreach ($data as $id) { $ids[] = $id['iduser']; if (!is_null($id['assignee'])) { $ids[] = $id['assignee']; } } $user = new Model_UserMeta(); $users = $user->getUsers($ids); $this->view->users = $users; $this->view->data = $data; }