Compare commits

..

No commits in common. "7c7786d2d1fef5f6c48c658d568ade5ff7754a66" and "1f07a031860f6d99bed08b1245964b605699e3f1" have entirely different histories.

7 changed files with 31 additions and 49 deletions

View File

@ -151,7 +151,6 @@
}
},
"base": {
"member_left_message": "{} hat uns leider verlassen :(",
"complaints": {
"title": "Beschwerde einreichen",
"label": "Beschwerde",

View File

@ -87,7 +87,7 @@ class BaseOnMemberJoinEvent(OnMemberJoinABC):
return
self._logger.debug(__name__, f"Add user: {member.id}")
self._users.add_user(User(member.id, 0, 0, 0, server))
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.id)
self._user_joins.add_user_joined_server(UserJoinedServer(user, datetime.now()))

View File

@ -2,7 +2,6 @@ from datetime import datetime
from typing import Union
import discord
from cpl_core.configuration import ConfigurationABC
from cpl_core.database.context import DatabaseContextABC
from cpl_core.logging import LoggerABC
from cpl_discord.events import OnMemberRemoveABC
@ -13,16 +12,14 @@ from bot_core.helper.event_checks import EventChecks
from bot_data.abc.server_repository_abc import ServerRepositoryABC
from bot_data.abc.user_joined_server_repository_abc import UserJoinedServerRepositoryABC
from bot_data.abc.user_repository_abc import UserRepositoryABC
from bot_data.model.server_config import ServerConfig
class BaseOnMemberRemoveEvent(OnMemberRemoveABC):
def __init__(
self,
config: ConfigurationABC,
logger: LoggerABC,
db: DatabaseContextABC,
message_service: MessageServiceABC,
messenger: MessageServiceABC,
users: UserRepositoryABC,
servers: ServerRepositoryABC,
user_joins: UserJoinedServerRepositoryABC,
@ -30,10 +27,10 @@ class BaseOnMemberRemoveEvent(OnMemberRemoveABC):
):
OnMemberRemoveABC.__init__(self)
self._config = config
self._logger = logger
self._base_helper = base_helper
self._db = db
self._message_service = message_service
self._messenger = messenger
self._users = users
self._servers = servers
self._user_joins = user_joins
@ -41,7 +38,8 @@ class BaseOnMemberRemoveEvent(OnMemberRemoveABC):
async def _remove_user(self, member: Union[discord.User, discord.Member]):
self._logger.debug(__name__, f"Remove user {member}")
await self._message_service.send_dm_message(self._t.transform("modules.base.goodbye_message"), member)
settings: ServerConfig = self._config.get_configuration(f"ServerConfig_{member.guild.id}")
await self._messenger.send_dm_message(self._t.transform("modules.base.goodbye_message"), member)
try:
server = self._servers.get_server_by_discord_id(member.guild.id)
@ -58,19 +56,7 @@ class BaseOnMemberRemoveEvent(OnMemberRemoveABC):
except Exception as e:
self._logger.error(__name__, f"Cannot remove user {member.id}", e)
async def _notify_team(self, member: discord.Member):
self._logger.debug(__name__, f"Notify team that a member left")
settings: ServerConfig = self._config.get_configuration(f"ServerConfig_{member.guild.id}")
channel = member.guild.get_channel(settings.team_channel_id)
await self._message_service.send_channel_message(
channel,
self._t.transform("modules.base.member_left_message").format(member.mention),
is_persistent=True,
)
self._logger.trace(__name__, f"Notified team that a member left")
@EventChecks.check_is_ready()
async def on_member_remove(self, member: discord.Member):
self._logger.debug(__name__, f"Module {type(self)} started")
await self._remove_user(member)
await self._notify_team(member)

View File

@ -1,7 +1,6 @@
from typing import Optional
import discord
from cpl_core.configuration import ConfigurationABC
from cpl_core.database.context import DatabaseContextABC
from cpl_discord.events import OnMessageABC
from cpl_discord.service import DiscordBotServiceABC
@ -20,7 +19,6 @@ from bot_data.model.user import User
class BaseOnMessageEvent(OnMessageABC):
def __init__(
self,
config: ConfigurationABC,
logger: MessageLogger,
client_utils: ClientUtilsService,
db: DatabaseContextABC,
@ -30,7 +28,6 @@ class BaseOnMessageEvent(OnMessageABC):
servers: ServerRepositoryABC,
):
OnMessageABC.__init__(self)
self._config = config
self._logger = logger
self._client_utils = client_utils
self._bot = bot
@ -66,7 +63,7 @@ class BaseOnMessageEvent(OnMessageABC):
self._logger.error(__name__, f"User not found {dc_user_id}")
return
settings: ServerConfig = self._config.get_configuration(f"ServerConfig_{server.discord_id}")
settings: ServerConfig = se
if self._client_utils.is_message_xp_count_by_hour_higher_that_max_message_count_per_hour(
message.created_at, user, settings
):

View File

@ -51,4 +51,4 @@
"tslib": "^2.4.1",
"typescript": "~4.9.5"
}
}
}

View File

@ -365,31 +365,31 @@ export class Queries {
static serverConfigQuery = `
query serverConfigQuery($serverId: ID) {
servers(filter: { id: $serverId }) {
name
config {
id
messageDeleteTimer
notificationChatId
maxVoiceStateHours
xpPerMessage
xpPerReaction
maxMessageXpPerHour
xpPerOntimeHour
xpPerEventParticipation
xpPerAchievement
afkCommandChannelId
helpVoiceChannelId
teamChannelId
loginMessageChannelId
afkChannelIds
moderatorRoleIds
adminRoleIds
name
config {
id
messageDeleteTimer
notificationChatId
maxVoiceStateHours
xpPerMessage
xpPerReaction
maxMessageXpPerHour
xpPerOntimeHour
xpPerEventParticipation
xpPerAchievement
afkCommandChannelId
helpVoiceChannelId
teamChannelId
loginMessageChannelId
afkChannelIds
moderatorRoleIds
adminRoleIds
server {
id
}
server {
id
}
}
}
}
`;
}

View File

@ -25,4 +25,4 @@
"Name": "sh-edraft-dark-theme"
}
]
}
}