File: /var/www/api.vaspayment.com/app/Http/Controllers/Authentication/UpdateProfile.php
<?php
namespace App\Http\Controllers\Authentication;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use App\Models\User;
use Illuminate\Validation\ValidationException;
class UpdateProfile extends Controller
{
public function updateProfile(Request $request)
{
try {
$validatedData = $request->validate([
'user_id' => ['required', 'string', 'exists:users,id'],
'name' => ['required', 'string'],
'phone' => ['required', 'numeric'],
]);
} catch (ValidationException $e) {
return response()->json(['error' => $e->errors()], 422);
}
try {
$user = User::find($validatedData['user_id']);
$user->name = $validatedData['name'];
if ($request->has('email')) {
unset($validatedData['email']);
}
$user->phone = $validatedData['phone'];
$user->save();
return response()->json(['message' => 'Profile updated successfully.'], 200);
} catch (\Exception $e) {
return response()->json(['error' => $e->getMessage()], 400);
}
}
}