myLogger = \Config\Services::mylogger(); $this->userModel = new UserModel(); $this->roleModel = new RoleModel(); $this->teamModel = new TeamModel(); $this->userTeamsModel = new UserTeamsModel(); } public function list() { $headerData['page_name'] = 'User List'; $model = new UserModel(); $this->myLogger->logme('error','User list function called'); $data['UserList'] = $model->where('is_active', 1)->orderBy('id', 'DESC')->findAll(); echo view('layout/header', $headerData); echo view('AddUser'); echo view('UserList', $data); echo view('layout/footer'); } public function create() { $this->myLogger->logme('error','User create function called'); $teams = $this->request->getPost('team'); //if this is get method return to user creation page if(!$this->request->getPost()){ return redirect()->to(base_url('/user/list')); }else{ //else do user insert operation $File = file_Upload($this->request->getFile('profile')); $userData = $this->request->getPost(); if(!empty($File)){ $userData['profile'] = $File; } // Inserting data into the 'users' table $userData['created_by'] = get_session_userid(); unset($userData['team']); $insert = $this->userModel->insert($userData); if($insert){ $teamData['user_id'] = $insert ; foreach ($teams as $value) { $teamData['team_id'] = $value; $teamData['created_by'] = get_session_userid(); $this->userTeamsModel->insert($teamData); } } } return redirect()->to(base_url('/user/list')); } public function getuser($id = null) { $roleData = $this->roleModel->select('id, role')->findAll(); $teamData = $this->teamModel->select('id, name')->findAll(); $userTeamData = $this->userTeamsModel->where('user_id', $id)->findAll(); $data = $this->userModel->getUserById($id); if($data){ echo json_encode(array("status" => true , 'data' => $data, 'roleData' => $roleData, 'teamData' => $teamData, 'userTeamData' => $userTeamData)); }else{ echo json_encode(array("status" => false)); } } public function edit() { $teams = $this->request->getPost('team'); if(!$this->request->getPost()){ return redirect()->to(base_url('/user/list')); }else{ $id = $this->request->getPost('PrimaryKey'); $imageDetails = $this->userModel->find($id); $File = file_Upload($this->request->getFile('profile'), (isset($imageDetails['profile']) ? $imageDetails['profile'] : null)); $userData = $this->request->getPost(); if(!empty($File)){ $userData['profile'] = $File; } // Update data in the 'users' table based on the $id $userData['updated_by'] = get_session_userid(); $update = $this->userModel->update($id, $userData); if($update){ $this->userTeamsModel->where('user_id', $id)->delete(); if($teams){ $teamData['user_id'] = $id ; foreach ($teams as $value) { $teamData['team_id'] = $value; $teamData['created_by'] = get_session_userid(); $this->userTeamsModel->insert($teamData); } } } return redirect()->to(base_url('/user/list')); } } public function deactive($id = null) { $model = new UserModel(); $deactive = $model->where('id', $id)->set(['is_active' => 0])->update(); if($deactive) { echo json_encode(array("status" => true)); }else{ echo json_encode(array("status" => false)); } } public function getRolesAndTeams() { $roleData = $this->roleModel->select('id, role')->findAll(); $teamData = $this->teamModel->select('id, name')->findAll(); echo json_encode(array("status" => true , 'roleData' => $roleData, 'teamData' => $teamData,)); } }