From 0519dbd91f3333f32f07734754c5b7563e3d391b Mon Sep 17 00:00:00 2001 From: Zevaryx Date: Fri, 16 Jul 2021 17:39:49 -0600 Subject: [PATCH] Ignore on_message(_edit) from @jarvis --- jarvis/__init__.py | 9 +++-- jarvis/cogs/modlog.py | 76 ++++++++++++++++++++++--------------------- 2 files changed, 46 insertions(+), 39 deletions(-) diff --git a/jarvis/__init__.py b/jarvis/__init__.py index d382b1d..41e0190 100644 --- a/jarvis/__init__.py +++ b/jarvis/__init__.py @@ -34,6 +34,9 @@ jarvis_self = Process() __version__ = "0.9.9" +db = DBManager(get_config().mongo).mongo + + @jarvis.event async def on_ready(): global restart_ctx @@ -84,8 +87,10 @@ async def on_member_join(user: Member): @jarvis.event async def on_message(message: Message): - if not isinstance(message.channel, DMChannel): - db = DBManager(get_config().mongo).mongo + if ( + not isinstance(message.channel, DMChannel) + and not message.author.id == jarvis.client.id + ): autoreact = db.jarvis.autoreact.find_one( {"guild": message.guild.id, "channel": message.channel.id} ) diff --git a/jarvis/cogs/modlog.py b/jarvis/cogs/modlog.py index b24b5a9..c48153d 100644 --- a/jarvis/cogs/modlog.py +++ b/jarvis/cogs/modlog.py @@ -2,12 +2,13 @@ import asyncio from datetime import datetime, timedelta import discord -import jarvis import pymongo from discord import DMChannel from discord.ext import commands from discord.utils import find from discord_slash import SlashContext + +import jarvis from jarvis.config import get_config from jarvis.utils import build_embed from jarvis.utils.db import DBManager @@ -356,43 +357,44 @@ class ModlogCog(commands.Cog): async def on_message_edit( self, before: discord.Message, after: discord.Message ): - modlog = self.db.jarvis.settings.find_one( - {"guild": after.guild.id, "setting": "modlog"} - ) - if modlog: - if before.content == after.content or before.content is None: - return - channel = before.guild.get_channel(modlog["value"]) - fields = [ - Field( - "Original Message", - before.content if before.content else "N/A", - False, - ), - Field( - "New Message", - after.content if after.content else "N/A", - False, - ), - ] - embed = build_embed( - title="Message Edited", - description=f"{before.author.mention} edited a message", - fields=fields, - color="#fc9e3f", - timestamp=after.edited_at, - url=after.jump_url, + if before.author != self.bot.client.id: + modlog = self.db.jarvis.settings.find_one( + {"guild": after.guild.id, "setting": "modlog"} ) - embed.set_author( - name=before.author.name, - icon_url=before.author.avatar_url, - url=after.jump_url, - ) - embed.set_footer( - text=f"{before.author.name}#{before.author.discriminator}" - + f" | {before.author.id}" - ) - await channel.send(embed=embed) + if modlog: + if before.content == after.content or before.content is None: + return + channel = before.guild.get_channel(modlog["value"]) + fields = [ + Field( + "Original Message", + before.content if before.content else "N/A", + False, + ), + Field( + "New Message", + after.content if after.content else "N/A", + False, + ), + ] + embed = build_embed( + title="Message Edited", + description=f"{before.author.mention} edited a message", + fields=fields, + color="#fc9e3f", + timestamp=after.edited_at, + url=after.jump_url, + ) + embed.set_author( + name=before.author.name, + icon_url=before.author.avatar_url, + url=after.jump_url, + ) + embed.set_footer( + text=f"{before.author.name}#{before.author.discriminator}" + + f" | {before.author.id}" + ) + await channel.send(embed=embed) @commands.Cog.listener() async def on_message_delete(self, message: discord.Message):