Added session purge, email templates, email sending, and fixed user bugs
This commit is contained in:
@@ -16,6 +16,16 @@ let User = require('./user.model');
|
||||
409 - Account already exists
|
||||
*/
|
||||
userRoutes.route('/create').post((req, res) => {
|
||||
if (!req.body) {
|
||||
res.status(401).send("Missing body");
|
||||
return;
|
||||
} else if (!req.body.email || !req.body.password || !req.body.name) {
|
||||
res.status(401).send("Missing body");
|
||||
return;
|
||||
} else if (req.body.email == "" || req.body.password == "" || req.body.name == "") {
|
||||
res.status(401).send("Empty fields");
|
||||
return;
|
||||
}
|
||||
console.log(req.body);
|
||||
let u = new User(req.body);
|
||||
// TODO: Look for a different encryption method that can scale more easily
|
||||
@@ -56,22 +66,32 @@ userRoutes.route('/create').post((req, res) => {
|
||||
401 - Incorrect
|
||||
*/
|
||||
userRoutes.route('/login').post((req, res) => {
|
||||
if (!req.body) {
|
||||
res.status(401).send("Missing body");
|
||||
return;
|
||||
} else if (!req.body.email || !req.body.password) {
|
||||
res.status(401).send("Missing body");
|
||||
return;
|
||||
} else if (req.body.email == "" || req.body.password == "") {
|
||||
res.status(401).send("Empty fields");
|
||||
return;
|
||||
}
|
||||
User.findOne({ email: req.body.email }, (err, u) => {
|
||||
if (err) {
|
||||
console.log(err);
|
||||
res.status(500);
|
||||
res.status(500).send("Error logging in user");
|
||||
return;
|
||||
}
|
||||
|
||||
if (!u) {
|
||||
res.status(401);
|
||||
res.status(401).send("No user exists with that email");
|
||||
return;
|
||||
}
|
||||
|
||||
bcrypt.compare(req.body.password, u.password, (err, result) => {
|
||||
if (err) {
|
||||
console.log(err);
|
||||
res.status(500);
|
||||
res.status(500).send("Error logging in user");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -83,13 +103,13 @@ userRoutes.route('/login').post((req, res) => {
|
||||
|
||||
s.save()
|
||||
.then(() => {
|
||||
res.json(u);
|
||||
res.json(s);
|
||||
})
|
||||
.catch(() => {
|
||||
res.status(500);
|
||||
res.status(500).send("Error logging in user");
|
||||
});
|
||||
} else {
|
||||
res.status(401);
|
||||
res.status(401).send("Incorrect password");
|
||||
}
|
||||
});
|
||||
|
||||
@@ -103,15 +123,15 @@ userRoutes.route('/login').post((req, res) => {
|
||||
400 - No session exists
|
||||
*/
|
||||
userRoutes.route('/logout').post((req, res) => {
|
||||
Session.findOne({ userId: req.body._id }, (err, sess) => {
|
||||
Session.findOne({sessionId: req.body.sessionId}, (err, sess) => {
|
||||
if (err) {
|
||||
console.log(err);
|
||||
res.status(500);
|
||||
res.status(500).send("Error logging out");
|
||||
return;
|
||||
}
|
||||
|
||||
if (!sess) {
|
||||
res.status(400);
|
||||
res.status(400).send("No session found");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -120,7 +140,7 @@ userRoutes.route('/logout').post((req, res) => {
|
||||
res.status(201).send("Success deleting session");
|
||||
})
|
||||
.catch(() => {
|
||||
res.status(500);
|
||||
res.status(500).send("Error logging out");
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user