groups and reset
This commit is contained in:
@@ -2,7 +2,8 @@
|
||||
|
||||
const router = require('express').Router();
|
||||
const {User} = require('../models/user');
|
||||
const {Auth, AuthToken} = require('../models/auth');
|
||||
const {Auth, AuthToken} = require('../models/auth');
|
||||
const {PasswordResetToken} = require('../models/token');
|
||||
|
||||
|
||||
router.post('/login', async function(req, res, next){
|
||||
@@ -11,6 +12,7 @@ router.post('/login', async function(req, res, next){
|
||||
return res.json({
|
||||
login: true,
|
||||
token: auth.token.token,
|
||||
message:`${req.body.uid} logged in!`,
|
||||
});
|
||||
}catch(error){
|
||||
next(error);
|
||||
@@ -29,6 +31,36 @@ router.all('/logout', async function(req, res, next){
|
||||
}
|
||||
});
|
||||
|
||||
router.post('/resetpassword', async function(req, res, next){
|
||||
try{
|
||||
let sent = await User.passwordReset(`${req.protocol}://${req.hostname}`, req.body.mail);
|
||||
|
||||
console.info('resetpassword for', req.body.mail, sent)
|
||||
|
||||
return res.json({
|
||||
message: 'If the emaill address is in our system, you will receive a message.'
|
||||
});
|
||||
}catch(error){
|
||||
next(error);
|
||||
}
|
||||
});
|
||||
|
||||
router.post('/resetpassword/:token', async function(req, res, next){
|
||||
try{
|
||||
let token = await PasswordResetToken.get(req.params.token);
|
||||
|
||||
if(token.is_valid && 86400000+Number(token.created_on) > (new Date).getTime()){
|
||||
let user = await User.get(token.created_by);
|
||||
await user.setPassword(req.body);
|
||||
return res.json({
|
||||
message: 'Password has been changed.'
|
||||
});
|
||||
}
|
||||
}catch(error){
|
||||
next(error);
|
||||
}
|
||||
});
|
||||
|
||||
router.post('/invite/:token/:mailToken', async function(req, res, next) {
|
||||
try{
|
||||
req.body.token = req.params.token;
|
||||
|
||||
Reference in New Issue
Block a user