From 1ab81fb8ee127d5fa1dce93ed1cda68ae2b651b5 Mon Sep 17 00:00:00 2001 From: zomars Date: Tue, 14 Jun 2022 14:51:02 -0600 Subject: [PATCH] Better error on user delete --- pages/api/users/[id]/_delete.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/pages/api/users/[id]/_delete.ts b/pages/api/users/[id]/_delete.ts index ce04999eea..7d38d07372 100644 --- a/pages/api/users/[id]/_delete.ts +++ b/pages/api/users/[id]/_delete.ts @@ -36,8 +36,12 @@ export async function deleteHandler(req: NextApiRequest) { const isAdmin = await isAdminGuard(req.userId); // Here we only check for ownership of the user if the user is not admin, otherwise we let ADMIN's edit any user if (!isAdmin && query.id !== req.userId) throw new HttpError({ statusCode: 401, message: "Unauthorized" }); - await prisma.user.delete({ where: { id: query.id } }); - return { message: `User with id: ${query.id} deleted successfully` }; + + const user = await prisma.user.findUnique({ where: { id: query.id } }); + if (!user) throw new HttpError({ statusCode: 404, message: "User not found" }); + + await prisma.user.delete({ where: { id: user.id } }); + return { message: `User with id: ${user.id} deleted successfully` }; } export default defaultResponder(deleteHandler);