Add login_return to on_after_login method (#1187)

This commit is contained in:
Téva KRIEF
2023-04-14 16:10:22 +02:00
committed by GitHub
parent bcae3e53ba
commit 4e426d6823
5 changed files with 12 additions and 4 deletions

View File

@@ -586,7 +586,10 @@ class BaseUserManager(Generic[models.UP, models.ID]):
return # pragma: no cover
async def on_after_login(
self, user: models.UP, request: Optional[Request] = None
self,
user: models.UP,
request: Optional[Request] = None,
login_return: Optional[Any] = None,
) -> None:
"""
Perform logic after user login.
@@ -594,7 +597,8 @@ class BaseUserManager(Generic[models.UP, models.ID]):
*You should overload this method to add your own logic.*
:param user: The user that is logging in
:param request: Optional FastAPI request that
:param request: Optional FastAPI request
:param login_return: Optional return of the login
triggered the operation, defaults to None.
"""
return # pragma: no cover

View File

@@ -68,7 +68,7 @@ def get_auth_router(
detail=ErrorCode.LOGIN_USER_NOT_VERIFIED,
)
login_return = await backend.login(strategy, user, response)
await user_manager.on_after_login(user, request)
await user_manager.on_after_login(user, request, login_return)
return login_return
logout_responses: OpenAPIResponseType = {

View File

@@ -149,7 +149,7 @@ def get_oauth_router(
# Authenticate
login_return = await backend.login(strategy, user, response)
await user_manager.on_after_login(user, request)
await user_manager.on_after_login(user, request, login_return)
return login_return
return router