join message

This commit is contained in:
Axel Olausson Holtenäs 2022-04-17 18:14:13 +02:00
parent f7bb645571
commit e1ca0bfe0b
No known key found for this signature in database
GPG key ID: 7BF6826B76382CBA
2 changed files with 47 additions and 0 deletions

View file

@ -5,6 +5,7 @@ import { GuildMember } from "discord.js";
import updatePresence from "@helpers/updatePresence"; import updatePresence from "@helpers/updatePresence";
import fetchUser from "@helpers/fetchUser"; import fetchUser from "@helpers/fetchUser";
import logger from "@logger"; import logger from "@logger";
import joinMessage from "../guildMemberAdd/joinMessage";
export default { export default {
name: "guildMemberAdd", name: "guildMemberAdd",
@ -15,6 +16,7 @@ export default {
`New member: ${user.tag} (${user.id}) added to guild: ${guild.name} (${guild.id})` `New member: ${user.tag} (${user.id}) added to guild: ${guild.name} (${guild.id})`
); );
await joinMessage.execute(member);
await fetchUser(user, guild); await fetchUser(user, guild);
await updatePresence(client); await updatePresence(client);
}, },

View file

@ -0,0 +1,45 @@
import logger from "@logger";
import { GuildMember, MessageEmbed, TextChannel } from "discord.js";
import guildSchema from "@schemas/guild";
import { footerText, footerIcon, successColor } from "@config/embed";
export default {
execute: async (member: GuildMember) => {
logger.info(member);
const guildData = await guildSchema.findOne({ guildId: member.guild.id });
const { client } = member;
if (guildData === null) return;
if (guildData.welcome.status !== true) return;
if (!guildData.welcome.joinChannel) return;
const channel = client.channels.cache.get(
`${guildData.welcome.joinChannel}`
);
if (channel === null) return;
(channel as TextChannel).send({
embeds: [
new MessageEmbed()
.setColor(successColor)
.setTitle(`${member.user.username} has joined the server!`)
.setThumbnail(member.user.displayAvatarURL())
.setDescription(
guildData.welcome.joinChannelMessage ||
"Configure a join message in the `/settings guild welcome`."
)
.setTimestamp()
.setFooter({
text: footerText,
iconURL: footerIcon,
}),
],
});
},
};