reset password wip
This commit is contained in:
parent
e0b64b2252
commit
12597ad774
@ -51,7 +51,7 @@ async function addToken(userId, permission, isKey ,expiry) {
|
||||
}
|
||||
|
||||
async function addPasswordResetToken(data , token){
|
||||
let hashtoken = await hash(uuid);
|
||||
let hashtoken = await hash(token);
|
||||
let currentDate = new Date();
|
||||
let tokenToLive = new Date(currentDate.getTime() + 15 * 60000);
|
||||
|
||||
|
@ -76,8 +76,7 @@ async function sendTokenEmail(email, token) {
|
||||
}
|
||||
}
|
||||
|
||||
async function sendResetPasswordEmail(email, link, resetToken) {
|
||||
console.log(email);
|
||||
async function sendResetPasswordEmail(email, resetToken) {
|
||||
try {
|
||||
let resetMessage = await transporter.sendMail({
|
||||
to: email,
|
||||
@ -85,10 +84,9 @@ async function sendResetPasswordEmail(email, link, resetToken) {
|
||||
subject: "Reset Password",
|
||||
html: `
|
||||
<h1>Reset Password</h1>
|
||||
<p><strong>Reset Password Link:</strong> ${link}</p>
|
||||
<p><strong>One time token:</strong> ${resetToken}</p>
|
||||
<p><strong>Reset Password Link:</strong> <a href="localhost/api/v0/auth/resetpassword/${resetToken}">Reset Password Link </p>
|
||||
<p><strong>From:</strong> Eco Saver</p>
|
||||
<p>Kindly click on the link and key in the one time token given to reset your password!</p>
|
||||
<p>Kindly click on the link to reset your password!</p>
|
||||
<p>Regards,</p>
|
||||
<p>EcoSaver Team</p>
|
||||
<p><a href="https://ecosaver.teeseng.uk/">EcoSaver Website</a></p>
|
||||
|
@ -1,7 +1,13 @@
|
||||
const { addUser, loginUser, checkEmail , checkEmailDetails } = require("../functions/user");
|
||||
const {
|
||||
addUser,
|
||||
loginUser,
|
||||
checkEmail,
|
||||
checkEmailDetails,
|
||||
} = require("../functions/user");
|
||||
const { sendContactEmail } = require("../functions/nodeMail");
|
||||
const { generateUUID } = require("../functions/generateUUID");
|
||||
const { } = require("../functions/api");
|
||||
const { addPasswordResetToken } = require("../functions/api");
|
||||
const { sendResetPasswordEmail } = require("../functions/nodeMail");
|
||||
|
||||
const express = require("express");
|
||||
const router = express.Router();
|
||||
@ -59,14 +65,12 @@ router.post("/contact", async (req, res, next) => {
|
||||
let error = new Error("Email not found");
|
||||
error.status = 400;
|
||||
return next(error);
|
||||
}
|
||||
else{
|
||||
} else {
|
||||
//console.log(Res);
|
||||
sendContactEmail(req.body.email, req.body.name, req.body.message);
|
||||
return res.json({
|
||||
message: "Email sent successfully",
|
||||
});
|
||||
|
||||
}
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
@ -76,47 +80,46 @@ router.post("/contact", async (req, res, next) => {
|
||||
|
||||
//reset
|
||||
router.post("/checkemail", async (req, res, next) => {
|
||||
try{
|
||||
|
||||
try {
|
||||
let Res = await checkEmail(req.body.email);
|
||||
if (!Res) {
|
||||
let error = new Error("Email not found");
|
||||
error.status = 400;
|
||||
return next(error);
|
||||
}
|
||||
else{
|
||||
} else {
|
||||
//user info lookup
|
||||
let data = await checkEmailDetails(req.body.email);
|
||||
//console.log(data);
|
||||
//token generation and insert into token table
|
||||
//token generation and insert into token table
|
||||
const token = await generateUUID();
|
||||
|
||||
let tokenRes = await addPasswordResetToken(data , token);
|
||||
let tokenRes = await addPasswordResetToken(data, token);
|
||||
|
||||
//email user with temp token link
|
||||
if (!tokenRes) return false;
|
||||
|
||||
//email logic to send reset password link
|
||||
|
||||
sendResetPasswordEmail(req.body.email, token);
|
||||
|
||||
return res.json({
|
||||
message: "Reset Password Link has successfully sent to your email!",
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
}catch (error){
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
next(error);
|
||||
}
|
||||
});
|
||||
|
||||
router.get("/resetpassword/:token", async (req, res, next) => {
|
||||
//pass token to reset password page
|
||||
|
||||
});
|
||||
|
||||
//reset password
|
||||
router.post("/resetpassword", async (req, res, next) => {
|
||||
});
|
||||
|
||||
module.exports = router;
|
||||
|
||||
|
||||
/*
|
||||
router.get('/login/resetpassword/:token', async function(req, res, next){
|
||||
res.render('reset_password', {});
|
||||
});
|
||||
|
||||
*/
|
||||
|
Loading…
x
Reference in New Issue
Block a user