summaryrefslogtreecommitdiffstats
path: root/server
diff options
context:
space:
mode:
Diffstat (limited to 'server')
-rw-r--r--server/middleware/redirectLogged.js1
-rw-r--r--server/models/Session.js1
-rw-r--r--server/routes/user.js25
3 files changed, 24 insertions, 3 deletions
diff --git a/server/middleware/redirectLogged.js b/server/middleware/redirectLogged.js
index 7d06ece..4e15aa8 100644
--- a/server/middleware/redirectLogged.js
+++ b/server/middleware/redirectLogged.js
@@ -3,7 +3,6 @@ const User = require('../models/User');
const Session = require('../models/Session');
const redirectLogged = async (req, res, next) => {
- console.log('redirectLogged')
try {
const token = req.cookies.token || '';
if (!token) {
diff --git a/server/models/Session.js b/server/models/Session.js
index 06a4369..271c330 100644
--- a/server/models/Session.js
+++ b/server/models/Session.js
@@ -15,7 +15,6 @@ const sessionSchema = new mongoose.Schema({
sessionSchema.methods.setAccessDate = function (user) {
this.lastAccess = Date.now();
- console.log('refreshing time in db')
this.save();
}
diff --git a/server/routes/user.js b/server/routes/user.js
index ee216ac..454a900 100644
--- a/server/routes/user.js
+++ b/server/routes/user.js
@@ -4,15 +4,36 @@ const Session = require('../models/Session');
const auth = require('../middleware/auth');
const jwt = require('jsonwebtoken');
+// Get user data
router.get('/me', auth, (req, res) => {
if (req.loggedUser) {
- console.log(req.loggedUser)
return res.json(req.loggedUser);
}
return res.clearCookie('token').redirect('/login');
})
+// Set Language
+router.post('/language', auth, async (req, res) => {
+ try {
+ const user = await User.findById(req.loggedUser.userId);
+ if (!user) {
+ throw new Error();
+ }
+
+ user.language = req.body.language;
+ await user.save();
+
+ const session = await Session.findById(req.sessionId);
+ session.generateJwtToken(user);
+
+ res.status(204).send();
+ } catch(err) {
+ res.status(400).send('Could not save the language settings.');
+ }
+});
+
+// Register new user
router.post('/register', async (req, res) => {
const user = new User(req.body);
@@ -30,6 +51,7 @@ router.post('/register', async (req, res) => {
}
});
+// Login user
router.post('/login', async (req, res) => {
try {
const user = await User.findByCredentials(req.body.email, req.body.password);
@@ -61,6 +83,7 @@ router.post('/login', async (req, res) => {
}
});
+// Logout user
router.post('/logout', auth, async (req, res) => {
try {
await Session.findByIdAndRemove(req.sessionId);