feat: handle pre-existing users in register_magic_link route
This commit is contained in:
parent
1c21d6d199
commit
0c3157ea3a
1 changed files with 7 additions and 3 deletions
|
|
@ -78,6 +78,10 @@ async def register_magic_link(request: Request, token: str) -> Response:
|
||||||
if link is None:
|
if link is None:
|
||||||
return HTMLResponse("<p>Invalid or expired registration link.</p>", status_code=400)
|
return HTMLResponse("<p>Invalid or expired registration link.</p>", status_code=400)
|
||||||
|
|
||||||
|
existing_user = await user_repo.get_by_username(link.username)
|
||||||
|
if existing_user is not None:
|
||||||
|
user = existing_user
|
||||||
|
else:
|
||||||
userid = await generate_unique_userid(user_repo)
|
userid = await generate_unique_userid(user_repo)
|
||||||
user = User(userid=userid, username=link.username, groups=["users"])
|
user = User(userid=userid, username=link.username, groups=["users"])
|
||||||
await user_repo.create(user)
|
await user_repo.create(user)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue