Commit 8d1db9a1 authored by Danny Liu's avatar Danny Liu
Browse files

feat: api endpoint to receive profile_image_uirl on signup

parent 6bb299ae
...@@ -82,6 +82,7 @@ class SignupForm(BaseModel): ...@@ -82,6 +82,7 @@ class SignupForm(BaseModel):
name: str name: str
email: str email: str
password: str password: str
profile_image_url: str
class AuthsTable: class AuthsTable:
...@@ -90,7 +91,7 @@ class AuthsTable: ...@@ -90,7 +91,7 @@ class AuthsTable:
self.db.create_tables([Auth]) self.db.create_tables([Auth])
def insert_new_auth( def insert_new_auth(
self, email: str, password: str, name: str, role: str = "pending" self, email: str, password: str, name: str, profile_image_url: str, role: str = "pending"
) -> Optional[UserModel]: ) -> Optional[UserModel]:
log.info("insert_new_auth") log.info("insert_new_auth")
...@@ -101,7 +102,7 @@ class AuthsTable: ...@@ -101,7 +102,7 @@ class AuthsTable:
) )
result = Auth.create(**auth.model_dump()) result = Auth.create(**auth.model_dump())
user = Users.insert_new_user(id, name, email, role) user = Users.insert_new_user(id, name, email, profile_image_url, role)
if result and user: if result and user:
return user return user
......
...@@ -30,7 +30,7 @@ class UserModel(BaseModel): ...@@ -30,7 +30,7 @@ class UserModel(BaseModel):
name: str name: str
email: str email: str
role: str = "pending" role: str = "pending"
profile_image_url: str = "/user.png" profile_image_url: str
timestamp: int # timestamp in epoch timestamp: int # timestamp in epoch
...@@ -57,7 +57,7 @@ class UsersTable: ...@@ -57,7 +57,7 @@ class UsersTable:
self.db.create_tables([User]) self.db.create_tables([User])
def insert_new_user( def insert_new_user(
self, id: str, name: str, email: str, role: str = "pending" self, id: str, name: str, email: str, profile_image_url: str, role: str = "pending",
) -> Optional[UserModel]: ) -> Optional[UserModel]:
user = UserModel( user = UserModel(
**{ **{
...@@ -65,7 +65,7 @@ class UsersTable: ...@@ -65,7 +65,7 @@ class UsersTable:
"name": name, "name": name,
"email": email, "email": email,
"role": role, "role": role,
"profile_image_url": "/user.png", "profile_image_url": profile_image_url,
"timestamp": int(time.time()), "timestamp": int(time.time()),
} }
) )
......
...@@ -146,7 +146,7 @@ async def signup(request: Request, form_data: SignupForm): ...@@ -146,7 +146,7 @@ async def signup(request: Request, form_data: SignupForm):
) )
hashed = get_password_hash(form_data.password) hashed = get_password_hash(form_data.password)
user = Auths.insert_new_auth( user = Auths.insert_new_auth(
form_data.email.lower(), hashed, form_data.name, role form_data.email.lower(), hashed, form_data.name, form_data.profile_image_url, role
) )
if user: if user:
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment