var express = require('express'); var router = express.Router(); let JSONError = require('../helpers').JSONError; let Users = require('../database').Repositories.Users; /* GET users listing. */ router.get('/me', function(req, res, next) { console.log(req.user); res.send(req.user); }); /* post users login. */ router.post('/login', function(req, res, next) { const params = {...req.body}; const { username, password } = params; console.log(username); Users.login({username, password}). then((user) => { let { username, token } = user; res.send({username, token}); }). catch((e) => { console.log(e); res.status(400); res.send(JSONError("Bad Credentials")); }); }); /* post users register. */ router.post('/register', function(req, res, next) { const params = {...req.body}; const { username, password } = params; console.log(username); Users.register({username, password}). then((user) => res.send(user)). catch((e) => { console.log(e); res.status(400); res.send(JSONError("Bad Credentials")); }); }); /* post add friend. */ router.post('/addFriend/:id', function(req, res, next) { if(!req.user) { res.status(401); res.send(JSONError("I need token honey!")); return; } const friendID = req.params.id; let msg = 'Enjoy your new friendship!'; Users.getByID(friendID). then((user) => { if (!req.user.friends) { req.user.friends = [friendID]; return Users.save(req.user); } else if (req.user.friends.includes(friendID)) { msg = 'Already friends ^.^'; return 1; } else { req.user.friends.push(friendID); return Users.save(req.user); } }). then(() => res.send({ msg })). catch((e) => { console.log(e); res.status(400); res.send(JSONError("No such friend... :(")); }); }); module.exports = router;