1
0
forked from noxious/server

npm format

This commit is contained in:
2024-11-04 01:05:21 +01:00
parent f475b69022
commit 7ec4303b40
6 changed files with 37 additions and 26 deletions

View File

@ -63,17 +63,15 @@ class UserService {
* @param email
*/
async resetPassword(email: string): Promise<boolean> {
const user = await UserRepository.getByEmail(email)
if ( !user ) return false
if (!user) return false
const token = await bcrypt.hash(new Date().getTime().toString(), 10)
const latestToken = await PasswordResetTokenRepository.getByUserId(user.id)
//Check if password reset has been requested recently
if (latestToken) {
const tokenExpiryDate = new Date(Date.now() - 24 * 60 * 60 * 1000);
const tokenExpiryDate = new Date(Date.now() - 24 * 60 * 60 * 1000)
const isTokenExpired = latestToken.createdAt < tokenExpiryDate
if (!isTokenExpired) return false
@ -88,9 +86,9 @@ class UserService {
await prisma.passwordResetToken.create({
data: {
userId: user.id,
token: token,
token: token
}
});
})
const transporter = NodeMailer.createTransport({
host: config.SMTP_HOST,
@ -98,18 +96,18 @@ class UserService {
secure: false,
auth: {
user: config.SMTP_USER,
pass: config.SMTP_PASSWORD,
},
});
pass: config.SMTP_PASSWORD
}
})
try {
await transporter.sendMail({
from: config.SMTP_USER,
to: email,
subject: "Reset your password",
text: "A password reset has been requested, reset your password here: " + config.CLIENT_URL + "#" + token, // Plain text body
html: "<p>A password reset has been requested, reset your password here: <a href='" + config.CLIENT_URL + "#" + token + "'>" + config.CLIENT_URL + "#" + token + "</a></p>", // Html body
});
subject: 'Reset your password',
text: 'A password reset has been requested, reset your password here: ' + config.CLIENT_URL + '#' + token, // Plain text body
html: "<p>A password reset has been requested, reset your password here: <a href='" + config.CLIENT_URL + '#' + token + "'>" + config.CLIENT_URL + '#' + token + '</a></p>' // Html body
})
return true
} catch (error: any) {