Compare commits
	
		
			29 Commits
		
	
	
		
			1.1.0
			...
			481c0f881a
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 481c0f881a | |||
| a065c703eb | |||
| f72ea68f66 | |||
| 9226a1188e | |||
| c06cb02cd6 | |||
| 20747001b0 | |||
| b4be6b4ac2 | |||
| bd3dd39dbc | |||
| 9e0905d49e | |||
| 3c0719f50e | |||
| 77d3668a06 | |||
| e914c7d02b | |||
| b40f521212 | |||
| d40ca88cd5 | |||
| 1e63baed97 | |||
| cdfd151851 | |||
| 12fbc972d9 | |||
| dca939f025 | |||
| ed9b893c12 | |||
| 731f80bd5f | |||
| 85852bf2f0 | |||
| 2c3ef97a14 | |||
| 9ec65689ba | |||
| 44f5de32a5 | |||
| c016d5fc84 | |||
| 306ce2664c | |||
| 3ce5471ef4 | |||
| 4cdd6c05bf | |||
| d364ea1b4c | 
 Submodule kdb-bot/docker updated: 3107817939...7ae4783874
									
								
							| @@ -15,7 +15,7 @@ __title__ = "bot" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|     "Version": { | ||||
|       "Major": "1", | ||||
|       "Minor": "1", | ||||
|       "Micro": "0" | ||||
|       "Micro": "4" | ||||
|     }, | ||||
|     "Author": "Sven Heidemann", | ||||
|     "AuthorEmail": "sven.heidemann@sh-edraft.de", | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot.extension" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -12,6 +12,7 @@ from bot_data.migration.auto_role_migration import AutoRoleMigration | ||||
| from bot_data.migration.config_feature_flags_migration import ConfigFeatureFlagsMigration | ||||
| from bot_data.migration.config_migration import ConfigMigration | ||||
| from bot_data.migration.db_history_migration import DBHistoryMigration | ||||
| from bot_data.migration.default_role_migration import DefaultRoleMigration | ||||
| from bot_data.migration.initial_migration import InitialMigration | ||||
| from bot_data.migration.level_migration import LevelMigration | ||||
| from bot_data.migration.remove_stats_migration import RemoveStatsMigration | ||||
| @@ -48,3 +49,4 @@ class StartupMigrationExtension(StartupExtensionABC): | ||||
|         services.add_transient(MigrationABC, AchievementsMigration)  # 14.06.2023 #268 - 1.1.0 | ||||
|         services.add_transient(MigrationABC, ConfigMigration)  # 19.07.2023 #127 - 1.1.0 | ||||
|         services.add_transient(MigrationABC, ConfigFeatureFlagsMigration)  # 15.08.2023 #334 - 1.1.0 | ||||
|         services.add_transient(MigrationABC, DefaultRoleMigration)  # 24.09.2023 #360 - 1.1.3 | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_api" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_api.abc" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|     "Version": { | ||||
|       "Major": "1", | ||||
|       "Minor": "1", | ||||
|       "Micro": "0" | ||||
|       "Micro": "4" | ||||
|     }, | ||||
|     "Author": "", | ||||
|     "AuthorEmail": "", | ||||
|   | ||||
 Submodule kdb-bot/src/bot_api/config updated: 3d81c81c9e...b6ffed4da1
									
								
							| @@ -15,7 +15,7 @@ __title__ = "bot_api.configuration" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_api.controller" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_api.event" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_api.exception" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_api.filter" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_api.filter.discord" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_api.logging" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_api.model" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_api.model.discord" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_api.route" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_api.service" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -494,8 +494,13 @@ class AuthService(AuthServiceABC): | ||||
|             added_user = True | ||||
|  | ||||
|         db_user = self._auth_users.get_auth_user_by_email(user_dto.email) | ||||
|         if db_user.users.count() == 0: | ||||
|             members.for_each(lambda x: self._auth_users.add_auth_user_user_rel(AuthUserUsersRelation(db_user, x))) | ||||
|         user_ids = db_user.users.select(lambda x: x.id) | ||||
|  | ||||
|         for user in self._users.get_users_by_discord_id(dc_id): | ||||
|             if user.id in user_ids: | ||||
|                 continue | ||||
|  | ||||
|             self._auth_users.add_auth_user_user_rel(AuthUserUsersRelation(db_user, user)) | ||||
|  | ||||
|         if db_user.confirmation_id is not None and not added_user: | ||||
|             raise ServiceException(ServiceErrorCode.Forbidden, "E-Mail not verified") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_api.transformer" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_core" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_core.abc" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| from abc import ABC, abstractmethod | ||||
| from datetime import datetime | ||||
| from typing import Callable | ||||
| from typing import Callable, Union | ||||
|  | ||||
| import discord | ||||
| from cpl_query.extension import List | ||||
| @@ -67,3 +67,7 @@ class ClientUtilsABC(ABC): | ||||
|         self, discord_channel_id: int, discord_message_id: int, rule: AutoRoleRule, guild: discord.Guild | ||||
|     ): | ||||
|         pass | ||||
|  | ||||
|     @abstractmethod | ||||
|     async def check_default_role(self, member: Union[discord.User, discord.Member]): | ||||
|         pass | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|     "Version": { | ||||
|       "Major": "1", | ||||
|       "Minor": "1", | ||||
|       "Micro": "0" | ||||
|       "Micro": "4" | ||||
|     }, | ||||
|     "Author": "Sven Heidemann", | ||||
|     "AuthorEmail": "sven.heidemann@sh-edraft.de", | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_core.configuration" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_core.core_extension" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_core.events" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_core.exception" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_core.helper" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_core.logging" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_core.pipes" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_core.service" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| from datetime import datetime | ||||
| from typing import Callable | ||||
| from typing import Callable, Union | ||||
|  | ||||
| import discord | ||||
| from cpl_core.configuration import ConfigurationABC | ||||
| @@ -218,3 +218,20 @@ class ClientUtilsService(ClientUtilsABC): | ||||
|                 f"Cannot add reaction {rule.emoji_name} to message: {discord_message_id}", | ||||
|                 e, | ||||
|             ) | ||||
|  | ||||
|     async def check_default_role(self, member: Union[discord.User, discord.Member]): | ||||
|         try: | ||||
|             server = self._servers.get_server_by_discord_id(member.guild.id) | ||||
|             settings: ServerConfig = self._config.get_configuration(f"ServerConfig_{server.discord_id}") | ||||
|  | ||||
|             if settings.default_role_id is None: | ||||
|                 return | ||||
|  | ||||
|             default_role = member.guild.get_role(settings.default_role_id) | ||||
|             if default_role in member.roles: | ||||
|                 return | ||||
|  | ||||
|             await member.add_roles(default_role) | ||||
|  | ||||
|         except Exception as e: | ||||
|             self._logger.error(__name__, f"Cannot check for default role for member {member.id}", e) | ||||
|   | ||||
| @@ -6,6 +6,7 @@ from cpl_core.configuration import ConfigurationABC | ||||
| from cpl_core.database.context import DatabaseContextABC | ||||
| from cpl_discord.service import DiscordBotServiceABC | ||||
|  | ||||
| from bot_core.abc.client_utils_abc import ClientUtilsABC | ||||
| from bot_core.logging.database_logger import DatabaseLogger | ||||
| from bot_core.pipes.date_time_offset_pipe import DateTimeOffsetPipe | ||||
| from bot_data.abc.client_repository_abc import ClientRepositoryABC | ||||
| @@ -44,6 +45,7 @@ class DataIntegrityService: | ||||
|         user_joins_vc: UserJoinedVoiceChannelRepositoryABC, | ||||
|         user_joined_gs: UserJoinedGameServerRepositoryABC, | ||||
|         achievement_service: AchievementService, | ||||
|         client_utils: ClientUtilsABC, | ||||
|         dtp: DateTimeOffsetPipe, | ||||
|     ): | ||||
|         self._config = config | ||||
| @@ -60,6 +62,7 @@ class DataIntegrityService: | ||||
|         self._user_joins_vc = user_joins_vc | ||||
|         self._user_joined_gs = user_joined_gs | ||||
|         self._achievements = achievement_service | ||||
|         self._client_utils = client_utils | ||||
|         self._dtp = dtp | ||||
|  | ||||
|         self._is_for_shutdown = False | ||||
| @@ -382,10 +385,16 @@ class DataIntegrityService: | ||||
|  | ||||
|                 await self._achievements.validate_achievements_for_user(user) | ||||
|  | ||||
|     async def _check_default_role(self): | ||||
|         for guild in self._bot.guilds: | ||||
|             for member in guild.members: | ||||
|                 await self._client_utils.check_default_role(member) | ||||
|  | ||||
|     async def check_data_integrity(self, is_for_shutdown=False): | ||||
|         if is_for_shutdown != self._is_for_shutdown: | ||||
|             self._is_for_shutdown = is_for_shutdown | ||||
|  | ||||
|         await self._check_default_role() | ||||
|         self._check_known_users() | ||||
|         self._check_servers() | ||||
|         self._check_clients() | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_data" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_data.abc" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -14,6 +14,10 @@ class AuthUserRepositoryABC(ABC): | ||||
|     def __init__(self): | ||||
|         pass | ||||
|  | ||||
|     @abstractmethod | ||||
|     def get_auth_user_relation_ids(self, auth_user: AuthUser) -> List[int]: | ||||
|         pass | ||||
|  | ||||
|     @abstractmethod | ||||
|     def get_all_auth_users(self) -> List[AuthUser]: | ||||
|         pass | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|     "Version": { | ||||
|       "Major": "1", | ||||
|       "Minor": "1", | ||||
|       "Micro": "0" | ||||
|       "Micro": "4" | ||||
|     }, | ||||
|     "Author": "Sven Heidemann", | ||||
|     "AuthorEmail": "sven.heidemann@sh-edraft.de", | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_data.migration" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
							
								
								
									
										34
									
								
								kdb-bot/src/bot_data/migration/default_role_migration.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								kdb-bot/src/bot_data/migration/default_role_migration.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,34 @@ | ||||
| from bot_core.logging.database_logger import DatabaseLogger | ||||
| from bot_data.abc.migration_abc import MigrationABC | ||||
| from bot_data.db_context import DBContext | ||||
|  | ||||
|  | ||||
| class DefaultRoleMigration(MigrationABC): | ||||
|     name = "1.1.3_DefaultRoleMigration" | ||||
|  | ||||
|     def __init__(self, logger: DatabaseLogger, db: DBContext): | ||||
|         MigrationABC.__init__(self) | ||||
|         self._logger = logger | ||||
|         self._db = db | ||||
|         self._cursor = db.cursor | ||||
|  | ||||
|     def upgrade(self): | ||||
|         self._logger.debug(__name__, "Running upgrade") | ||||
|  | ||||
|         self._cursor.execute( | ||||
|             str( | ||||
|                 f""" | ||||
|                     ALTER TABLE CFG_Server | ||||
|                     ADD DefaultRoleId BIGINT NULL AFTER LoginMessageChannelId; | ||||
|                 """ | ||||
|             ) | ||||
|         ) | ||||
|  | ||||
|     def downgrade(self): | ||||
|         self._cursor.execute( | ||||
|             str( | ||||
|                 f""" | ||||
|                     ALTER TABLE CFG_Server DROP COLUMN DefaultRoleId; | ||||
|                 """ | ||||
|             ) | ||||
|         ) | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_data.model" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -26,6 +26,7 @@ class ServerConfig(TableABC, ConfigurationModelABC): | ||||
|         help_voice_channel_id: int, | ||||
|         team_channel_id: int, | ||||
|         login_message_channel_id: int, | ||||
|         default_role_id: int, | ||||
|         feature_flags: dict[FeatureFlagsEnum], | ||||
|         server: Server, | ||||
|         afk_channel_ids: List[int], | ||||
| @@ -48,6 +49,7 @@ class ServerConfig(TableABC, ConfigurationModelABC): | ||||
|         self._help_voice_channel_id = help_voice_channel_id | ||||
|         self._team_channel_id = team_channel_id | ||||
|         self._login_message_channel_id = login_message_channel_id | ||||
|         self._default_role_id = default_role_id | ||||
|         self._feature_flags = feature_flags | ||||
|         self._server = server | ||||
|         self._afk_channel_ids = afk_channel_ids | ||||
| @@ -165,6 +167,14 @@ class ServerConfig(TableABC, ConfigurationModelABC): | ||||
|     def login_message_channel_id(self, value: int): | ||||
|         self._login_message_channel_id = value | ||||
|  | ||||
|     @property | ||||
|     def default_role_id(self) -> int: | ||||
|         return self._default_role_id | ||||
|  | ||||
|     @default_role_id.setter | ||||
|     def default_role_id(self, value: int): | ||||
|         self._default_role_id = value | ||||
|  | ||||
|     @property | ||||
|     def feature_flags(self) -> dict[FeatureFlagsEnum]: | ||||
|         return self._feature_flags | ||||
| @@ -237,6 +247,7 @@ class ServerConfig(TableABC, ConfigurationModelABC): | ||||
|                     `HelpVoiceChannelId`, | ||||
|                     `TeamChannelId`, | ||||
|                     `LoginMessageChannelId`, | ||||
|                     `DefaultRoleId`, | ||||
|                     `FeatureFlags`, | ||||
|                     `ServerId` | ||||
|                 ) VALUES ( | ||||
| @@ -253,6 +264,7 @@ class ServerConfig(TableABC, ConfigurationModelABC): | ||||
|                     {self._help_voice_channel_id}, | ||||
|                     {self._team_channel_id}, | ||||
|                     {self._login_message_channel_id}, | ||||
|                     {self._default_role_id}, | ||||
|                     '{json.dumps(self._feature_flags)}', | ||||
|                     {self._server.id} | ||||
|                 ); | ||||
| @@ -277,6 +289,7 @@ class ServerConfig(TableABC, ConfigurationModelABC): | ||||
|                 `HelpVoiceChannelId` = {self._help_voice_channel_id}, | ||||
|                 `TeamChannelId` = {self._team_channel_id}, | ||||
|                 `LoginMessageChannelId` = {self._login_message_channel_id}, | ||||
|                 `DefaultRoleId` = {self._default_role_id}, | ||||
|                 `FeatureFlags` = '{json.dumps(self._feature_flags)}', | ||||
|                 `ServerId` = {self._server.id} | ||||
|                 WHERE `Id` = {self._id}; | ||||
|   | ||||
| @@ -17,6 +17,7 @@ class ServerConfigHistory(HistoryTableABC): | ||||
|         help_voice_channel_id: int, | ||||
|         team_channel_id: int, | ||||
|         login_message_channel_id: int, | ||||
|         default_role_id: int, | ||||
|         feature_flags: dict[str], | ||||
|         server_id: int, | ||||
|         deleted: bool, | ||||
| @@ -40,6 +41,7 @@ class ServerConfigHistory(HistoryTableABC): | ||||
|         self._help_voice_channel_id = help_voice_channel_id | ||||
|         self._team_channel_id = team_channel_id | ||||
|         self._login_message_channel_id = login_message_channel_id | ||||
|         self._default_role_id = default_role_id | ||||
|         self._feature_flags = feature_flags | ||||
|         self._server_id = server_id | ||||
|  | ||||
| @@ -99,6 +101,10 @@ class ServerConfigHistory(HistoryTableABC): | ||||
|     def login_message_channel_id(self) -> int: | ||||
|         return self._login_message_channel_id | ||||
|  | ||||
|     @property | ||||
|     def default_role_id(self) -> int: | ||||
|         return self._default_role_id | ||||
|  | ||||
|     @property | ||||
|     def feature_flags(self) -> dict[str]: | ||||
|         return self._feature_flags | ||||
|   | ||||
| @@ -39,7 +39,10 @@ class UserJoinedVoiceChannel(TableABC): | ||||
|     @property | ||||
|     @ServiceProviderABC.inject | ||||
|     def channel_name(self, bot: DiscordBotServiceABC) -> str: | ||||
|         return bot.get_channel(self.channel_id).name | ||||
|         channel = bot.get_channel(self.channel_id) | ||||
|         if channel is None: | ||||
|             return "" | ||||
|         return channel.name | ||||
|  | ||||
|     @property | ||||
|     def user(self) -> User: | ||||
|   | ||||
| @@ -41,7 +41,10 @@ class UserJoinedVoiceChannelHistory(HistoryTableABC): | ||||
|     @property | ||||
|     @ServiceProviderABC.inject | ||||
|     def channel_name(self, bot: DiscordBotServiceABC) -> str: | ||||
|         return bot.get_channel(self.channel_id).name | ||||
|         channel = bot.get_channel(self.channel_id) | ||||
|         if channel is None: | ||||
|             return "" | ||||
|         return channel.name | ||||
|  | ||||
|     @property | ||||
|     def user(self) -> int: | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_data.service" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -50,13 +50,7 @@ class AuthUserRepositoryService(AuthUserRepositoryABC): | ||||
|             auth_user_id=self._get_value_from_result(au_result[0]), | ||||
|         ) | ||||
|  | ||||
|         self._logger.trace( | ||||
|             __name__, | ||||
|             f"Send SQL command: {auth_user.get_select_user_id_from_relations()}", | ||||
|         ) | ||||
|         results = self._context.select(auth_user.get_select_user_id_from_relations()) | ||||
|         for result in results: | ||||
|             user_id = self._get_value_from_result(result[0]) | ||||
|         for user_id in self.get_auth_user_relation_ids(auth_user): | ||||
|             if user_id is None: | ||||
|                 continue | ||||
|  | ||||
| @@ -65,6 +59,19 @@ class AuthUserRepositoryService(AuthUserRepositoryABC): | ||||
|  | ||||
|         return auth_user | ||||
|  | ||||
|     def get_auth_user_relation_ids(self, auth_user: AuthUser) -> List[int]: | ||||
|         self._logger.trace( | ||||
|             __name__, | ||||
|             f"Send SQL command: {auth_user.get_select_user_id_from_relations()}", | ||||
|         ) | ||||
|         relation_ids = List(int) | ||||
|         results = self._context.select(auth_user.get_select_user_id_from_relations()) | ||||
|         for result in results: | ||||
|             self._logger.trace(__name__, f"Got auth user relation with id {result[0]}") | ||||
|             relation_ids.append(result[0]) | ||||
|  | ||||
|         return relation_ids | ||||
|  | ||||
|     def get_all_auth_users(self) -> List[AuthUser]: | ||||
|         users = List(AuthUser) | ||||
|         self._logger.trace(__name__, f"Send SQL command: {AuthUser.get_select_all_string()}") | ||||
|   | ||||
| @@ -64,12 +64,13 @@ class ServerConfigRepositoryService(ServerConfigRepositoryABC): | ||||
|             result[11], | ||||
|             result[12], | ||||
|             result[13], | ||||
|             json.loads(result[14]), | ||||
|             self._servers.get_server_by_id(result[15]), | ||||
|             self._get_afk_channel_ids(result[15]), | ||||
|             self._get_team_role_ids(result[15]), | ||||
|             result[16], | ||||
|             result[14], | ||||
|             json.loads(result[15]), | ||||
|             self._servers.get_server_by_id(result[16]), | ||||
|             self._get_afk_channel_ids(result[16]), | ||||
|             self._get_team_role_ids(result[16]), | ||||
|             result[17], | ||||
|             result[18], | ||||
|             id=result[0], | ||||
|         ) | ||||
|  | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_graphql" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_graphql.abc" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -10,6 +10,7 @@ from bot_api.exception.service_error_code_enum import ServiceErrorCode | ||||
| from bot_api.exception.service_exception import ServiceException | ||||
| from bot_api.route.route import Route | ||||
| from bot_core.configuration.feature_flags_enum import FeatureFlagsEnum | ||||
| from bot_data.model.achievement import Achievement | ||||
| from bot_data.model.auth_role_enum import AuthRoleEnum | ||||
| from bot_data.model.auth_user import AuthUser | ||||
| from bot_data.model.auto_role import AutoRole | ||||
| @@ -78,7 +79,17 @@ class QueryABC(ObjectType): | ||||
|         bot: DiscordBotServiceABC = services.get_service(DiscordBotServiceABC) | ||||
|  | ||||
|         access = False | ||||
|         if type(element) == AutoRole: | ||||
|         if type(element) == Achievement: | ||||
|             element: Achievement = element | ||||
|             for u in user.users: | ||||
|                 u: User = u | ||||
|                 guild = bot.get_guild(u.server.discord_id) | ||||
|                 member = guild.get_member(u.discord_id) | ||||
|                 if permissions.is_member_moderator(member) and u.server.id == element.server.id: | ||||
|                     access = True | ||||
|                     break | ||||
|  | ||||
|         elif type(element) == AutoRole: | ||||
|             element: AutoRole = element | ||||
|             for u in user.users: | ||||
|                 u: User = u | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|     "Version": { | ||||
|       "Major": "1", | ||||
|       "Minor": "1", | ||||
|       "Micro": "0" | ||||
|       "Micro": "4" | ||||
|     }, | ||||
|     "Author": "Sven Heidemann", | ||||
|     "AuthorEmail": "sven.heidemann@sh-edraft.de", | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_graphql.filter" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -13,6 +13,7 @@ type ServerConfig implements TableWithHistoryQuery { | ||||
|     helpVoiceChannelId: String | ||||
|     teamChannelId: String | ||||
|     loginMessageChannelId: String | ||||
|     defaultRoleId: String | ||||
|     featureFlagCount: Int | ||||
|     featureFlags: [FeatureFlag] | ||||
|  | ||||
| @@ -43,6 +44,7 @@ type ServerConfigHistory implements HistoryTableQuery { | ||||
|     helpVoiceChannelId: String | ||||
|     teamChannelId: String | ||||
|     loginMessageChannelId: String | ||||
|     defaultRoleId: String | ||||
|     featureFlagCount: Int | ||||
|     featureFlags: [FeatureFlag] | ||||
|  | ||||
| @@ -91,6 +93,7 @@ input ServerConfigInput { | ||||
|     helpVoiceChannelId: String | ||||
|     teamChannelId: String | ||||
|     loginMessageChannelId: String | ||||
|     defaultRoleId: String | ||||
|     featureFlags: [FeatureFlagInput] | ||||
|  | ||||
|     afkChannelIds: [String] | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_graphql.model" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_graphql.mutations" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -89,6 +89,9 @@ class ServerConfigMutation(QueryABC): | ||||
|             if "loginMessageChannelId" in input | ||||
|             else server_config.login_message_channel_id | ||||
|         ) | ||||
|         server_config.default_role_id = ( | ||||
|             input["defaultRoleId"] if "defaultRoleId" in input else server_config.default_role_id | ||||
|         ) | ||||
|         server_config.feature_flags = ( | ||||
|             dict(zip([x["key"] for x in input["featureFlags"]], [x["value"] for x in input["featureFlags"]])) | ||||
|             if "featureFlags" in input | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_graphql.queries" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "bot_graphql.queries.discord" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -24,6 +24,7 @@ class ServerConfigQuery(DataQueryWithHistoryABC): | ||||
|         self.set_field("helpVoiceChannelId", lambda config, *_: config.help_voice_channel_id) | ||||
|         self.set_field("teamChannelId", lambda config, *_: config.team_channel_id) | ||||
|         self.set_field("loginMessageChannelId", lambda config, *_: config.login_message_channel_id) | ||||
|         self.set_field("defaultRoleId", lambda config, *_: config.default_role_id) | ||||
|         self.add_collection( | ||||
|             "featureFlag", | ||||
|             lambda config, *_: List(any, [{"key": x, "value": config.feature_flags[x]} for x in config.feature_flags]), | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.achievements" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|     "Version": { | ||||
|       "Major": "1", | ||||
|       "Minor": "1", | ||||
|       "Micro": "0" | ||||
|       "Micro": "4" | ||||
|     }, | ||||
|     "Author": "Sven Heidemann", | ||||
|     "AuthorEmail": "sven.heidemann@sh-edraft.de", | ||||
| @@ -16,10 +16,10 @@ | ||||
|     "LicenseName": "MIT", | ||||
|     "LicenseDescription": "MIT, see LICENSE for more details.", | ||||
|     "Dependencies": [ | ||||
|       "cpl-core>=1.1.0" | ||||
|       "cpl-core>=1.1.1" | ||||
|     ], | ||||
|     "DevDependencies": [ | ||||
|       "cpl-cli>=1.1.0" | ||||
|       "cpl-cli>=1.1.1" | ||||
|     ], | ||||
|     "PythonVersion": ">=3.10.4", | ||||
|     "PythonPath": {}, | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.achievements.commands" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.achievements.events" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -40,7 +40,7 @@ class AchievementOnVoiceStateUpdateEvent(OnVoiceStateUpdateABC): | ||||
|         if member.guild is None: | ||||
|             return | ||||
|  | ||||
|         if member.author.bot: | ||||
|         if member.bot: | ||||
|             return | ||||
|  | ||||
|         server_config: ServerConfig = self._config.get_configuration(f"ServerConfig_{member.guild.id}") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.achievements.model" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.auto_role" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|     "Version": { | ||||
|       "Major": "1", | ||||
|       "Minor": "1", | ||||
|       "Micro": "0" | ||||
|       "Micro": "4" | ||||
|     }, | ||||
|     "Author": "", | ||||
|     "AuthorEmail": "", | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.auto_role.command" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.auto_role.events" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.auto_role.helper" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.base" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|     "Version": { | ||||
|       "Major": "1", | ||||
|       "Minor": "1", | ||||
|       "Micro": "0" | ||||
|       "Micro": "4" | ||||
|     }, | ||||
|     "Author": "", | ||||
|     "AuthorEmail": "", | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.base.command" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.base.events" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -6,8 +6,10 @@ from cpl_core.configuration import ConfigurationABC | ||||
| from cpl_core.database.context import DatabaseContextABC | ||||
| from cpl_core.logging import LoggerABC | ||||
| from cpl_discord.events import OnMemberJoinABC | ||||
| from cpl_discord.service import DiscordBotServiceABC | ||||
| from cpl_translation import TranslatePipe | ||||
|  | ||||
| from bot_core.abc.client_utils_abc import ClientUtilsABC | ||||
| from bot_core.abc.message_service_abc import MessageServiceABC | ||||
| from bot_core.helper.event_checks import EventChecks | ||||
| from bot_data.abc.known_user_repository_abc import KnownUserRepositoryABC | ||||
| @@ -28,10 +30,12 @@ class BaseOnMemberJoinEvent(OnMemberJoinABC): | ||||
|         messenger: MessageServiceABC, | ||||
|         permissions: PermissionServiceABC, | ||||
|         db: DatabaseContextABC, | ||||
|         bot: DiscordBotServiceABC, | ||||
|         known_users: KnownUserRepositoryABC, | ||||
|         users: UserRepositoryABC, | ||||
|         servers: ServerRepositoryABC, | ||||
|         user_joins: UserJoinedServerRepositoryABC, | ||||
|         client_utils: ClientUtilsABC, | ||||
|         translate: TranslatePipe, | ||||
|     ): | ||||
|         OnMemberJoinABC.__init__(self) | ||||
| @@ -40,10 +44,12 @@ class BaseOnMemberJoinEvent(OnMemberJoinABC): | ||||
|         self._messenger = messenger | ||||
|         self._permission_service = permissions | ||||
|         self._db = db | ||||
|         self._bot = bot | ||||
|         self._known_users = known_users | ||||
|         self._users = users | ||||
|         self._servers = servers | ||||
|         self._user_joins = user_joins | ||||
|         self._client_utils = client_utils | ||||
|         self._t = translate | ||||
|  | ||||
|     def _check_for_known_user(self, member: Union[discord.User, discord.Member]): | ||||
| @@ -98,5 +104,6 @@ class BaseOnMemberJoinEvent(OnMemberJoinABC): | ||||
|     @EventChecks.check_is_ready() | ||||
|     async def on_member_join(self, member: discord.Member): | ||||
|         self._logger.debug(__name__, f"Module {type(self)} started") | ||||
|         await self._client_utils.check_default_role(member) | ||||
|         self._check_for_known_user(member) | ||||
|         await self._add_if_not_exists_user_async(member) | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.base.forms" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.base.helper" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.base.model" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.base.service" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.base.thread" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.boot_log" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|     "Version": { | ||||
|       "Major": "1", | ||||
|       "Minor": "1", | ||||
|       "Micro": "0" | ||||
|       "Micro": "4" | ||||
|     }, | ||||
|     "Author": "", | ||||
|     "AuthorEmail": "", | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.config" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|     "Version": { | ||||
|       "Major": "1", | ||||
|       "Minor": "1", | ||||
|       "Micro": "0" | ||||
|       "Micro": "4" | ||||
|     }, | ||||
|     "Author": "", | ||||
|     "AuthorEmail": "", | ||||
| @@ -16,10 +16,10 @@ | ||||
|     "LicenseName": "", | ||||
|     "LicenseDescription": "", | ||||
|     "Dependencies": [ | ||||
|       "cpl-core>=1.1.0" | ||||
|       "cpl-core>=1.1.1" | ||||
|     ], | ||||
|     "DevDependencies": [ | ||||
|       "cpl-cli>=1.1.0" | ||||
|       "cpl-cli>=1.1.1" | ||||
|     ], | ||||
|     "PythonVersion": ">=3.10.4", | ||||
|     "PythonPath": { | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.config.events" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.config.service" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.database" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|     "Version": { | ||||
|       "Major": "1", | ||||
|       "Minor": "1", | ||||
|       "Micro": "0" | ||||
|       "Micro": "4" | ||||
|     }, | ||||
|     "Author": "Sven Heidemann", | ||||
|     "AuthorEmail": "sven.heidemann@sh-edraft.de", | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.level" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.level.command" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.level.configuration" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.level.events" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -4,7 +4,7 @@ | ||||
|     "Version": { | ||||
|       "Major": "1", | ||||
|       "Minor": "1", | ||||
|       "Micro": "0" | ||||
|       "Micro": "4" | ||||
|     }, | ||||
|     "Author": "", | ||||
|     "AuthorEmail": "", | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.level.service" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -40,6 +40,9 @@ class LevelService: | ||||
|  | ||||
|     def get_level(self, user: User) -> Level: | ||||
|         levels_by_server = self._levels.get_levels_by_server_id(user.server.id) | ||||
|         if user.xp < 0: | ||||
|             return levels_by_server.order_by(lambda l: l.min_xp).first() | ||||
|  | ||||
|         levels = levels_by_server.order_by(lambda l: l.min_xp).where(lambda l: user.xp >= l.min_xp) | ||||
|  | ||||
|         if levels.count() == 0: | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.permission" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports: | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
| @@ -15,7 +15,7 @@ __title__ = "modules.permission.abc" | ||||
| __author__ = "Sven Heidemann" | ||||
| __license__ = "MIT" | ||||
| __copyright__ = "Copyright (c) 2022 - 2023 sh-edraft.de" | ||||
| __version__ = "1.1.0" | ||||
| __version__ = "1.1.4" | ||||
|  | ||||
| from collections import namedtuple | ||||
|  | ||||
| @@ -23,4 +23,4 @@ from collections import namedtuple | ||||
| # imports | ||||
|  | ||||
| VersionInfo = namedtuple("VersionInfo", "major minor micro") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="0") | ||||
| version_info = VersionInfo(major="1", minor="1", micro="4") | ||||
|   | ||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user