diff --git a/src/Cms/Controllers/Admin/UserController.php b/src/Cms/Controllers/Admin/UserController.php index 2f341d5..6116bc2 100644 --- a/src/Cms/Controllers/Admin/UserController.php +++ b/src/Cms/Controllers/Admin/UserController.php @@ -191,8 +191,17 @@ public function update( array $parameters ): never $this->redirect( 'admin_users', [], ['error', 'User not found'] ); } - $username = $_POST['username'] ?? $user->getUsername(); - $email = $_POST['email'] ?? $user->getEmail(); + $usernameInput = $_POST['username'] ?? null; + $emailInput = $_POST['email'] ?? null; + + $username = $usernameInput !== null ? trim( (string)$usernameInput ) : $user->getUsername(); + $email = $emailInput !== null ? trim( (string)$emailInput ) : $user->getEmail(); + + if( $username === '' || $email === '' ) + { + $this->redirect( 'admin_users_edit', ['id' => $id], ['error', 'Username and email are required'] ); + } + $role = $_POST['role'] ?? $user->getRole(); $password = $_POST['password'] ?? null;