|
- import discord
- from Roxbot.settings import guild_settings
- from Roxbot.load_config import embedcolour
-
-
- async def log(guild, channel, command_name, **kwargs):
- logging = guild_settings.get(guild).logging
- if logging["enabled"]:
- embed = discord.Embed(title="{} command logging".format(command_name), colour=embedcolour)
- for key, value in kwargs.items():
- embed.add_field(name=key, value=value)
- return await channel.send(embed=embed)
-
-
- class Logging:
- def __init__(self, bot_client):
- self.bot = bot_client
-
- async def on_member_join(self, member):
- logging = guild_settings.get(member.guild).logging
- if logging["enabled"]:
- channel = self.bot.get_channel(logging["channel"])
- embed = discord.Embed(title="{} joined the server".format(member), colour=embedcolour)
- embed.add_field(name="ID", value=member.id)
- embed.add_field(name="Mention", value=member.mention)
- embed.add_field(name="Date Account Created", value="{:%a %Y/%m/%d %H:%M:%S} UTC".format(member.created_at))
- embed.add_field(name="Date Joined", value="{:%a %Y/%m/%d %H:%M:%S} UTC".format(member.joined_at))
- embed.set_thumbnail(url=member.avatar_url)
- return await channel.send(embed=embed)
-
- async def on_member_remove(self, member):
- # TODO: Add some way of detecting whether a user left/was kicked or was banned.
- logging = guild_settings.get(member.guild).logging
- if logging["enabled"]:
- channel = self.bot.get_channel(logging["channel"])
- embed = discord.Embed(description="{} left the server".format(member), colour=embedcolour)
- return await channel.send(embed=embed)
-
-
- def setup(bot_client):
- bot_client.add_cog(Logging(bot_client))
|