Add JavaScript files and edit profile CSS

1) finished edit profile with delete profile
This commit is contained in:
newtbot
2024-01-23 01:44:11 +08:00
parent d819ac71b2
commit 5b262eb803
14 changed files with 296 additions and 334 deletions

View File

@ -12,22 +12,18 @@ const {
//getuser
//api/v0/user/me
async function getUserID(userid) {
//console.log(userid);
//console.log(userid.id);
let userRes = await userModel.findByPk(userid.id, {
attributes: {
exclude: ["password"],
},
});
//console.log(userid);
//console.log(userid.id);
let userRes = await userModel.findByPk(userid.id, {
attributes: {
exclude: ["password"],
},
});
if (!userRes) return false;
return userRes;
if (!userRes) return false;
return userRes;
}
//api/v0/auth/register
/* Registering new user
1) req.body is taken from html form or wtv
@ -39,8 +35,8 @@ async function addUser(user) {
let hash = await hashPassword(user.password);
const addRes = await userModel.create({
firstname: user.firstname,
lastname: user.lastname,
firstname: user.firstname,
lastname: user.lastname,
username: user.username,
password: hash,
email: user.email,
@ -56,32 +52,32 @@ async function addUser(user) {
//api/v0/auth/login
async function loginUser(user) {
//console.log(user);
//look up username or email in db
const userRes = await userModel.findOne({
where: {
[Op.or]: [
{
username: user.username,
},
{
email: user.username,
},
],
},
});
// Make sure user exists
if (!userRes) return false;
// Compare passwords
let match = await comparePassword(user.password, userRes.password);
if (!match) return false;
//console.log('loginUser', userRes.id, userRes.username);
//console.log(user);
//look up username or email in db
const userRes = await userModel.findOne({
where: {
[Op.or]: [
{
username: user.username,
},
{
email: user.username,
},
],
},
});
// Make sure user exists
if (!userRes) return false;
//generate token
let token = await addAPIKey(userRes.id, "auto-generated");
// Compare passwords
let match = await comparePassword(user.password, userRes.password);
if (!match) return false;
//console.log('loginUser', userRes.id, userRes.username);
return { token: token, userid: userRes.id, username: userRes.username };
//generate token
let token = await addAPIKey(userRes.id, "auto-generated");
return { token: token, userid: userRes.id, username: userRes.username };
}
/*
@ -108,31 +104,53 @@ async function addAPIKey(userId, permission) {
return token.id + "-" + hashtoken;
}
//api/v0/user/logout
async function deleteUserToken(token) {
//get row id
let splitAuthToken = token.split("-");
let rowid = splitAuthToken[0];
//console.log(rowid);
//delete from db
let delRes = await apikeyModel.destroy({
where: {
id: rowid,
},
});
if (!delRes) return false;
return true;
//api/v0/user/update
async function updateProfile(user, body) {
if (!body.password) {
let updateUser = await userModel.update(
{
firstname: body.first_name,
lastname: body.last_name,
username: body.username,
email: body.email,
address: body.address,
phone: body.phone,
},
{
where: {
id: user.id,
},
}
);
if (!updateUser) return false;
return true;
} else {
let hash = await hashPassword(body.password);
let updateUser = await userModel.update(
{
firstname: body.first_name,
lastname: body.last_name,
username: body.username,
email: body.email,
address: body.address,
phone: body.phone,
password: hash,
},
{
where: {
id: user.id,
},
}
);
if (!updateUser) return false;
return true;
}
}
module.exports = {
getUserID,
getUserID,
addUser,
loginUser,
updateProfile,
addAPIKey,
deleteUserToken,
};