backend: login and logout

This commit is contained in:
muerwre 2018-11-30 10:50:37 +07:00
parent 8bba2ff1ba
commit 032821329b
12 changed files with 166 additions and 41 deletions

View file

@ -2,19 +2,19 @@ const { genRandomSequence } = require('../../utils/gen');
const { User } = require('../../models/User');
const generateGuestToken = () => {
const id = `guest:${genRandomSequence(16)}`;
const _id = `guest:${genRandomSequence(16)}`;
return User.find({ id }).then(user => {
return User.find({ _id }).then(user => {
if (user.length) return generateGuestToken();
return id;
return _id;
});
};
const generateUser = (id, role = 'guest') => {
const generateUser = (_id, role = 'guest') => {
const token = `seq:${genRandomSequence(32)}`;
return { id, token, role };
return { _id, token, role };
};
const saveUser = user => {
@ -37,7 +37,7 @@ const generateGuest = async () => {
.then(generateUser);
const random_url = await generateRandomUrl();
return { ...user, random_url };
return { ...user, random_url, first_name: '', last_name: '', photo: '' };
};
module.exports = async (req, res) => {