Added guild join event
This commit is contained in:
		| @@ -21,6 +21,7 @@ from modules.base.command.unregister_group import UnregisterGroup | ||||
| from modules.base.command.user_group import UserGroup | ||||
| from modules.base.events.base_on_command_error_event import BaseOnCommandErrorEvent | ||||
| from modules.base.events.base_on_command_event import BaseOnCommandEvent | ||||
| from modules.base.events.base_on_guild_join_event import BaseOnGuildJoinEvent | ||||
| from modules.base.events.base_on_member_join_event import BaseOnMemberJoinEvent | ||||
| from modules.base.events.base_on_member_remove_event import BaseOnMemberRemoveEvent | ||||
| from modules.base.events.base_on_message_delete_event import BaseOnMessageDeleteEvent | ||||
| @@ -103,3 +104,7 @@ class BaseModule(ModuleABC): | ||||
|             DiscordEventTypesEnum.on_scheduled_event_update.value, | ||||
|             BaseOnScheduledEventUpdateEvent, | ||||
|         ) | ||||
|         self._dc.add_event( | ||||
|             DiscordEventTypesEnum.on_guild_join.value, | ||||
|             BaseOnGuildJoinEvent, | ||||
|         ) | ||||
|   | ||||
							
								
								
									
										38
									
								
								kdb-bot/src/modules/base/events/base_on_guild_join_event.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								kdb-bot/src/modules/base/events/base_on_guild_join_event.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,38 @@ | ||||
| from cpl_core.database.context import DatabaseContextABC | ||||
| from cpl_core.logging import LoggerABC | ||||
| from cpl_discord.events import OnGuildJoinABC | ||||
| from cpl_discord.service import DiscordBotServiceABC | ||||
| from discord import Guild | ||||
|  | ||||
| from bot_data.abc.server_config_repository_abc import ServerConfigRepositoryABC | ||||
| from bot_data.abc.server_repository_abc import ServerRepositoryABC | ||||
| from bot_data.model.server import Server | ||||
| from bot_data.service.seeder_service import SeederService | ||||
|  | ||||
|  | ||||
| class BaseOnGuildJoinEvent(OnGuildJoinABC): | ||||
|     def __init__( | ||||
|         self, | ||||
|         logger: LoggerABC, | ||||
|         bot: DiscordBotServiceABC, | ||||
|         servers: ServerRepositoryABC, | ||||
|         server_config: ServerConfigRepositoryABC, | ||||
|         db: DatabaseContextABC, | ||||
|         seeder: SeederService, | ||||
|     ): | ||||
|         OnGuildJoinABC.__init__(self) | ||||
|  | ||||
|         self._logger = logger | ||||
|         self._bot = bot | ||||
|         self._servers = servers | ||||
|         self._server_config = server_config | ||||
|         self._db = db | ||||
|         self._seeder = seeder | ||||
|  | ||||
|     async def on_guild_join(self, guild: Guild): | ||||
|         if self._servers.find_server_by_discord_id(guild.id) is None: | ||||
|             self._servers.add_server(Server(guild.id)) | ||||
|             self._db.save_changes() | ||||
|  | ||||
|         await self._seeder.seed() | ||||
|         self._logger.debug(__name__, "Seeded technician config") | ||||
		Reference in New Issue
	
	Block a user