from ..database.api import get_user_role from ..config.config import get_config yaml_load = get_config() class Roles: user = "USER" moderator = "MODERATOR" admin = "ADMIN" bot = "BOT" __roles = yaml_load["ROLES"] def __init__(self): self.user_role_id = self.__roles[self.user] self.moderator_role_id = self.__roles[self.moderator] self.admin_role_id = self.__roles[self.admin] self.bot_role_id = self.__roles[self.bot] async def check_admin_permission(self, user_id): match get_user_role(user_id): case self.admin_role_id: return True case _: return False async def check_moderator_permission(self, user_id): match get_user_role(user_id): case self.moderator_role_id: return True case _: return False async def get_role_name(self, role_id): match role_id: case self.admin_role_id: return self.admin case self.moderator_role_id: return self.moderator case self.user_role_id: return self.user case self.bot_role_id: return self.bot case _: raise ValueError(f"Нет роли с id={role_id}") async def get_user_permission(self, user_id): match get_user_role(user_id): case self.admin_role_id: return self.admin case self.moderator_role_id: return self.moderator case self.user_role_id: return self.user case self.bot_role_id: return self.bot case _: return None