forked from noxious/server
npm format
This commit is contained in:
@ -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) {
|
||||
|
Reference in New Issue
Block a user