Compare commits

..

No commits in common. "ef0fab1178cb6812010d7e45d9f98778704b3792" and "4d18dd3845a0816a7eb4605a1c025b60f8bcd2ae" have entirely different histories.

2 changed files with 12 additions and 18 deletions

View File

@ -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)

View File

@ -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")