login api improvements
This commit is contained in:
@@ -81,7 +81,9 @@ function MessagesArea({
|
||||
msg.sender !== username
|
||||
) {
|
||||
setContactsList((prevContacts) => {
|
||||
if (!prevContacts.some((c) => c.username === msg.sender)) {
|
||||
if (
|
||||
!prevContacts.some((c) => c.conversation_id === msg.conversation_id)
|
||||
) {
|
||||
sendContact(msg.sender);
|
||||
return [
|
||||
...prevContacts,
|
||||
|
||||
@@ -37,6 +37,7 @@ export default function Login() {
|
||||
setMessage('');
|
||||
setTimeout(() => {
|
||||
setMessage(err.response.data.message);
|
||||
setIsLoading(false);
|
||||
}, 100);
|
||||
|
||||
console.error(err);
|
||||
|
||||
@@ -135,14 +135,14 @@ async function insertUser(username, passwordHash) {
|
||||
|
||||
async function getUserId(username) {
|
||||
const query = `
|
||||
SELECT user_id FROM Accounts
|
||||
WHERE username = $1;
|
||||
SELECT user_id, username AS dbUsername FROM Accounts
|
||||
WHERE LOWER(username) = $1;
|
||||
`;
|
||||
try {
|
||||
const result = await client.query(query, [username]);
|
||||
if (result.rows.length > 0) {
|
||||
console.log("GETUSERID: ", result.rows[0].user_id);
|
||||
return result.rows[0].user_id;
|
||||
console.log("GETUSERID: ", result.rows[0]);
|
||||
return result.rows[0];
|
||||
} else {
|
||||
console.log("No user found with username: ", username);
|
||||
return null;
|
||||
@@ -223,7 +223,7 @@ async function addMemberToGroupByUsername(conversation_id, username) {
|
||||
WITH user_id_query AS (
|
||||
SELECT user_id
|
||||
FROM Accounts
|
||||
WHERE username = $1
|
||||
WHERE LOWER(username) = $1
|
||||
LIMIT 1
|
||||
),
|
||||
insert_membership AS (
|
||||
@@ -411,13 +411,13 @@ async function insertContact(userUsername, receiverUsername, read) {
|
||||
WITH sender AS (
|
||||
SELECT user_id
|
||||
FROM Accounts
|
||||
WHERE username = $1
|
||||
WHERE LOWER(username) = $1
|
||||
LIMIT 1
|
||||
),
|
||||
receiver AS (
|
||||
SELECT user_id
|
||||
FROM Accounts
|
||||
WHERE username = $2
|
||||
WHERE LOWER(username) = $2
|
||||
LIMIT 1
|
||||
),
|
||||
existing_conversation AS (
|
||||
|
||||
@@ -149,7 +149,7 @@ app.post("/api/auth/signup", async (req, res) => {
|
||||
|
||||
app.post("/api/auth/login", async (req, res) => {
|
||||
try {
|
||||
const username = req.body.username?.trim().toLowerCase();
|
||||
const username = req.body.username?.trim();
|
||||
const password = req.body.password;
|
||||
|
||||
if (!isValidUsername(username)) {
|
||||
@@ -181,8 +181,8 @@ app.post("/api/auth/login", async (req, res) => {
|
||||
res.status(401).json({ message: "Invalid password" });
|
||||
return;
|
||||
}
|
||||
const user_id = await getUserId(username);
|
||||
const token = generateJwtToken(username, user_id);
|
||||
const { user_id, dbusername } = await getUserId(username);
|
||||
const token = generateJwtToken(dbusername, user_id);
|
||||
res.cookie("token", token, {
|
||||
maxAge: 30 * 24 * 60 * 60 * 1000, // 30 days
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user