From 6bb1b988a1c22b8a8a4c7a8bd031ff4473cbf74e Mon Sep 17 00:00:00 2001 From: Dobromir Popov Date: Mon, 3 Jun 2024 19:21:02 +0300 Subject: [PATCH] fix error message if undexisting user login --- pages/api/auth/[...nextauth].ts | 52 +++++++++++++++++---------------- 1 file changed, 27 insertions(+), 25 deletions(-) diff --git a/pages/api/auth/[...nextauth].ts b/pages/api/auth/[...nextauth].ts index 2162848..6d5aeab 100644 --- a/pages/api/auth/[...nextauth].ts +++ b/pages/api/auth/[...nextauth].ts @@ -122,35 +122,37 @@ export const authOptions: NextAuthOptions = { } } else { - const pub = await prisma.publisher.findUnique({ where: { email: credentials.username } }); - if (pub) { - const passHash = await bcrypt.hash(credentials.password, 10); - const mailVerifyToken = await bcrypt.hash(pub.email, 10); - const date = new Date().getTime(); - const emailVerifyToken = date + "_" + mailVerifyToken; - const newUser = await prisma.user.create({ - data: { - name: credentials.username, - email: credentials.username, - passwordHashLocalAccount: passHash, - emailVerifyToken: emailVerifyToken - } - }); - console.log("New local credential user created for publisher ", pub.firstName, " ", pub.lastName, " (", pub.email, ")"); - logger.info("New local credential user created for publisher ", pub.firstName, " ", pub.lastName, " (", pub.email, ")"); - emailHelper.SendEmail_ValidateTemplate(pub.email, emailVerifyToken, pub.firstName, pub.lastName); - //return newUser; - throw new Error("Моля проверете вашия имейл '" + credentials?.username + "' за да потвърдите регистрацията си."); - } - else { - + try { + const pub = await prisma.publisher.findUnique({ where: { email: credentials.username } }); + if (pub) { + const passHash = await bcrypt.hash(credentials.password, 10); + const mailVerifyToken = await bcrypt.hash(pub.email, 10); + const date = new Date().getTime(); + const emailVerifyToken = date + "_" + mailVerifyToken; + const newUser = await prisma.user.create({ + data: { + name: credentials.username, + email: credentials.username, + passwordHashLocalAccount: passHash, + emailVerifyToken: emailVerifyToken + } + }); + console.log("New local credential user created for publisher ", pub.firstName, " ", pub.lastName, " (", pub.email, ")"); + logger.info("New local credential user created for publisher ", pub.firstName, " ", pub.lastName, " (", pub.email, ")"); + emailHelper.SendEmail_ValidateTemplate(pub.email, emailVerifyToken, pub.firstName, pub.lastName); + //return newUser; + throw new Error("Моля проверете вашия имейл '" + credentials?.username + "' за да потвърдите регистрацията си."); + } + else { + throw new Error("Не можем да намерим твоя имейл '" + credentials?.username + "' в участниците в ССОМ. Моля свържи се с нас за да те регистрираме ако искаш да ползваш този имейл."); + } + } catch (err) { + console.log("Error in credentials authorize:", err); throw new Error("Не можем да намерим твоя имейл '" + credentials?.username + "' в участниците в ССОМ. Моля свържи се с нас за да те регистрираме ако искаш да ползваш този имейл."); } - } } - } - }) + }) /* EmailProvider({ server: {