From 863bcc383877c65ac32b25da3cea312dfc1218b3 Mon Sep 17 00:00:00 2001 From: daniel31x13 Date: Wed, 14 Aug 2024 17:26:38 -0400 Subject: [PATCH] bug fixed --- lib/api/controllers/users/postUser.ts | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/lib/api/controllers/users/postUser.ts b/lib/api/controllers/users/postUser.ts index 464760e..e987475 100644 --- a/lib/api/controllers/users/postUser.ts +++ b/lib/api/controllers/users/postUser.ts @@ -49,12 +49,18 @@ export default async function postUser( // Check username (if email was disabled) const checkUsername = RegExp("^[a-z0-9_-]{3,31}$"); - if (!emailEnabled && !checkUsername.test(body.username?.toLowerCase() || "")) + + const autoGeneratedUsername = "user" + Math.round(Math.random() * 1000000000); + + if (body.username && !checkUsername.test(body.username?.toLowerCase())) return { response: "Username has to be between 3-30 characters, no spaces and special characters are allowed.", status: 400, }; + else if (!body.username) { + body.username = autoGeneratedUsername; + } const checkIfUserExists = await prisma.user.findFirst({ where: { @@ -89,7 +95,8 @@ export default async function postUser( data: { name: body.name, username: emailEnabled - ? autoGeneratedUsername + ? (body.username as string).toLowerCase().trim() || + autoGeneratedUsername : (body.username as string).toLowerCase().trim(), email: emailEnabled ? body.email?.toLowerCase().trim() : undefined, password: hashedPassword,