Compare commits
1 Commits
1.1.8
...
0ed93c56d0
Author | SHA1 | Date | |
---|---|---|---|
0ed93c56d0 |
@@ -79,14 +79,6 @@ class QueryABC(ObjectType):
|
|||||||
permissions: PermissionService = services.get_service(PermissionService)
|
permissions: PermissionService = services.get_service(PermissionService)
|
||||||
bot: DiscordBotServiceABC = services.get_service(DiscordBotServiceABC)
|
bot: DiscordBotServiceABC = services.get_service(DiscordBotServiceABC)
|
||||||
|
|
||||||
if user.auth_role == AuthRoleEnum.admin:
|
|
||||||
return True
|
|
||||||
|
|
||||||
for u in user.users:
|
|
||||||
guild = bot.get_guild(u.server.discord_id)
|
|
||||||
if permissions.is_member_technician(guild.get_member(u.discord_id)):
|
|
||||||
return True
|
|
||||||
|
|
||||||
access = False
|
access = False
|
||||||
if type(element) == Achievement:
|
if type(element) == Achievement:
|
||||||
element: Achievement = element
|
element: Achievement = element
|
||||||
|
@@ -17,7 +17,6 @@ from bot_data.abc.server_repository_abc import ServerRepositoryABC
|
|||||||
from bot_data.abc.user_joined_server_repository_abc import UserJoinedServerRepositoryABC
|
from bot_data.abc.user_joined_server_repository_abc import UserJoinedServerRepositoryABC
|
||||||
from bot_data.abc.user_repository_abc import UserRepositoryABC
|
from bot_data.abc.user_repository_abc import UserRepositoryABC
|
||||||
from bot_data.model.known_user import KnownUser
|
from bot_data.model.known_user import KnownUser
|
||||||
from bot_data.model.server_config import ServerConfig
|
|
||||||
from bot_data.model.user import User
|
from bot_data.model.user import User
|
||||||
from bot_data.model.user_joined_server import UserJoinedServer
|
from bot_data.model.user_joined_server import UserJoinedServer
|
||||||
from modules.permission.abc.permission_service_abc import PermissionServiceABC
|
from modules.permission.abc.permission_service_abc import PermissionServiceABC
|
||||||
@@ -73,6 +72,18 @@ class BaseOnMemberJoinEvent(OnMemberJoinABC):
|
|||||||
member,
|
member,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
for admin in self._permission_service.get_admins(member.guild.id):
|
||||||
|
await self._messenger.send_dm_message(
|
||||||
|
self._t.transform("modules.base.welcome_message_for_team").format(member.mention),
|
||||||
|
admin,
|
||||||
|
)
|
||||||
|
|
||||||
|
for moderator in self._permission_service.get_moderators(member.guild.id):
|
||||||
|
await self._messenger.send_dm_message(
|
||||||
|
self._t.transform("modules.base.welcome_message_for_team").format(member.mention),
|
||||||
|
moderator,
|
||||||
|
)
|
||||||
|
|
||||||
try:
|
try:
|
||||||
server = self._servers.get_server_by_discord_id(member.guild.id)
|
server = self._servers.get_server_by_discord_id(member.guild.id)
|
||||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.id)
|
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.id)
|
||||||
@@ -90,21 +101,9 @@ class BaseOnMemberJoinEvent(OnMemberJoinABC):
|
|||||||
except Exception as e:
|
except Exception as e:
|
||||||
self._logger.error(__name__, f"Cannot get user {member.id}", e)
|
self._logger.error(__name__, f"Cannot get user {member.id}", e)
|
||||||
|
|
||||||
async def _notify_team(self, member: discord.Member):
|
|
||||||
self._logger.debug(__name__, f"Notify team that a member left")
|
|
||||||
settings: ServerConfig = self._config.get_configuration(f"ServerConfig_{member.guild.id}")
|
|
||||||
channel = member.guild.get_channel(settings.team_channel_id)
|
|
||||||
await self._messenger.send_channel_message(
|
|
||||||
channel,
|
|
||||||
self._t.transform("modules.base.welcome_message_for_team").format(member.mention),
|
|
||||||
is_persistent=True,
|
|
||||||
)
|
|
||||||
self._logger.trace(__name__, f"Notified team that a member left")
|
|
||||||
|
|
||||||
@EventChecks.check_is_ready()
|
@EventChecks.check_is_ready()
|
||||||
async def on_member_join(self, member: discord.Member):
|
async def on_member_join(self, member: discord.Member):
|
||||||
self._logger.debug(__name__, f"Module {type(self)} started")
|
self._logger.debug(__name__, f"Module {type(self)} started")
|
||||||
await self._client_utils.check_default_role(member)
|
await self._client_utils.check_default_role(member)
|
||||||
self._check_for_known_user(member)
|
self._check_for_known_user(member)
|
||||||
await self._add_if_not_exists_user_async(member)
|
await self._add_if_not_exists_user_async(member)
|
||||||
await self._notify_team(member)
|
|
||||||
|
@@ -19,7 +19,6 @@ from bot_data.abc.user_repository_abc import UserRepositoryABC
|
|||||||
from bot_data.model.server_config import ServerConfig
|
from bot_data.model.server_config import ServerConfig
|
||||||
from bot_data.model.technician_config import TechnicianConfig
|
from bot_data.model.technician_config import TechnicianConfig
|
||||||
from bot_data.model.user import User
|
from bot_data.model.user import User
|
||||||
from modules.level.service.level_service import LevelService
|
|
||||||
from modules.permission.abc.permission_service_abc import PermissionServiceABC
|
from modules.permission.abc.permission_service_abc import PermissionServiceABC
|
||||||
|
|
||||||
|
|
||||||
@@ -37,7 +36,6 @@ class SyncXpGroup(DiscordCommandABC):
|
|||||||
permissions: PermissionServiceABC,
|
permissions: PermissionServiceABC,
|
||||||
settings: TechnicianConfig,
|
settings: TechnicianConfig,
|
||||||
db: DatabaseContextABC,
|
db: DatabaseContextABC,
|
||||||
level_service: LevelService,
|
|
||||||
):
|
):
|
||||||
DiscordCommandABC.__init__(self)
|
DiscordCommandABC.__init__(self)
|
||||||
|
|
||||||
@@ -52,7 +50,6 @@ class SyncXpGroup(DiscordCommandABC):
|
|||||||
self._permissions = permissions
|
self._permissions = permissions
|
||||||
self._settings = settings
|
self._settings = settings
|
||||||
self._db = db
|
self._db = db
|
||||||
self._level_service = level_service
|
|
||||||
|
|
||||||
self._logger.trace(__name__, f"Loaded command service: {type(self).__name__}")
|
self._logger.trace(__name__, f"Loaded command service: {type(self).__name__}")
|
||||||
|
|
||||||
@@ -96,7 +93,6 @@ class SyncXpGroup(DiscordCommandABC):
|
|||||||
user.xp = user_on_other_server.xp
|
user.xp = user_on_other_server.xp
|
||||||
self._users.update_user(user)
|
self._users.update_user(user)
|
||||||
self._db.save_changes()
|
self._db.save_changes()
|
||||||
await self._level_service.check_level(ctx.guild.get_member(user.discord_id))
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
self._logger.error(__name__, f"Cannot sync user {user.name}", e)
|
self._logger.error(__name__, f"Cannot sync user {user.name}", e)
|
||||||
|
|
||||||
@@ -148,7 +144,6 @@ class SyncXpGroup(DiscordCommandABC):
|
|||||||
self._logger.error(__name__, f"Cannot sync user {user.name}", e)
|
self._logger.error(__name__, f"Cannot sync user {user.name}", e)
|
||||||
|
|
||||||
await self._message_service.send_ctx_msg(ctx, self._t.transform("modules.technician.synced_message"))
|
await self._message_service.send_ctx_msg(ctx, self._t.transform("modules.technician.synced_message"))
|
||||||
await self._level_service.check_level(member)
|
|
||||||
self._logger.trace(__name__, f"Finished sync xp command")
|
self._logger.trace(__name__, f"Finished sync xp command")
|
||||||
|
|
||||||
@by_member.autocomplete("server_id")
|
@by_member.autocomplete("server_id")
|
||||||
|
Reference in New Issue
Block a user