diff --git a/jarvis/client/events/message.py b/jarvis/client/events/message.py index 3c4c402..f3a760a 100644 --- a/jarvis/client/events/message.py +++ b/jarvis/client/events/message.py @@ -37,9 +37,7 @@ class MessageEventMixin: autopurge = await Autopurge.find_one(q(guild=message.guild.id, channel=message.channel.id)) if autopurge: if not message.author.has_permission(Permissions.ADMINISTRATOR): - self.logger.debug( - f"Autopurging message {message.guild.id}/{message.channel.id}/{message.id}" - ) + self.logger.debug(f"Autopurging message {message.guild.id}/{message.channel.id}/{message.id}") await message.delete(delay=autopurge.delay) async def autoreact(self, message: Message) -> None: @@ -51,9 +49,7 @@ class MessageEventMixin: ) ) if autoreact: - self.logger.debug( - f"Autoreacting to message {message.guild.id}/{message.channel.id}/{message.id}" - ) + self.logger.debug(f"Autoreacting to message {message.guild.id}/{message.channel.id}/{message.id}") for reaction in autoreact.reactions: await message.add_reaction(reaction) if autoreact.thread: @@ -103,9 +99,7 @@ class MessageEventMixin: reason="Sent an invite link", user=message.author.id, ).commit() - tracker = warnings_tracker.labels( - guild_id=message.guild.id, guild_name=message.guild.name - ) + tracker = warnings_tracker.labels(guild_id=message.guild.id, guild_name=message.guild.name) tracker.inc() embed = warning_embed(message.author, "Sent an invite link", self.user) try: @@ -129,9 +123,7 @@ class MessageEventMixin: - (1 if message.author.id in message._mention_ids else 0) # noqa: W503 > massmention.value # noqa: W503 ): - self.logger.debug( - f"Massmention threshold on {message.guild.id}/{message.channel.id}/{message.id}" - ) + self.logger.debug(f"Massmention threshold on {message.guild.id}/{message.channel.id}/{message.id}") expires_at = datetime.now(tz=timezone.utc) + timedelta(hours=24) await Warning( active=True, @@ -142,9 +134,7 @@ class MessageEventMixin: reason="Mass Mention", user=message.author.id, ).commit() - tracker = warnings_tracker.labels( - guild_id=message.guild.id, guild_name=message.guild.name - ) + tracker = warnings_tracker.labels(guild_id=message.guild.id, guild_name=message.guild.name) tracker.inc() embed = warning_embed(message.author, "Mass Mention", self.user) try: @@ -197,9 +187,7 @@ class MessageEventMixin: break if role_in_rolepings and user_missing_role and not user_is_admin and not user_has_bypass: - self.logger.debug( - f"Rolepinged role in {message.guild.id}/{message.channel.id}/{message.id}" - ) + self.logger.debug(f"Rolepinged role in {message.guild.id}/{message.channel.id}/{message.id}") expires_at = datetime.now(tz=timezone.utc) + timedelta(hours=24) await Warning( active=True, @@ -210,9 +198,7 @@ class MessageEventMixin: reason="Pinged a blocked role/user with a blocked role", user=message.author.id, ).commit() - tracker = warnings_tracker.labels( - guild_id=message.guild.id, guild_name=message.guild.name - ) + tracker = warnings_tracker.labels(guild_id=message.guild.id, guild_name=message.guild.name) tracker.inc() embed = warning_embed( message.author, "Pinged a blocked role/user with a blocked role", self.user @@ -242,9 +228,7 @@ class MessageEventMixin: reason="Phishing URL", user=message.author.id, ).commit() - tracker = warnings_tracker.labels( - guild_id=message.guild.id, guild_name=message.guild.name - ) + tracker = warnings_tracker.labels(guild_id=message.guild.id, guild_name=message.guild.name) tracker.inc() embed = warning_embed(message.author, "Phishing URL", self.user) try: @@ -255,9 +239,7 @@ class MessageEventMixin: await message.delete() except Exception: self.logger.warn("Failed to delete malicious message") - tracker = malicious_tracker.labels( - guild_id=message.guild.id, guild_name=message.guild.name - ) + tracker = malicious_tracker.labels(guild_id=message.guild.id, guild_name=message.guild.name) tracker.inc() if not pl or not pl.confirmed: @@ -320,9 +302,7 @@ class MessageEventMixin: reason="Unsafe URL", user=message.author.id, ).commit() - tracker = warnings_tracker.labels( - guild_id=message.guild.id, guild_name=message.guild.name - ) + tracker = warnings_tracker.labels(guild_id=message.guild.id, guild_name=message.guild.name) tracker.inc() reasons = ", ".join(f"{m['source']}: {m['type']}" for m in data["matches"]) embed = warning_embed(message.author, reasons, self.user) @@ -334,9 +314,7 @@ class MessageEventMixin: await message.delete() except Exception: self.logger.warn("Failed to delete malicious message") - tracker = malicious_tracker.labels( - guild_id=message.guild.id, guild_name=message.guild.name - ) + tracker = malicious_tracker.labels(guild_id=message.guild.id, guild_name=message.guild.name) tracker.inc() if not pl or not pl.confirmed: @@ -450,9 +428,7 @@ class MessageEventMixin: icon_url=after.author.display_avatar.url, url=after.jump_url, ) - embed.set_footer( - text=f"{after.author.username}#{after.author.discriminator} | {after.author.id}" - ) + embed.set_footer(text=f"{after.author.username}#{after.author.discriminator} | {after.author.id}") await channel.send(embeds=embed) except Exception as e: self.logger.warning( @@ -527,13 +503,8 @@ class MessageEventMixin: url=message.jump_url, ) embed.set_footer( - text=( - f"{message.author.username}#{message.author.discriminator} | " - f"{message.author.id}" - ) + text=(f"{message.author.username}#{message.author.discriminator} | " f"{message.author.id}") ) await channel.send(embeds=embed) except Exception as e: - self.logger.warning( - f"Failed to process edit {message.guild.id}/{message.channel.id}/{message.id}: {e}" - ) + self.logger.warning(f"Failed to process edit {message.guild.id}/{message.channel.id}/{message.id}: {e}") diff --git a/jarvis/cogs/remindme.py b/jarvis/cogs/remindme.py index 9d2f0ce..53a4874 100644 --- a/jarvis/cogs/remindme.py +++ b/jarvis/cogs/remindme.py @@ -181,7 +181,7 @@ class RemindmeCog(Extension): fields = [] for reminder in reminders: if reminder.private and isinstance(ctx.channel, GuildChannel): - fields.embed( + fields.append( EmbedField( name=f" ()", value="Please DM me this command to view the content of this reminder", diff --git a/jarvis/cogs/util.py b/jarvis/cogs/util.py index 4b0160d..37adfa1 100644 --- a/jarvis/cogs/util.py +++ b/jarvis/cogs/util.py @@ -253,6 +253,10 @@ class UtilCog(Extension): ), ] + if muted: + ts = int(user.communication_disabled_until.timestamp()) + fields.append(EmbedField(name="Muted Until", value=f" ()")) + embed = build_embed( title="", description=user.mention, diff --git a/pyproject.toml b/pyproject.toml index c13722a..14f3810 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "jarvis" -version = "2.2.3" +version = "2.3.0" description = "JARVIS admin bot" authors = ["Zevaryx "]