public function indexAction($offset = 0) { $this->permission('index'); $this->load->library('pagination'); $pm_issues = new \modules\pm\models\Pm_issues(); $pm_issues->_select = "pm_issue_id, title, pm_issue_statues_id"; $pm_issue_statues = new \modules\pm\models\Pm_issue_statues(); $pm_issue_statues->_select = "pm_issue_statues_id, title, color"; $pm_issue_statues->_limit = $this->config->get('limit'); $pm_issue_statues->_offset = $offset; return $this->render('pm_sticky_issues/index', ['items' => $pm_issue_statues->get(), 'issues' => $pm_issues->get(), 'issue_model' => $pm_issues, 'pagination' => $this->Pagination->generate(['url' => Uri_helper::url('management/pm_sticky_issues/index'), 'total' => $pm_issue_statues->get(true), 'limit' => $pm_issue_statues->_limit, 'offset' => $pm_issue_statues->_offset])]); }
function indexAction($id = false) { if (!$id) { return Brightery::error404(); } $this->permission('index'); $projects = new \modules\pm\models\Pm_projects(); $projects->_select = "pm_project_id,title,about,deadline," . " (SELECT users.fullname FROM users WHERE users.user_id " . "= pm_projects.pm_supervisor_id) AS supervisor"; $projects->pm_project_id = $id; $issues = new \modules\pm\models\Pm_issues(); $issues->_select = "pm_issue_id,title"; $issues->pm_project_id = $id; $team_result = $this->database->query("SELECT title,pm_teams.`pm_team_id` AS id\n FROM pm_teams_projects JOIN pm_teams\n ON pm_teams_projects.`pm_team_id` = pm_teams.`pm_team_id`\n where pm_teams_projects.pm_project_id= {$id} ")->result(); $member_result = []; foreach ($team_result as $value) { $member_result[] = ['team' => $value->title, 'member' => $this->database->query("SELECT fullname , title\n FROM pm_team_users JOIN users\n ON pm_team_users.`user_id` = users.`user_id` \n JOIN pm_roles\n ON pm_team_users.`pm_role_id` = pm_roles.`pm_role_id`\n WHERE pm_team_users.pm_team_id={$value->id}\n ")->result()]; } return $this->render('pm_project_details/index', ['item' => $projects->get(), 'issues' => $issues->get(), 'team_results' => $team_result, 'member_results' => $member_result]); }
public function manageAction($id = false) { $userInfo = $this->permissions->getUserInformation(); $this->permission('manage'); $users = Form_helper::queryToDropdown('users', 'user_id', 'fullname'); $priorities = Form_helper::queryToDropdown('pm_priorities', 'pm_priority_id', 'name'); $projects = Form_helper::queryToDropdown('pm_projects', 'pm_project_id', 'title'); $types = Form_helper::queryToDropdown('pm_issues_types', 'pm_issue_type_id', 'title'); $attach = new \modules\pm\models\Pm_attachments(false); $assign = new \modules\pm\models\Pm_history(false); if ($id) { $model = new \modules\pm\models\Pm_issues('edit'); $model->pm_issue_id = $id; $attach->pm_issue_id = $id; $assign->pm_issue_id = $id; } else { $model = new \modules\pm\models\Pm_issues('add'); $model->set('created_time', date('Y-m-d H:i:s')); } $model->set(['title' => $this->input->post('title'), 'description' => $this->input->post('description'), 'pm_reviewer_id' => $this->input->post('pm_reviewer_id'), 'pm_project_id' => $this->input->post('pm_project_id'), 'pm_priority_id' => $this->input->post('pm_priority_id'), 'estimated_time' => $this->input->post('estimated_time'), 'deadline' => $this->input->post('deadline'), 'pm_issue_type_id' => $this->input->post('pm_issue_type_id'), 'pm_issue_statues_id' => $this->input->post('pm_issue_statues_id')]); if ($issue_id = $model->save()) { if (!$id) { if ($this->input->post('to_user_id')) { $assign->set(['from_user_id' => $userInfo->user_id, 'to_user_id' => $this->input->post('to_user_id'), 'pm_issue_id' => $issue_id, 'actions' => 'assign', 'datetime' => date('Y-m-d H:i:s')]); $assign->save(); } } $attach->pm_issue_id = $issue_id; $attach->delete(); foreach ($this->input->post('uploaded_files') as $file) { $attach->pm_issue_id = $issue_id; $attach->file_name = $file; $attach->attachment_type = 'issue'; $attach->uploaded_time = date('Y-m-d H:i:s'); $attach->save(); } Uri_helper::redirect("management/pm_issues"); } else { return $this->render('pm_issues/manage', ['item' => $id ? $model->get() : null, 'attach' => $id ? $attach->get() : null, 'users' => $users, 'pm_projects' => $projects, 'priority' => $priorities, 'assign' => $assign, 'types' => $types]); } }
public function historyAction($id = false) { $this->layout = 'ajax'; $model = new \modules\pm\models\Pm_history(); $model->_select = "pm_history_id,actions,datetime,pm_issue_id,\n (SELECT users.fullname FROM users WHERE users.user_id = pm_history.from_user_id) AS from_user,\n (SELECT users.fullname FROM users WHERE users.user_id = pm_history.to_user_id) AS to_user\n "; $issues = new \modules\pm\models\Pm_issues(); $issues->_select = "pm_issue_id,title"; $issues->pm_issue_id = $id; $model->_order_by['datetime'] = 'DESC'; return $this->render('pm_issue_details/history', ['items' => $model->get(), 'issue' => $issues->get()]); }