Add user update endpoint

This commit is contained in:
Esa Kataja
2025-05-16 14:31:03 +03:00
parent a6f61a3c5b
commit c43b6f2e54
2 changed files with 5 additions and 4 deletions
+4 -4
View File
@@ -47,7 +47,6 @@ async def update_user(user: UpdateUser, request: Request):
avatar_id = user.avatar_id if user.avatar_id else None
email = user.email if user.email else None
password = hash_password(user.password) if user.password else None
updated_at = datetime.now()
with get_connection() as conn:
# Build query dynamically based on non-None values
@@ -63,14 +62,15 @@ async def update_user(user: UpdateUser, request: Request):
params.append(email)
if password is not None:
update_fields.append("password = ?")
update_fields.append("hashed_password = ?")
params.append(password)
# Only proceed if there are fields to update
if update_fields:
query = f'UPDATE "User" SET {", ".join(update_fields)}, updated_at = ? WHERE id = ?'
params.append(updated_at)
query = f'UPDATE "User" SET {", ".join(update_fields)}, updated_at = CURRENT_TIMESTAMP WHERE id = ?'
params.append(user_id)
logger.debug(f"Executing query: {query}")
logger.debug(f"Query parameters: {params}")
conn.execute(query, params)
logger.debug(