diff --git a/controllers/userController.js b/controllers/userController.js index 4c58968..4548488 100644 --- a/controllers/userController.js +++ b/controllers/userController.js @@ -6,6 +6,7 @@ import sendToken from "../Utils/jwtToken.js" import sendEmail from "../Utils/sendEmail.js" import crypto from "crypto" import cloudinary from "cloudinary" +import generator from 'generate-password' // 1.Register a User export const registerUser = catchAsyncErrors(async (req, res, next) => { @@ -90,15 +91,19 @@ export const forgotPassword = catchAsyncErrors(async (req, res, next) => { //create link for send mail // const resetPasswordUrl = `http://localhost:5000/api/v1/user/password/reset/${resetToken}` //send from localhost //send from anyhost - const resetPasswordUrl = `${req.protocol}://${req.get( - "host" - )}/api/v1/user/password/reset/${resetToken}`; + // const resetPasswordUrl = `${req.protocol}://${req.get( + // "host" + // )}/api/v1/user/password/reset/${resetToken}`; //const resetPasswordUrl = `${process.env.FRONTEND_URL}:/api/user/password/reset/${resetToken}`; //const resetPasswordUrl = `${process.env.FRONTEND_URL}/password/reset/${resetToken}`; - - - const message = `Your password reset token are :- \n\n ${resetPasswordUrl} \n\nIf you have not requested this email then, please ignore it.`; - + const password = generator.generate({ + length: 10, + numbers: true + }); + user.password = password; + await user.save() + // const message = `Your password reset token are :- \n\n ${resetPasswordUrl} \n\nyour new password is:${password}\n\nIf you have not requested this email then, please ignore it.`; + const message = `your new password is:${password}\n\nIf you have not requested this email then, please ignore it.` try { await sendEmail({ email: user.email, diff --git a/package-lock.json b/package-lock.json index 1bdf485..0d2f82e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17,6 +17,7 @@ "dotenv": "^16.0.1", "express": "^4.18.1", "express-fileupload": "^1.4.0", + "generate-password": "^1.7.0", "jsonwebtoken": "^8.5.1", "mongoose": "^6.3.5", "multer": "^1.4.5-lts.1", @@ -704,6 +705,11 @@ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, + "node_modules/generate-password": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/generate-password/-/generate-password-1.7.0.tgz", + "integrity": "sha512-WPCtlfy0jexf7W5IbwxGUgpIDvsZIohbI2DAq2Q6TSlKKis+G4GT9sxvPxrZUGL8kP6WUXMWNqYnxY6DDKAdFA==" + }, "node_modules/get-intrinsic": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", @@ -2400,6 +2406,11 @@ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, + "generate-password": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/generate-password/-/generate-password-1.7.0.tgz", + "integrity": "sha512-WPCtlfy0jexf7W5IbwxGUgpIDvsZIohbI2DAq2Q6TSlKKis+G4GT9sxvPxrZUGL8kP6WUXMWNqYnxY6DDKAdFA==" + }, "get-intrinsic": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", diff --git a/package.json b/package.json index 7a4fa46..6739b84 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,7 @@ "dotenv": "^16.0.1", "express": "^4.18.1", "express-fileupload": "^1.4.0", + "generate-password": "^1.7.0", "jsonwebtoken": "^8.5.1", "mongoose": "^6.3.5", "multer": "^1.4.5-lts.1",