/var/www/qr4y.com/server/delivery/api/controllers/auth
Edit: /var/www/qr4y.com/server/delivery/api/controllers/auth/reset_password.js (1111B)
const { isSet, isEmail, isPhone, isEmpty, minLength, isNumber } = require('../../utils/validator.util')
const { BadRequest, Forbidden, NotFound } = require('../../responseModels/errors')
module.exports = function ({ db, logger }) {
return async (req, res, next) => {
logger.child({ path: req.path, request: req.body }).info()
try {
// разбор и валидация запроса
const { email } = req.body
if (!isSet(email) || isEmpty(email)) {
throw new BadRequest({
code: 1003,
lang: req.user?.languageCode
})
}
// найти пользователя
const user = await db.user.findOne({ where: { email: email } })
if (!user) {
throw new BadRequest({
code: 1028,
lang: req.user?.languageCode
})
}
const act_code = RandomNum(100000,999999)
user.tempCode = act_code
await user.save()
result = await SERVICES.MailService.SendHtmlMail(user.email, 'QR Activation Code', 'QR Activation Code:
' + act_code + '')
return res.status(200).json({status: 'success', mail: result })
} catch (err) {
next(err)
}
}
}