2025-05-20 00:00:24 +03:00
|
|
|
|
"""
|
|
|
|
|
|
Классы состояния авторизации
|
|
|
|
|
|
"""
|
|
|
|
|
|
|
2025-06-02 02:56:11 +03:00
|
|
|
|
|
2025-05-20 00:00:24 +03:00
|
|
|
|
class AuthState:
|
|
|
|
|
|
"""
|
|
|
|
|
|
Класс для хранения информации о состоянии авторизации пользователя.
|
|
|
|
|
|
Используется в аутентификационных middleware и функциях.
|
|
|
|
|
|
"""
|
2025-05-29 12:37:39 +03:00
|
|
|
|
|
2025-06-02 02:56:11 +03:00
|
|
|
|
def __init__(self) -> None:
|
|
|
|
|
|
self.logged_in: bool = False
|
2025-08-17 16:33:54 +03:00
|
|
|
|
self.author_id: str | None = None
|
|
|
|
|
|
self.token: str | None = None
|
|
|
|
|
|
self.username: str | None = None
|
2025-06-02 02:56:11 +03:00
|
|
|
|
self.is_admin: bool = False
|
|
|
|
|
|
self.is_editor: bool = False
|
2025-08-17 16:33:54 +03:00
|
|
|
|
self.error: str | None = None
|
2025-05-29 12:37:39 +03:00
|
|
|
|
|
2025-06-02 02:56:11 +03:00
|
|
|
|
def __bool__(self) -> bool:
|
2025-05-20 00:00:24 +03:00
|
|
|
|
"""Возвращает True если пользователь авторизован"""
|
2025-05-29 12:37:39 +03:00
|
|
|
|
return self.logged_in
|