From a2a441ecb0c9a13f4bbaa3dac19070ec0dadcfc1 Mon Sep 17 00:00:00 2001 From: Sainan <63328889+Sainan@users.noreply.github.com> Date: Wed, 23 Jul 2025 07:51:22 -0700 Subject: [PATCH] fix: getUsernameFromEmail returning wrong value (#2538) Closes #2537 Reviewed-on: https://onlyg.it/OpenWF/SpaceNinjaServer/pulls/2538 Co-authored-by: Sainan <63328889+Sainan@users.noreply.github.com> Co-committed-by: Sainan <63328889+Sainan@users.noreply.github.com> --- src/services/loginService.ts | 2 +- src/services/wsService.ts | 26 +++++++++----------------- 2 files changed, 10 insertions(+), 18 deletions(-) diff --git a/src/services/loginService.ts b/src/services/loginService.ts index 338f43db..e929fce3 100644 --- a/src/services/loginService.ts +++ b/src/services/loginService.ts @@ -32,7 +32,7 @@ export const getUsernameFromEmail = async (email: string): Promise => { name = nameFromEmail + suffix; } while (await isNameTaken(name)); } - return nameFromEmail; + return name; }; export const createAccount = async (accountData: IDatabaseAccountRequiredFields): Promise => { diff --git a/src/services/wsService.ts b/src/services/wsService.ts index 01ebe7aa..fb4bbee3 100644 --- a/src/services/wsService.ts +++ b/src/services/wsService.ts @@ -2,13 +2,7 @@ import http from "http"; import https from "https"; import ws from "ws"; import { Account } from "@/src/models/loginModel"; -import { - createAccount, - createNonce, - getUsernameFromEmail, - isCorrectPassword, - isNameTaken -} from "@/src/services/loginService"; +import { createAccount, createNonce, getUsernameFromEmail, isCorrectPassword } from "@/src/services/loginService"; import { IDatabaseAccountJson } from "@/src/types/loginTypes"; import { HydratedDocument } from "mongoose"; import { logError } from "@/src/utils/logger"; @@ -111,16 +105,14 @@ const wsOnConnect = (ws: ws, req: http.IncomingMessage): void => { } } else if (data.auth.isRegister) { const name = await getUsernameFromEmail(data.auth.email); - if (!(await isNameTaken(name))) { - account = await createAccount({ - email: data.auth.email, - password: data.auth.password, - ClientType: "webui", - LastLogin: new Date(), - DisplayName: name, - Nonce: createNonce() - }); - } + account = await createAccount({ + email: data.auth.email, + password: data.auth.password, + ClientType: "webui", + LastLogin: new Date(), + DisplayName: name, + Nonce: createNonce() + }); } if (account) { (ws as IWsCustomData).accountId = account.id;