43 lines
1.4 KiB
Python
43 lines
1.4 KiB
Python
# DRF Rack
|
|
# Библиотека классов расширений для Django REST Framework
|
|
#
|
|
# Автор: Николай В. Анохин <n.anokhin@xeaf.net>
|
|
# Все права защищены. Лицензия: MIT
|
|
|
|
"""
|
|
Описание класса AuthRejectReason
|
|
"""
|
|
|
|
from django.utils.translation import gettext as _
|
|
|
|
from net.xeaf.rack.core import CoreEnum
|
|
|
|
|
|
class AuthRejectReason(CoreEnum):
|
|
"""
|
|
Перечисление причин отказа в авторизации
|
|
"""
|
|
|
|
INVALID_USERNAME_OR_PASSWORD = "invalid_username_or_password"
|
|
""" Некорректный логин или пароль """
|
|
|
|
ACCOUNT_IS_NOT_ACTIVE = "account_is_not_active"
|
|
""" Аккаунт не активен """
|
|
|
|
REGISTRATION_IS_NOT_COMPLETE = "registration_is_not_complete"
|
|
""" Регистрация не завершена """
|
|
|
|
@classmethod
|
|
def get_message(cls, reason: str) -> str:
|
|
"""
|
|
Возвращает текст сообщения по причине отказа в авторизации
|
|
"""
|
|
|
|
if reason == cls.INVALID_USERNAME_OR_PASSWORD:
|
|
return _("rack.errors.invalid_username_or_password")
|
|
elif reason == cls.ACCOUNT_IS_NOT_ACTIVE:
|
|
return _("rack.errors.account_is_not_active")
|
|
elif reason == cls.REGISTRATION_IS_NOT_COMPLETE:
|
|
return _("rack.errors.registration_is_not_complete")
|
|
return ""
|