Renamed type_id to id for sorting #130
This commit is contained in:
@@ -52,7 +52,7 @@ class AutoRoleGroup(DiscordCommandABC):
|
||||
self, interaction: discord.Interaction, current: str
|
||||
) -> TList[app_commands.Choice[str]]:
|
||||
server = self._servers.get_server_by_discord_id(interaction.guild.id)
|
||||
auto_roles = self._auto_roles.get_auto_roles_by_server_id(server.server_id).select(lambda x: x.auto_role_id)
|
||||
auto_roles = self._auto_roles.get_auto_roles_by_server_id(server.id).select(lambda x: x.id)
|
||||
return [
|
||||
app_commands.Choice(name=auto_role, value=auto_role)
|
||||
for auto_role in self._client_utils.get_auto_complete_list(auto_roles, current)
|
||||
@@ -79,7 +79,7 @@ class AutoRoleGroup(DiscordCommandABC):
|
||||
color=int("ef9d0d", 16),
|
||||
)
|
||||
server = self._servers.get_server_by_discord_id(ctx.guild.id)
|
||||
auto_roles = self._auto_roles.get_auto_roles_by_server_id(server.server_id)
|
||||
auto_roles = self._auto_roles.get_auto_roles_by_server_id(server.id)
|
||||
if auto_roles.count() < 1:
|
||||
await self._message_service.send_ctx_msg(ctx, self._t.transform("modules.auto_role.error.nothing_found"))
|
||||
self._logger.trace(__name__, f"Finished command auto-role list")
|
||||
@@ -88,7 +88,7 @@ class AutoRoleGroup(DiscordCommandABC):
|
||||
auto_role_id = ""
|
||||
message_id = ""
|
||||
for auto_role in auto_roles:
|
||||
auto_role_id += f"\n{auto_role.auto_role_id}"
|
||||
auto_role_id += f"\n{auto_role.id}"
|
||||
message_id += f"\n{auto_role.discord_message_id}"
|
||||
|
||||
embed.add_field(
|
||||
@@ -181,7 +181,7 @@ class AutoRoleGroup(DiscordCommandABC):
|
||||
self._logger.trace(__name__, f"Finished command auto-role remove")
|
||||
return
|
||||
|
||||
for rule in self._auto_roles.get_auto_role_rules_by_auto_role_id(auto_role_from_db.auto_role_id):
|
||||
for rule in self._auto_roles.get_auto_role_rules_by_auto_role_id(auto_role_from_db.id):
|
||||
self._auto_roles.delete_auto_role_rule(rule)
|
||||
self._logger.info(__name__, f"Removed auto-role rule {rule.role_id}")
|
||||
|
||||
@@ -392,12 +392,12 @@ class AutoRoleGroup(DiscordCommandABC):
|
||||
self, interaction: discord.Interaction, current: str
|
||||
) -> TList[app_commands.Choice[str]]:
|
||||
server = self._servers.get_server_by_discord_id(interaction.guild.id)
|
||||
auto_roles = self._auto_roles.get_auto_roles_by_server_id(server.server_id).select(lambda x: x.auto_role_id)
|
||||
auto_roles = self._auto_roles.get_auto_roles_by_server_id(server.id).select(lambda x: x.id)
|
||||
rules = auto_roles.select_many(lambda ar: self._auto_roles.get_auto_role_rules_by_auto_role_id(ar))
|
||||
return [
|
||||
app_commands.Choice(
|
||||
name=f"{rule.auto_role_rule_id} {rule.emoji_name} {interaction.guild.get_role(int(rule.role_id))}",
|
||||
value=rule.auto_role_rule_id,
|
||||
name=f"{rule.id} {rule.emoji_name} {interaction.guild.get_role(int(rule.role_id))}",
|
||||
value=rule.id,
|
||||
)
|
||||
for rule in self._client_utils.get_auto_complete_list(rules, current, lambda r: r.auto_role_rule_id)
|
||||
for rule in self._client_utils.get_auto_complete_list(rules, current, lambda r: r.id)
|
||||
]
|
||||
|
@@ -1,4 +1,3 @@
|
||||
import discord
|
||||
from cpl_core.logging import LoggerABC
|
||||
from cpl_discord.service import DiscordBotServiceABC
|
||||
from cpl_query.extension import List
|
||||
@@ -50,7 +49,7 @@ class AutoRoleReactionHandler:
|
||||
self._logger.debug(__name__, f"auto-role for message not found - skipping")
|
||||
return
|
||||
|
||||
rules: List[AutoRoleRule] = self._auto_roles.get_auto_role_rules_by_auto_role_id(auto_role.auto_role_id)
|
||||
rules: List[AutoRoleRule] = self._auto_roles.get_auto_role_rules_by_auto_role_id(auto_role.id)
|
||||
if rules.count() == 0:
|
||||
self._logger.debug(__name__, f"auto-role rules not found - skipping")
|
||||
return
|
||||
|
@@ -59,7 +59,7 @@ class PingCommand(DiscordCommandABC):
|
||||
color=int("ef9d0d", 16),
|
||||
)
|
||||
server = self._servers.get_server_by_discord_id(ctx.guild.id)
|
||||
settings: BaseServerSettings = self._base_helper.get_config(server.discord_server_id)
|
||||
settings: BaseServerSettings = self._base_helper.get_config(server.discord_id)
|
||||
for server in settings.ping_urls:
|
||||
embed.add_field(name=server, value=f"{self._get_ping(server)} ms", inline=False)
|
||||
await self._message_service.send_ctx_msg(ctx, embed)
|
||||
|
@@ -73,7 +73,7 @@ class RegisterGroup(DiscordCommandABC):
|
||||
return
|
||||
|
||||
server = self._servers.get_server_by_discord_id(ctx.guild.id)
|
||||
user = self._users.get_user_by_discord_id_and_server_id(member.id, server.server_id)
|
||||
user = self._users.get_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
user.minecraft_id = minecraft_id
|
||||
self._users.update_user(user)
|
||||
self._db.save_changes()
|
||||
|
@@ -52,7 +52,7 @@ class UnregisterGroup(DiscordCommandABC):
|
||||
self._logger.debug(__name__, f"Received command register minecraft {ctx}")
|
||||
|
||||
server = self._servers.get_server_by_discord_id(ctx.guild.id)
|
||||
user = self._users.get_user_by_discord_id_and_server_id(member.id, server.server_id)
|
||||
user = self._users.get_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
user.minecraft_id = None
|
||||
self._users.update_user(user)
|
||||
self._db.save_changes()
|
||||
|
@@ -81,7 +81,7 @@ class UserGroup(DiscordCommandABC):
|
||||
member = ctx.author
|
||||
|
||||
server = self._servers.find_server_by_discord_id(ctx.guild.id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.server_id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
|
||||
if atr == "xp":
|
||||
if is_remove:
|
||||
@@ -125,8 +125,8 @@ class UserGroup(DiscordCommandABC):
|
||||
member = ctx.author
|
||||
|
||||
server = self._servers.find_server_by_discord_id(ctx.guild.id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.server_id)
|
||||
joins = self._user_joined_servers.get_user_joined_servers_by_user_id(user.user_id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
joins = self._user_joined_servers.get_user_joined_servers_by_user_id(user.id)
|
||||
|
||||
embed = discord.Embed(title=member.name, description=member.name, color=int("ef9d0d", 16))
|
||||
|
||||
@@ -206,7 +206,7 @@ class UserGroup(DiscordCommandABC):
|
||||
member = ctx.author
|
||||
|
||||
server = self._servers.find_server_by_discord_id(ctx.guild.id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.server_id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
|
||||
if atr == "xp":
|
||||
value = str(user.xp)
|
||||
@@ -241,7 +241,7 @@ class UserGroup(DiscordCommandABC):
|
||||
member = ctx.author
|
||||
|
||||
server = self._servers.find_server_by_discord_id(ctx.guild.id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.server_id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
|
||||
if atr == "xp":
|
||||
try:
|
||||
@@ -312,7 +312,7 @@ class UserGroup(DiscordCommandABC):
|
||||
member = ctx.author
|
||||
|
||||
server = self._servers.find_server_by_discord_id(ctx.guild.id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.server_id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
|
||||
if atr == "xp":
|
||||
user.xp = 0
|
||||
@@ -321,7 +321,7 @@ class UserGroup(DiscordCommandABC):
|
||||
await self._level.check_level(member)
|
||||
|
||||
elif atr == "ontime":
|
||||
self._user_joined_voice_channel.delete_user_joined_voice_channel_by_user_id(user.user_id)
|
||||
self._user_joined_voice_channel.delete_user_joined_voice_channel_by_user_id(user.id)
|
||||
self._db.save_changes()
|
||||
|
||||
else:
|
||||
|
@@ -64,7 +64,7 @@ class BaseOnCommandEvent(OnCommandABC):
|
||||
|
||||
user: Optional[User] = None
|
||||
try:
|
||||
user = self._users.get_user_by_discord_id_and_server_id(dc_user_id, server.server_id)
|
||||
user = self._users.get_user_by_discord_id_and_server_id(dc_user_id, server.id)
|
||||
except Exception as e:
|
||||
self._logger.error(__name__, f"Cannot get user {dc_user_id}", e)
|
||||
return
|
||||
|
@@ -85,7 +85,7 @@ class BaseOnMemberJoinEvent(OnMemberJoinABC):
|
||||
|
||||
try:
|
||||
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.server_id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
if user is not None:
|
||||
self._user_joins.add_user_joined_server(UserJoinedServer(user, datetime.now()))
|
||||
self._db.save_changes()
|
||||
@@ -94,7 +94,7 @@ class BaseOnMemberJoinEvent(OnMemberJoinABC):
|
||||
self._logger.debug(__name__, f"Add user: {member.id}")
|
||||
self._users.add_user(User(member.id, 0, server))
|
||||
self._db.save_changes()
|
||||
user = self._users.get_user_by_discord_id_and_server_id(member.id, server.server_id)
|
||||
user = self._users.get_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
self._user_joins.add_user_joined_server(UserJoinedServer(user, datetime.now()))
|
||||
self._db.save_changes()
|
||||
except Exception as e:
|
||||
|
@@ -47,12 +47,12 @@ class BaseOnMemberRemoveEvent(OnMemberRemoveABC):
|
||||
try:
|
||||
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.server_id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
if user is None:
|
||||
self._logger.error(__name__, f"Cannot find user {member}")
|
||||
return
|
||||
|
||||
join = self._user_joins.get_active_user_joined_server_by_user_id(user.user_id)
|
||||
join = self._user_joins.get_active_user_joined_server_by_user_id(user.id)
|
||||
join.leaved_on = datetime.now()
|
||||
self._user_joins.update_user_joined_server(join)
|
||||
self._db.save_changes()
|
||||
|
@@ -52,7 +52,7 @@ class BaseOnMessageDeleteEvent(OnMessageDeleteABC):
|
||||
|
||||
user: Optional[User] = None
|
||||
try:
|
||||
user = self._users.find_user_by_discord_id_and_server_id(dc_user_id, server.server_id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(dc_user_id, server.id)
|
||||
except Exception as e:
|
||||
self._logger.error(__name__, f"Cannot get user {dc_user_id}", e)
|
||||
return
|
||||
|
@@ -57,7 +57,7 @@ class BaseOnMessageEvent(OnMessageABC):
|
||||
|
||||
user: Optional[User] = None
|
||||
try:
|
||||
user = self._users.find_user_by_discord_id_and_server_id(dc_user_id, server.server_id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(dc_user_id, server.id)
|
||||
except Exception as e:
|
||||
self._logger.error(__name__, f"Cannot get user {dc_user_id}", e)
|
||||
return
|
||||
|
@@ -51,7 +51,7 @@ class BaseOnVoiceStateUpdateEvent(OnVoiceStateUpdateABC):
|
||||
def _update_voice_state(self, joined: bool, dc_user_id: int, dc_channel_id: int, server: Server):
|
||||
user: Optional[User] = None
|
||||
try:
|
||||
user = self._users.get_user_by_discord_id_and_server_id(dc_user_id, server.server_id)
|
||||
user = self._users.get_user_by_discord_id_and_server_id(dc_user_id, server.id)
|
||||
except Exception as e:
|
||||
self._logger.error(__name__, f"Cannot get user {dc_user_id}", e)
|
||||
return
|
||||
@@ -67,9 +67,9 @@ class BaseOnVoiceStateUpdateEvent(OnVoiceStateUpdateABC):
|
||||
self._db.save_changes()
|
||||
return
|
||||
|
||||
settings: BaseServerSettings = self._base_helper.get_config(server.discord_server_id)
|
||||
settings: BaseServerSettings = self._base_helper.get_config(server.discord_id)
|
||||
|
||||
join = self._user_joins_vc.get_active_user_joined_voice_channel_by_user_id(user.user_id)
|
||||
join = self._user_joins_vc.get_active_user_joined_voice_channel_by_user_id(user.id)
|
||||
join.leaved_on = datetime.now()
|
||||
|
||||
# ontime as hours
|
||||
|
@@ -43,7 +43,7 @@ class BaseOnVoiceStateUpdateEventHelpChannel(OnVoiceStateUpdateABC):
|
||||
):
|
||||
self._logger.debug(__name__, f"Module {type(self)} started")
|
||||
server = self._servers.get_server_by_discord_id(member.guild.id)
|
||||
settings: BaseServerSettings = self._base_helper.get_config(server.discord_server_id)
|
||||
settings: BaseServerSettings = self._base_helper.get_config(server.discord_id)
|
||||
if after.channel is None or after.channel.id != settings.help_voice_channel_id:
|
||||
return
|
||||
|
||||
|
@@ -62,7 +62,7 @@ class BaseReactionHandler:
|
||||
return
|
||||
|
||||
server = self._servers.get_server_by_discord_id(guild.id)
|
||||
user = self._users.get_user_by_discord_id_and_server_id(member.id, server.server_id)
|
||||
user = self._users.get_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
settings: BaseServerSettings = self._base_helper.get_config(guild.id)
|
||||
|
||||
if r_type == "add":
|
||||
|
@@ -144,7 +144,7 @@ class DatabaseOnReadyEvent(OnReadyABC):
|
||||
if server is None:
|
||||
self._logger.fatal(__name__, f"Server not found in database: {g.id}")
|
||||
|
||||
client = self._clients.find_client_by_server_id(server.server_id)
|
||||
client = self._clients.find_client_by_server_id(server.id)
|
||||
if client is not None:
|
||||
continue
|
||||
|
||||
@@ -156,7 +156,7 @@ class DatabaseOnReadyEvent(OnReadyABC):
|
||||
self._clients.add_client(Client(self._bot.user.id, 0, 0, 0, 0, 0, server))
|
||||
self._db_context.save_changes()
|
||||
|
||||
client = self._clients.find_client_by_server_id(server.server_id)
|
||||
client = self._clients.find_client_by_server_id(server.id)
|
||||
if client is None:
|
||||
self._logger.fatal(
|
||||
__name__,
|
||||
@@ -187,7 +187,7 @@ class DatabaseOnReadyEvent(OnReadyABC):
|
||||
self._logger.trace(__name__, f"User {u.id} is ignored, because its a bot")
|
||||
continue
|
||||
|
||||
user = self._users.find_user_by_discord_id_and_server_id(u.id, server.server_id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(u.id, server.id)
|
||||
if user is not None:
|
||||
continue
|
||||
|
||||
@@ -220,11 +220,11 @@ class DatabaseOnReadyEvent(OnReadyABC):
|
||||
self._logger.trace(__name__, f"User {u.id} is ignored, because its a bot")
|
||||
continue
|
||||
|
||||
user = self._users.find_user_by_discord_id_and_server_id(u.id, server.server_id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(u.id, server.id)
|
||||
if user is None:
|
||||
self._logger.fatal(__name__, f"User not found in database: {u.id}")
|
||||
|
||||
join = self._user_joins.find_active_user_joined_server_by_user_id(user.user_id)
|
||||
join = self._user_joins.find_active_user_joined_server_by_user_id(user.id)
|
||||
if join is not None:
|
||||
continue
|
||||
|
||||
@@ -253,7 +253,7 @@ class DatabaseOnReadyEvent(OnReadyABC):
|
||||
joins = self._user_joins.get_user_joined_servers()
|
||||
for join in joins:
|
||||
join: UserJoinedServer = join
|
||||
if join.user.server.discord_server_id != guild.id:
|
||||
if join.user.server.discord_id != guild.id:
|
||||
continue
|
||||
|
||||
if join.leaved_on is not None:
|
||||
@@ -285,11 +285,11 @@ class DatabaseOnReadyEvent(OnReadyABC):
|
||||
self._logger.trace(__name__, f"User {member.id} is ignored, because its a bot")
|
||||
continue
|
||||
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.server_id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
if user is None:
|
||||
self._logger.fatal(__name__, f"User not found in database: {member.id}")
|
||||
|
||||
joins = self._user_joins_vc.find_active_user_joined_voice_channels_by_user_id(user.user_id)
|
||||
joins = self._user_joins_vc.find_active_user_joined_voice_channels_by_user_id(user.id)
|
||||
if joins is None or len(joins) == 0:
|
||||
continue
|
||||
|
||||
@@ -318,7 +318,7 @@ class DatabaseOnReadyEvent(OnReadyABC):
|
||||
if member.voice is None:
|
||||
continue
|
||||
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.server_id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
if user is None:
|
||||
self._logger.fatal(__name__, f"User not found in database: {member.id}")
|
||||
|
||||
@@ -345,11 +345,11 @@ class DatabaseOnReadyEvent(OnReadyABC):
|
||||
self._logger.trace(__name__, f"User {member.id} is ignored, because its a bot")
|
||||
continue
|
||||
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.server_id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
if user is None:
|
||||
self._logger.fatal(__name__, f"User not found in database: {member.id}")
|
||||
|
||||
joins = self._user_joined_gs.find_active_user_joined_game_servers_by_user_id(user.user_id)
|
||||
joins = self._user_joined_gs.find_active_user_joined_game_servers_by_user_id(user.id)
|
||||
if joins is None or len(joins) == 0:
|
||||
continue
|
||||
|
||||
|
@@ -108,7 +108,7 @@ class LevelGroup(DiscordCommandABC):
|
||||
self, interaction: discord.Interaction, current: str
|
||||
) -> TList[app_commands.Choice[str]]:
|
||||
server = self._servers.get_server_by_discord_id(interaction.guild.id)
|
||||
levels = self._levels.get_levels_by_server_id(server.server_id).select(lambda l: l.name)
|
||||
levels = self._levels.get_levels_by_server_id(server.id).select(lambda l: l.name)
|
||||
return [
|
||||
app_commands.Choice(name=level, value=level)
|
||||
for level in self._client_utils.get_auto_complete_list(levels, current)
|
||||
@@ -130,7 +130,7 @@ class LevelGroup(DiscordCommandABC):
|
||||
return
|
||||
|
||||
server = self._servers.get_server_by_discord_id(ctx.guild.id)
|
||||
levels = self._levels.get_levels_by_server_id(server.server_id)
|
||||
levels = self._levels.get_levels_by_server_id(server.id)
|
||||
if levels.count() < 1:
|
||||
await self._message_service.send_ctx_msg(ctx, self._t.transform("modules.level.error.nothing_found"))
|
||||
self._logger.trace(__name__, f"Finished command level list")
|
||||
@@ -187,7 +187,7 @@ class LevelGroup(DiscordCommandABC):
|
||||
|
||||
server = self._servers.get_server_by_discord_id(ctx.guild.id)
|
||||
level = Level(name, color, min_xp, permissions, server)
|
||||
levels = self._levels.get_levels_by_server_id(server.server_id)
|
||||
levels = self._levels.get_levels_by_server_id(server.id)
|
||||
|
||||
if levels.where(lambda l: l.name == level.name).first_or_default() is not None:
|
||||
self._logger.debug(__name__, f"Level with name {level.name} already exists")
|
||||
@@ -261,7 +261,7 @@ class LevelGroup(DiscordCommandABC):
|
||||
|
||||
server = self._servers.get_server_by_discord_id(ctx.guild.id)
|
||||
level_from_db = (
|
||||
self._levels.get_levels_by_server_id(server.server_id).where(lambda l: l.name == level).single_or_default()
|
||||
self._levels.get_levels_by_server_id(server.id).where(lambda l: l.name == level).single_or_default()
|
||||
)
|
||||
if level_from_db is None:
|
||||
await self._message_service.send_ctx_msg(
|
||||
@@ -353,7 +353,7 @@ class LevelGroup(DiscordCommandABC):
|
||||
|
||||
server = self._servers.get_server_by_discord_id(ctx.guild.id)
|
||||
level_from_db = (
|
||||
self._levels.get_levels_by_server_id(server.server_id).where(lambda l: l.name == level).first_or_default()
|
||||
self._levels.get_levels_by_server_id(server.id).where(lambda l: l.name == level).first_or_default()
|
||||
)
|
||||
if level_from_db is None:
|
||||
self._logger.debug(__name__, f"level {level} not found")
|
||||
@@ -399,9 +399,9 @@ class LevelGroup(DiscordCommandABC):
|
||||
return
|
||||
|
||||
server = self._servers.get_server_by_discord_id(ctx.guild.id)
|
||||
user = self._users.get_user_by_discord_id_and_server_id(member.id, server.server_id)
|
||||
user = self._users.get_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
level = self._level_service.get_level(user)
|
||||
levels = self._levels.get_levels_by_server_id(server.server_id).order_by(lambda l: l.min_xp)
|
||||
levels = self._levels.get_levels_by_server_id(server.id).order_by(lambda l: l.min_xp)
|
||||
|
||||
if level == levels.first():
|
||||
await self._message_service.send_ctx_msg(
|
||||
@@ -441,9 +441,9 @@ class LevelGroup(DiscordCommandABC):
|
||||
return
|
||||
|
||||
server = self._servers.get_server_by_discord_id(ctx.guild.id)
|
||||
user = self._users.get_user_by_discord_id_and_server_id(member.id, server.server_id)
|
||||
user = self._users.get_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
level = self._level_service.get_level(user)
|
||||
levels = self._levels.get_levels_by_server_id(server.server_id).order_by(lambda l: l.min_xp)
|
||||
levels = self._levels.get_levels_by_server_id(server.id).order_by(lambda l: l.min_xp)
|
||||
|
||||
if level.name == levels.last().name:
|
||||
await self._message_service.send_ctx_msg(
|
||||
@@ -482,11 +482,9 @@ class LevelGroup(DiscordCommandABC):
|
||||
return
|
||||
|
||||
server = self._servers.get_server_by_discord_id(ctx.guild.id)
|
||||
user = self._users.get_user_by_discord_id_and_server_id(member.id, server.server_id)
|
||||
user = self._users.get_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
current_level = self._level_service.get_level(user)
|
||||
new_level = (
|
||||
self._levels.get_levels_by_server_id(server.server_id).where(lambda l: l.name == level).single_or_default()
|
||||
)
|
||||
new_level = self._levels.get_levels_by_server_id(server.id).where(lambda l: l.name == level).single_or_default()
|
||||
|
||||
if new_level is None:
|
||||
await self._message_service.send_ctx_msg(
|
||||
|
@@ -47,7 +47,7 @@ class LevelSeeder(DataSeederABC):
|
||||
)
|
||||
self._logger.debug(__name__, f"Created role {level.name}")
|
||||
|
||||
levels = self._levels.find_levels_by_server_id(server.server_id)
|
||||
levels = self._levels.find_levels_by_server_id(server.id)
|
||||
if levels is None or levels.where(lambda l: l.name == level.name).first_or_default() is None:
|
||||
self._levels.add_level(level)
|
||||
self._logger.debug(__name__, f"Saved level {level.name}")
|
||||
@@ -69,7 +69,7 @@ class LevelSeeder(DataSeederABC):
|
||||
if server is None:
|
||||
continue
|
||||
|
||||
levels = self._levels.find_levels_by_server_id(server.server_id)
|
||||
levels = self._levels.find_levels_by_server_id(server.id)
|
||||
if levels is not None and levels.count() > 0:
|
||||
# create levels from db
|
||||
for level in levels:
|
||||
|
@@ -1,5 +1,3 @@
|
||||
import asyncio
|
||||
|
||||
import discord
|
||||
from cpl_core.configuration import ConfigurationABC
|
||||
from cpl_core.database.context import DatabaseContextABC
|
||||
@@ -41,7 +39,7 @@ class LevelService:
|
||||
self._t = t
|
||||
|
||||
def get_level(self, user: User) -> Level:
|
||||
levels_by_server = self._levels.get_levels_by_server_id(user.server.server_id)
|
||||
levels_by_server = self._levels.get_levels_by_server_id(user.server.id)
|
||||
levels = levels_by_server.order_by(lambda l: l.min_xp).where(lambda l: user.xp >= l.min_xp)
|
||||
|
||||
if levels.count() == 0:
|
||||
@@ -50,8 +48,8 @@ class LevelService:
|
||||
return levels.last()
|
||||
|
||||
async def set_level(self, user: User):
|
||||
level_names = self._levels.get_levels_by_server_id(user.server.server_id).select(lambda l: l.name)
|
||||
guild: Guild = self._bot.guilds.where(lambda g: g.id == user.server.discord_server_id).single()
|
||||
level_names = self._levels.get_levels_by_server_id(user.server.id).select(lambda l: l.name)
|
||||
guild: Guild = self._bot.guilds.where(lambda g: g.id == user.server.discord_id).single()
|
||||
member: Member = guild.members.where(lambda m: m.id == user.discord_id).single()
|
||||
|
||||
level = self.get_level(user)
|
||||
@@ -89,7 +87,7 @@ class LevelService:
|
||||
return
|
||||
|
||||
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.server_id)
|
||||
user = self._users.find_user_by_discord_id_and_server_id(member.id, server.id)
|
||||
if user is None:
|
||||
self._logger.warn(__name__, f"User not found {member.guild.name}@{member.name}")
|
||||
return
|
||||
|
@@ -66,7 +66,7 @@ class StatsGroup(DiscordCommandABC):
|
||||
)
|
||||
|
||||
server = self._servers.get_server_by_discord_id(ctx.guild.id)
|
||||
stats = self._stats.get_statistics_by_server_id(server.server_id)
|
||||
stats = self._stats.get_statistics_by_server_id(server.id)
|
||||
|
||||
if stats.count() == 0:
|
||||
await self._message_service.send_ctx_msg(ctx, self._t.transform("modules.stats.list.nothing_found"))
|
||||
@@ -103,7 +103,7 @@ class StatsGroup(DiscordCommandABC):
|
||||
|
||||
try:
|
||||
server = self._servers.get_server_by_discord_id(ctx.guild.id)
|
||||
stats = self._stats.get_statistics_by_server_id(server.server_id)
|
||||
stats = self._stats.get_statistics_by_server_id(server.id)
|
||||
statistic = stats.where(lambda s: s.name == name).single()
|
||||
result = await self._statistic.execute(statistic.code, server)
|
||||
|
||||
@@ -132,7 +132,7 @@ class StatsGroup(DiscordCommandABC):
|
||||
self, interaction: discord.Interaction, current: str
|
||||
) -> TList[app_commands.Choice[str]]:
|
||||
server = self._servers.get_server_by_discord_id(interaction.guild.id)
|
||||
stats = self._stats.get_statistics_by_server_id(server.server_id)
|
||||
stats = self._stats.get_statistics_by_server_id(server.id)
|
||||
return [
|
||||
app_commands.Choice(name=f"{statistic.name}: {statistic.description}", value=statistic.name)
|
||||
for statistic in stats
|
||||
@@ -171,7 +171,7 @@ class StatsGroup(DiscordCommandABC):
|
||||
|
||||
try:
|
||||
server = self._servers.get_server_by_discord_id(ctx.guild.id)
|
||||
stats = self._stats.get_statistics_by_server_id(server.server_id)
|
||||
stats = self._stats.get_statistics_by_server_id(server.id)
|
||||
statistic = stats.where(lambda s: s.name == name).single()
|
||||
form = AddStatisticForm(
|
||||
server,
|
||||
@@ -196,7 +196,7 @@ class StatsGroup(DiscordCommandABC):
|
||||
self, interaction: discord.Interaction, current: str
|
||||
) -> TList[app_commands.Choice[str]]:
|
||||
server = self._servers.get_server_by_discord_id(interaction.guild.id)
|
||||
stats = self._stats.get_statistics_by_server_id(server.server_id)
|
||||
stats = self._stats.get_statistics_by_server_id(server.id)
|
||||
return [
|
||||
app_commands.Choice(name=f"{statistic.name}: {statistic.description}", value=statistic.name)
|
||||
for statistic in stats
|
||||
@@ -211,7 +211,7 @@ class StatsGroup(DiscordCommandABC):
|
||||
|
||||
try:
|
||||
server = self._servers.get_server_by_discord_id(ctx.guild.id)
|
||||
statistic = self._stats.get_statistic_by_name(name, server.server_id)
|
||||
statistic = self._stats.get_statistic_by_name(name, server.id)
|
||||
self._stats.delete_statistic(statistic)
|
||||
self._db.save_changes()
|
||||
await self._message_service.send_ctx_msg(ctx, self._t.transform("modules.stats.remove.success"))
|
||||
@@ -225,7 +225,7 @@ class StatsGroup(DiscordCommandABC):
|
||||
self, interaction: discord.Interaction, current: str
|
||||
) -> TList[app_commands.Choice[str]]:
|
||||
server = self._servers.get_server_by_discord_id(interaction.guild.id)
|
||||
stats = self._stats.get_statistics_by_server_id(server.server_id)
|
||||
stats = self._stats.get_statistics_by_server_id(server.id)
|
||||
return [
|
||||
app_commands.Choice(name=f"{statistic.name}: {statistic.description}", value=statistic.name)
|
||||
for statistic in stats
|
||||
|
@@ -1,5 +1,3 @@
|
||||
from abc import abstractmethod
|
||||
|
||||
from cpl_discord.service import DiscordBotServiceABC
|
||||
from cpl_query.extension import List
|
||||
from discord import Guild
|
||||
@@ -49,22 +47,20 @@ class StatisticService:
|
||||
self._bot = bot
|
||||
|
||||
async def execute(self, code: str, server: Server) -> StatisticResult:
|
||||
guild = self._bot.guilds.where(lambda g: g.id == server.discord_server_id).single()
|
||||
guild = self._bot.guilds.where(lambda g: g.id == server.discord_id).single()
|
||||
|
||||
return await self.get_data(
|
||||
code,
|
||||
self._auto_roles.get_auto_roles().where(lambda x: x.server.server_id == server.server_id),
|
||||
self._clients.get_clients().where(lambda x: x.server.server_id == server.server_id),
|
||||
self._auto_roles.get_auto_roles().where(lambda x: x.server.id == server.id),
|
||||
self._clients.get_clients().where(lambda x: x.server.id == server.id),
|
||||
self._known_users.get_users(),
|
||||
self._levels.get_levels().where(lambda x: x.server.server_id == server.server_id),
|
||||
self._servers.get_servers().where(lambda x: x.server_id == server.server_id),
|
||||
self._user_joined_servers.get_user_joined_servers().where(
|
||||
lambda x: x.user.server.server_id == server.server_id
|
||||
),
|
||||
self._levels.get_levels().where(lambda x: x.server.id == server.id),
|
||||
self._servers.get_servers().where(lambda x: x.id == server.id),
|
||||
self._user_joined_servers.get_user_joined_servers().where(lambda x: x.user.server.id == server.id),
|
||||
self._user_joined_voice_channel.get_user_joined_voice_channels().where(
|
||||
lambda x: x.user.server.server_id == server.server_id
|
||||
lambda x: x.user.server.id == server.id
|
||||
),
|
||||
self._users.get_users().where(lambda x: x.server.server_id == server.server_id),
|
||||
self._users.get_users().where(lambda x: x.server.id == server.id),
|
||||
guild,
|
||||
)
|
||||
|
||||
|
@@ -1,6 +1,5 @@
|
||||
import discord
|
||||
from cpl_core.database.context import DatabaseContextABC
|
||||
from cpl_query.extension import List
|
||||
from cpl_translation import TranslatePipe
|
||||
from discord import ui, TextStyle
|
||||
|
||||
@@ -45,7 +44,7 @@ class AddStatisticForm(ui.Modal):
|
||||
|
||||
async def on_submit(self, interaction: discord.Interaction):
|
||||
statistic = (
|
||||
self._stats.get_statistics_by_server_id(self._server.server_id)
|
||||
self._stats.get_statistics_by_server_id(self._server.id)
|
||||
.where(lambda s: s.name == self._name)
|
||||
.single_or_default()
|
||||
)
|
||||
|
@@ -95,7 +95,7 @@ class ApiKeyGroup(DiscordCommandABC):
|
||||
self._logger.debug(__name__, f"Received command api-key add {ctx}: {identifier}")
|
||||
|
||||
server = self._servers.get_server_by_discord_id(ctx.guild.id)
|
||||
user = self._users.get_user_by_discord_id_and_server_id(ctx.author.id, server.server_id)
|
||||
user = self._users.get_user_by_discord_id_and_server_id(ctx.author.id, server.id)
|
||||
api_key = ApiKey(identifier, str(uuid.uuid4()), user)
|
||||
self._api_keys.add_api_key(api_key)
|
||||
self._db.save_changes()
|
||||
|
Reference in New Issue
Block a user