leaguemanager.services.account.email_verification

Module Contents

Classes

EmailVerificationService

Handles email verification operations.

EmailVerificationAsyncService

Handles email verification operations asynchronously.

Data

__all__

settings

API

leaguemanager.services.account.email_verification.__all__

[‘EmailVerificationService’, ‘EmailVerificationAsyncService’]

leaguemanager.services.account.email_verification.settings

‘get_settings(…)’

class leaguemanager.services.account.email_verification.EmailVerificationService

Bases: leaguemanager.services.base.SQLAlchemySyncRepositoryService

Handles email verification operations.

class Repo

Bases: advanced_alchemy.repository.SQLAlchemySyncRepository[leaguemanager.models.EmailVerificationToken]

Email verification repository.

model_type

None

repository_type

None

class leaguemanager.services.account.email_verification.EmailVerificationAsyncService

Bases: leaguemanager.services.base.SQLAlchemyAsyncRepositoryService

Handles email verification operations asynchronously.

class Repo

Bases: advanced_alchemy.repository.SQLAlchemyAsyncRepository[leaguemanager.models.EmailVerificationToken]

Email verification repository.

model_type

None

repository_type

None

match_fields

[‘token’]

async create_verification_token(user_id: uuid.UUID, email: str) leaguemanager.models.EmailVerificationToken

Create a new email verification token for a user.

Args: user_id: The user’s UUID email: The email address to verify

Returns: The created EmailVerificationToken instance

async verify_token(token: str) leaguemanager.models.EmailVerificationToken

Verify a token and mark it as used.

Args: token: The verification token string

Returns: The EmailVerificationToken instance if valid

Raises: HTTPException: If token is invalid, expired, or already used

async invalidate_user_tokens(user_id: uuid.UUID, email: str | None = None) None

Invalidate all tokens for a user, optionally filtered by email.

Args: user_id: The user’s UUID email: Optional email to filter tokens

async cleanup_expired_tokens() int

Remove expired tokens from the database.

Returns: Number of tokens removed