Disable modlog for now

This commit is contained in:
Zeva Rose 2021-07-04 20:01:05 -06:00
parent 212d23a93d
commit 4d0aa6d064

View file

@ -24,206 +24,187 @@ class ModlogCog(commands.Cog):
auditlog,
)
@commands.Cog.listener()
async def on_member_ban(self, guild: discord.Guild, user: discord.User):
modlog = self.db.jarvis.settings.find_one(
{"guild": guild.id, "setting": "modlog"}
)
if modlog:
channel = guild.get_channel(modlog["value"])
await asyncio.sleep(0.5) # Need to wait for audit log
auditlog = await guild.audit_logs(
limit=50,
action=discord.AuditLogAction.ban,
after=datetime.utcnow() - timedelta(seconds=15),
oldest_first=False,
)
log: discord.AuditLogEntry = self.get_latest_log(auditlog, user)
fields = [
Field(
name="Member",
value=f"{user.mention} ({user.name}#{user.descriminator})",
),
Field(
name="Moderator",
value=f"{user.mention} ({user.name}#{user.descriminator})",
),
Field(name="Reason", value=log.reason, inline=False),
]
embed = build_embed(
title="User Banned",
description=f"A user was banned from {guild.name}",
color="#bf2a3e",
fields=fields,
timestamp=log.created_at,
)
embed.set_author(
name=f"{user.name}#{user.discriminator} | {user.id}",
icon_url=user.avatar_url,
)
await channel.send(embed=embed)
@commands.Cog.listener()
async def on_member_unban(
self, guild: discord.Guild, user: discord.User
):
modlog = self.db.jarvis.settings.find_one(
{"guild": guild.id, "setting": "modlog"}
)
if modlog:
channel = guild.get_channel(modlog["value"])
await asyncio.sleep(0.5) # Need to wait for audit log
auditlog = await guild.audit_logs(
limit=50,
action=discord.AuditLogAction.unban,
after=datetime.utcnow() - timedelta(seconds=15),
oldest_first=False,
)
log: discord.AuditLogEntry = self.get_latest_log(
auditlog, user
)
fields = [
Field(
name="Member",
value=f"{user.mention} ({user.name}#{user.descriminator})",
),
Field(
name="Moderator",
value=f"{user.mention} ({user.name}#{user.descriminator})",
),
Field(name="Reason", value=log.reason, inline=False),
]
embed = build_embed(
title="User Unbanned",
description=f"A user was unbanned from {guild.name}",
color="#bf2a3e",
fields=fields,
timestamp=log.created_at,
)
embed.set_author(
name=f"{user.name}#{user.discriminator} | {user.id}",
icon_url=user.avatar_url,
)
await channel.send(embed=embed)
@commands.Cog.listener()
async def on_member_remove(self, user: discord.User):
modlog = self.db.jarvis.settings.find_one(
{"guild": user.guild.id, "setting": "modlog"}
)
if modlog:
channel = user.guild.get_channel(modlog["value"])
await asyncio.sleep(0.5) # Need to wait for audit log
auditlog = await user.guild.audit_logs(
limit=50,
action=discord.AuditLogAction.kick,
after=datetime.utcnow() - timedelta(seconds=15),
oldest_first=False,
)
log: discord.AuditLogEntry = self.get_latest_log(
auditlog, user
)
fields = [
Field(
name="Member",
value=f"{user.mention} ({user.name}#{user.descriminator})",
),
Field(
name="Moderator",
value=f"{user.mention} ({user.name}#{user.descriminator})",
),
Field(name="Reason", value=log.reason, inline=False),
]
embed = build_embed(
title="User Kicked",
description=f"A user was kicked from {guild.name}",
color="#bf2a3e",
fields=fields,
timestamp=log.created_at,
)
embed.set_author(
name=f"{user.name}#{user.discriminator} | {user.id}",
icon_url=user.avatar_url,
)
await channel.send(embed=embed)
@commands.Cog.listener()
async def on_member_update(
self, before: discord.User, after: discord.User
):
modlog = self.db.jarvis.settings.find_one(
{"guild": user.guild.id, "setting": "modlog"}
)
if modlog:
channel = user.guild.get_channel(modlog["value"])
await asyncio.sleep(0.5) # Need to wait for audit log
embed = None
mute = self.db.jarvis.settings.find_one(
{"guild": before.guild.id, "setting": "mute"}
)
verified = self.db.jarvis.settings.find_one(
{"guild": before.guild.id, "setting": "verified"}
)
if (
mute
and before.guild.get_role(mute["value"])
in after.roles
):
# TODO: User was muted
pass
elif (
mute
and before.guild.get_role(mute["value"])
in before.roles
):
# TODO: User was unmuted
pass
elif (
verified
and before.guild.get_role(verified["value"])
in before.roles
):
# TODO: User was verified
pass
auditlog = await user.guild.audit_logs(
limit=50,
action=discord.AuditLogAction.kick,
after=datetime.utcnow() - timedelta(seconds=15),
oldest_first=False,
)
log: discord.AuditLogEntry = self.get_latest_log(
auditlog, user
)
fields = [
Field(
name="Member",
value=f"{user.mention} ({user.name}#{user.descriminator})",
),
Field(
name="Moderator",
value=f"{user.mention} ({user.name}#{user.descriminator})",
),
Field(
name="Reason", value=log.reason, inline=False
),
]
embed = build_embed(
title="User Kicked",
description=f"A user was kicked from {guild.name}",
color="#bf2a3e",
fields=fields,
timestamp=log.created_at,
)
embed.set_author(
name=f"{user.name}#{user.discriminator} | {user.id}",
icon_url=user.avatar_url,
)
await channel.send(embed=embed)
# @commands.Cog.listener()
# async def on_member_ban(self, guild: discord.Guild, user: discord.User):
# modlog = self.db.jarvis.settings.find_one(
# {"guild": guild.id, "setting": "modlog"}
# )
# if modlog:
# channel = guild.get_channel(modlog["value"])
# await asyncio.sleep(0.5) # Need to wait for audit log
# auditlog = await guild.audit_logs(
# limit=50,
# action=discord.AuditLogAction.ban,
# after=datetime.utcnow() - timedelta(seconds=15),
# oldest_first=False,
# )
# log: discord.AuditLogEntry = self.get_latest_log(auditlog, user)
# fields = [
# Field(
# name="Member",
# value=f"{user.mention} ({user.name}#{user.descriminator})",
# ),
# Field(
# name="Moderator",
# value=f"{user.mention} ({user.name}#{user.descriminator})",
# ),
# Field(name="Reason", value=log.reason, inline=False),
# ]
# embed = build_embed(
# title="User Banned",
# description=f"A user was banned from {guild.name}",
# color="#bf2a3e",
# fields=fields,
# timestamp=log.created_at,
# )
# embed.set_author(
# name=f"{user.name}#{user.discriminator} | {user.id}",
# icon_url=user.avatar_url,
# )
#
# await channel.send(embed=embed)
#
# @commands.Cog.listener()
# async def on_member_unban(self, guild: discord.Guild, user: discord.User):
# modlog = self.db.jarvis.settings.find_one(
# {"guild": guild.id, "setting": "modlog"}
# )
# if modlog:
# channel = guild.get_channel(modlog["value"])
# await asyncio.sleep(0.5) # Need to wait for audit log
# auditlog = await guild.audit_logs(
# limit=50,
# action=discord.AuditLogAction.unban,
# after=datetime.utcnow() - timedelta(seconds=15),
# oldest_first=False,
# )
# log: discord.AuditLogEntry = self.get_latest_log(auditlog, user)
# fields = [
# Field(
# name="Member",
# value=f"{user.mention} ({user.name}#{user.descriminator})",
# ),
# Field(
# name="Moderator",
# value=f"{user.mention} ({user.name}#{user.descriminator})",
# ),
# Field(name="Reason", value=log.reason, inline=False),
# ]
# embed = build_embed(
# title="User Unbanned",
# description=f"A user was unbanned from {guild.name}",
# color="#bf2a3e",
# fields=fields,
# timestamp=log.created_at,
# )
# embed.set_author(
# name=f"{user.name}#{user.discriminator} | {user.id}",
# icon_url=user.avatar_url,
# )
#
# await channel.send(embed=embed)
#
# @commands.Cog.listener()
# async def on_member_remove(self, user: discord.User):
# modlog = self.db.jarvis.settings.find_one(
# {"guild": user.guild.id, "setting": "modlog"}
# )
# if modlog:
# channel = user.guild.get_channel(modlog["value"])
# await asyncio.sleep(0.5) # Need to wait for audit log
# auditlog = await user.guild.audit_logs(
# limit=50,
# action=discord.AuditLogAction.kick,
# after=datetime.utcnow() - timedelta(seconds=15),
# oldest_first=False,
# )
# log: discord.AuditLogEntry = self.get_latest_log(auditlog, user)
# fields = [
# Field(
# name="Member",
# value=f"{user.mention} ({user.name}#{user.descriminator})",
# ),
# Field(
# name="Moderator",
# value=f"{user.mention} ({user.name}#{user.descriminator})",
# ),
# Field(name="Reason", value=log.reason, inline=False),
# ]
# embed = build_embed(
# title="User Kicked",
# description=f"A user was kicked from {guild.name}",
# color="#bf2a3e",
# fields=fields,
# timestamp=log.created_at,
# )
# embed.set_author(
# name=f"{user.name}#{user.discriminator} | {user.id}",
# icon_url=user.avatar_url,
# )
#
# await channel.send(embed=embed)
#
# @commands.Cog.listener()
# async def on_member_update(
# self, before: discord.User, after: discord.User
# ):
# modlog = self.db.jarvis.settings.find_one(
# {"guild": user.guild.id, "setting": "modlog"}
# )
# if modlog:
# channel = user.guild.get_channel(modlog["value"])
# await asyncio.sleep(0.5) # Need to wait for audit log
# embed = None
# mute = self.db.jarvis.settings.find_one(
# {"guild": before.guild.id, "setting": "mute"}
# )
# verified = self.db.jarvis.settings.find_one(
# {"guild": before.guild.id, "setting": "verified"}
# )
# if mute and before.guild.get_role(mute["value"]) in after.roles:
# # TODO: User was muted
# pass
# elif mute and before.guild.get_role(mute["value"]) in before.roles:
# # TODO: User was unmuted
# pass
# elif (
# verified
# and before.guild.get_role(verified["value"]) in before.roles
# ):
# # TODO: User was verified
# pass
#
# auditlog = await user.guild.audit_logs(
# limit=50,
# action=discord.AuditLogAction.kick,
# after=datetime.utcnow() - timedelta(seconds=15),
# oldest_first=False,
# )
# log: discord.AuditLogEntry = self.get_latest_log(auditlog, user)
# fields = [
# Field(
# name="Member",
# value=f"{user.mention} ({user.name}#{user.descriminator})",
# ),
# Field(
# name="Moderator",
# value=f"{user.mention} ({user.name}#{user.descriminator})",
# ),
# Field(name="Reason", value=log.reason, inline=False),
# ]
# embed = build_embed(
# title="User Kicked",
# description=f"A user was kicked from {guild.name}",
# color="#bf2a3e",
# fields=fields,
# timestamp=log.created_at,
# )
# embed.set_author(
# name=f"{user.name}#{user.discriminator} | {user.id}",
# icon_url=user.avatar_url,
# )
#
# await channel.send(embed=embed)
def setup(bot):