mirror of
https://github.com/C4illin/ConvertX.git
synced 2026-06-28 06:55:48 +00:00
Fixes email update validation logic
This commit is contained in:
@@ -599,11 +599,11 @@ const app = new Elysia({
|
||||
const values = [];
|
||||
|
||||
if (body.email) {
|
||||
// Enforce unique email constraint
|
||||
const existingUser = await db.query(
|
||||
"SELECT id FROM users WHERE email = ?",
|
||||
).get(body.email);
|
||||
if (existingUser && existingUser.id !== user.id) {
|
||||
const existingUser = await db
|
||||
.query("SELECT id FROM users WHERE email = ?")
|
||||
.as(User)
|
||||
.get(body.email);
|
||||
if (existingUser && existingUser.id.toString() !== user.id) {
|
||||
set.status = 409;
|
||||
return { message: "Email already in use." };
|
||||
}
|
||||
@@ -615,9 +615,11 @@ const app = new Elysia({
|
||||
values.push(await Bun.password.hash(body.newPassword));
|
||||
}
|
||||
|
||||
db.query(
|
||||
`UPDATE users SET ${fields.map((field) => `${field}=?`).join(", ")} WHERE id=?`,
|
||||
).run(...values, user.id);
|
||||
if (fields.length < 1) {
|
||||
db.query(
|
||||
`UPDATE users SET ${fields.map((field) => `${field}=?`).join(", ")} WHERE id=?`,
|
||||
).run(...values, user.id);
|
||||
}
|
||||
|
||||
return redirect(`${WEBROOT}/`, 302);
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user