Files
croccybot/bot/modules/guild_admin/utils/greetings.py
Conatum b31a34e725 (guild admin): Add greeting messages.
New `SettingType` `Message` for general message settings.
New setting `greeting_message`.
New setting `greeting_channel`.
New setting `starting_funds`.
New setting `returning_message`.
Add a greeting message hook.
Add initial funds on lion creation.
Data migration v3 -> v4.
2021-10-04 18:16:34 +03:00

30 lines
845 B
Python

import discord
from cmdClient.Context import Context
from meta import client
from .settings import greeting_message, greeting_channel, returning_message
@client.add_after_event('member_join')
async def send_greetings(client, member):
guild = member.guild
returning = bool(client.data.lions.fetch((guild.id, member.id)))
# Handle greeting message
channel = greeting_channel.get(guild.id).value
if channel is not None:
if channel == greeting_channel.DMCHANNEL:
channel = member
ctx = Context(client, guild=guild, author=member)
if returning:
args = returning_message.get(guild.id).args(ctx)
else:
args = greeting_message.get(guild.id).args(ctx)
try:
await channel.send(**args)
except discord.HTTPException:
pass