diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index eb9a46a..c705053 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -352,4 +352,27 @@ class UserController extends Controller return response()->json(['message' => "Server error"], 500); } } + + public function updatePassword(Request $request): JsonResponse { + try { + $request->validate([ + 'current_password' => ['required'], + 'new_password' => ['required', 'confirmed'], + ]); + + $user = $request->user(); + + if (!Hash::check($request['current_password'], $user->password)) { + return response()->json(['message' => 'Mot de passe actuel incorrect'], 403); + } + + $user->password = Hash::make($request['new_password']); + $user->save(); + + return response()->json(['message' => 'Mot de passe mis à jour avec succès']); + } catch (\Exception $e) { + Log::error($e->getMessage()); + return response()->json(['message' => 'Server error'], 500); + } + } }