fix user level

This commit is contained in:
“spicecat” 2022-07-22 15:24:47 -05:00
commit 76f0dd6883
4 changed files with 22 additions and 30 deletions

View file

@ -1,22 +0,0 @@
function getUserLevel(points) {
switch (points) {
case points > 10000:
return 7;
case points > 3000:
return 6;
case points > 1000:
return 5;
case points > 125:
return 4;
case points > 50:
return 3;
case points > 15:
return 2;
case points > 0:
return 1;
default:
return 0;
}
}
export { getUserLevel };

View file

@ -1,7 +1,6 @@
import { Buffer } from 'buffer';
import Cookies from 'js-cookie';
import { createEndpoint } from './api';
import { getUserLevel } from './getUserLevel';
const callUsersAPI = createEndpoint('/users');
@ -16,13 +15,10 @@ const login = async ({ username, password }) => {
`basic ${encoded}`
);
Cookies.set('token', token);
return { ...user, level: getUserLevel(user?.points) };
return { user };
};
const remember = async () => {
const { user } = await callUsersAPI('get', `/remember`);
return { user: { ...user, level: getUserLevel(user?.points) } };
};
const remember = async () => callUsersAPI('get', `/remember`);
const logout = async () => callUsersAPI('post', `/login`, { remember: false });

View file

@ -2,6 +2,7 @@ const mongoose = require('mongoose');
const jwt = require('jsonwebtoken');
const Token = require('../../db/models/Token');
const getUserLevel = require('../../utils/getUserLevel');
async function Login(req, res) {
const user = req.user;
@ -19,7 +20,15 @@ async function Login(req, res) {
user: user.username,
});
return res.send({ token: token.token, user });
return res.send({
token: token.token,
user: {
username: user.username,
email: user.email,
points: user.points,
level: getUserLevel(user.points),
}
});
}
module.exports = Login;

View file

@ -1,7 +1,16 @@
const getUserLevel = require('../../utils/getUserLevel');
async function Remember(req, res) {
const user = req.user;
return res.send({ user });
return res.send({
user: {
username: user.username,
email: user.email,
points: user.points,
level: getUserLevel(user.points),
}
});
}
module.exports = Remember;