From f79e01ff15e0872bf03887819d6c0595ffd0af73 Mon Sep 17 00:00:00 2001 From: paulcortez Date: Thu, 6 Mar 2025 16:56:59 +0800 Subject: [PATCH] added update password added update password --- app/Config/Routes.php | 1 + app/Controllers/AdministratorController.php | 50 ++++++++++++++---- app/Views/admin/usermaintenance.php | 56 +++++++++++++++++++++ 3 files changed, 96 insertions(+), 11 deletions(-) diff --git a/app/Config/Routes.php b/app/Config/Routes.php index 26da132..1d7cf14 100644 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -94,6 +94,7 @@ $routes->get('adminuser/edituserpermission/(:num)', 'AdministratorController::ed $routes->post('adminuser/saveusergroup', 'AdministratorController::saveEditedUserGroup'); $routes->get('adminuser/fromemplist', 'AdministratorController::newUserFromEmployeeList'); $routes->get('adminuser/newuserfromemplist/(:any)', 'AdministratorController::createUserFromEmployeeList/$1'); +$routes->post('adminuser/updateuserpass', 'AdministratorController::updateUserPass'); // Timekeeper Routes` diff --git a/app/Controllers/AdministratorController.php b/app/Controllers/AdministratorController.php index cbd4e8e..a03c62b 100644 --- a/app/Controllers/AdministratorController.php +++ b/app/Controllers/AdministratorController.php @@ -58,7 +58,12 @@ class AdministratorController extends BaseController $iconDelete = '
'; $iconUserGroup = ''; $iconUserPermission = ''; - $htmlTable->addRow($user->employee_id, $user->username, $user->email, $user->display_name, $user->active ? "Yes" : "No", "$iconView $iconEdit $iconUserGroup $iconUserPermission $iconDelete"); + $iconChangePass = ''; + $htmlTable->addRow($user->employee_id, $user->username, $user->email, $user->display_name, $user->active ? "Yes" : "No", "$iconView $iconEdit $iconUserGroup $iconUserPermission $iconChangePass $iconDelete"); } $data['tblUsers'] = $htmlTable->generate(); } @@ -85,18 +90,22 @@ class AdministratorController extends BaseController 'employee_id' => $this->request->getPost('employee_id'), 'display_name' => $this->request->getPost('display_name'), ]); - $users->save($user); - - // To get the complete user object with ID, we need to get from the database - $user = $users->findById($users->getInsertID()); + + if($users->save($user)) + { + // To get the complete user object with ID, we need to get from the database + $user = $users->findById($users->getInsertID()); - // Add to default group - $users->addToDefaultGroup($user); + // Add to default group + $users->addToDefaultGroup($user); - // Activate user - $user->activate(); + // Activate user + $user->activate(); - return redirect()->to('/adminuser')->with('message', "{$user->display_name} user added."); + return redirect()->to('/adminuser')->with('message', "{$user->display_name} user added."); + } + else + return redirect()->back()->with('error', 'User creation failed.'); } public function editUserGroupView($id) @@ -160,6 +169,23 @@ class AdministratorController extends BaseController return redirect()->to('/adminuser')->with('message', 'User updated successfully.'); } + public function updateUserPass() + { + // Get the User Provider (UserModel by default) + $users = auth()->getProvider(); + + $id = $this->request->getPost('id'); + $password = $this->request->getPost('password'); + + $user = $users->findById($id); + $user->fill([ + 'password' => $password + ]); + $users->save($user); + + return redirect()->to('/adminuser')->with('message', 'User updated successfully.'); + } + public function deleteUser() { $user = auth()->getProvider()->findById($this->request->getPost('id')); @@ -181,7 +207,10 @@ class AdministratorController extends BaseController public function createUserFromEmployeeList($employeeid) { + $users = auth()->getProvider(); + $employee = (new EmployeeModel())->where(['company_issued_id' => $employeeid, 'deleted_at' => NULL])->first(); + $user = new User([ 'username' => $employee->company_issued_id, 'email' => $employee->email_address, @@ -189,7 +218,6 @@ class AdministratorController extends BaseController 'employee_id' => $employee->company_issued_id, 'display_name' => $employee->first_name." ".$employee->last_name, ]); - $users = auth()->getProvider(); if($users->save($user)) { diff --git a/app/Views/admin/usermaintenance.php b/app/Views/admin/usermaintenance.php index 5fc3f70..3907428 100644 --- a/app/Views/admin/usermaintenance.php +++ b/app/Views/admin/usermaintenance.php @@ -179,6 +179,51 @@ + +
@@ -298,6 +343,17 @@ function GetUserByIdForEdit(user) $('#mdlEditUser').modal('show'); } +function GetUserByIdForPassEdit(user) +{ + $("#lblUpdatePassUserTitle").text($(user).data('displayname')); + $("#lblUpdatePassUserID").text($(user).data('id')); + + $("#lblUpdatePassUserUsername").text($(user).data('username')); + $("#hdnUpdatePassUserID").val($(user).data('id')); + + $('#mdlUpdateUserPass').modal('show'); +} + function DeleteUserByID() { return confirm("Are you sure you want to delete this user?");