mirror of
https://github.com/toast-ts/Daggerbot-TS.git
synced 2024-11-18 00:31:00 -05:00
Move server join date from guildMemberRemove to guildBanAdd
This commit is contained in:
parent
a3c623c41a
commit
096d06c9d2
@ -43,6 +43,7 @@ export default class TClient extends Discord.Client {
|
|||||||
public ytChannels: YouTubeChannelsSvc = new YouTubeChannelsSvc();
|
public ytChannels: YouTubeChannelsSvc = new YouTubeChannelsSvc();
|
||||||
public repeatedMessages: IRepeatedMessages = {};
|
public repeatedMessages: IRepeatedMessages = {};
|
||||||
public crosspostSpam: ICrosspostSpam = {};
|
public crosspostSpam: ICrosspostSpam = {};
|
||||||
|
public memberJoinDates: Map<Discord.Snowflake, string> = new Map();
|
||||||
|
|
||||||
constructor() {
|
constructor() {
|
||||||
super({
|
super({
|
||||||
|
@ -6,14 +6,17 @@ export default class GuildBanAdd {
|
|||||||
const banLog = (await member.guild.fetchAuditLogs({ limit: 1, type: Discord.AuditLogEvent.MemberBanAdd })).entries.first();
|
const banLog = (await member.guild.fetchAuditLogs({ limit: 1, type: Discord.AuditLogEvent.MemberBanAdd })).entries.first();
|
||||||
if (!banLog) return console.log(`Member was banned from ${member.guild.name} but no audit log for this member.`)
|
if (!banLog) return console.log(`Member was banned from ${member.guild.name} but no audit log for this member.`)
|
||||||
const {executor, target, reason } = banLog;
|
const {executor, target, reason } = banLog;
|
||||||
|
const members_joindate = client.memberJoinDates.get(member.user.id);
|
||||||
if (target.id === member.user.id) {
|
if (target.id === member.user.id) {
|
||||||
const embed = new client.embed().setColor(client.config.embedColorRed).setTimestamp().setThumbnail(member.user.displayAvatarURL({size: 2048}))
|
const embed = new client.embed().setColor(client.config.embedColorRed).setTimestamp().setThumbnail(member.user.displayAvatarURL({size: 2048}))
|
||||||
.setTitle(`Member Banned: ${target.username}`).addFields(
|
.setTitle(`Member Banned: ${target.username}`).addFields(
|
||||||
{name: '🔹 Moderator', value: `<@${executor.id}>\n\`${executor.id}\``},
|
{name: '🔹 Moderator', value: `<@${executor.id}>\n\`${executor.id}\``},
|
||||||
|
{name: '🔹 Server Join Date', value: members_joindate ? `<t:${members_joindate}>\n<t:${members_joindate}:R>` : '*Unknown timestamp*'},
|
||||||
{name: '🔹 Reason', value: reason === null ? 'Reason unspecified': reason}
|
{name: '🔹 Reason', value: reason === null ? 'Reason unspecified': reason}
|
||||||
);
|
);
|
||||||
if (!await client.userLevels.fetchUser(member.user.id)) embed.setFooter({text: 'Rank data has been wiped.'});
|
if (!await client.userLevels.fetchUser(member.user.id)) embed.setFooter({text: 'Rank data has been wiped.'});
|
||||||
(client.channels.resolve(client.config.dcServer.channels.logs) as Discord.TextChannel).send({embeds: [embed]})
|
(client.channels.resolve(client.config.dcServer.channels.logs) as Discord.TextChannel).send({embeds: [embed]});
|
||||||
|
client.memberJoinDates.delete(member.user.id);
|
||||||
} else console.log(`User was banned from "${member.guild.name}" but no audit log could be fetched.`)
|
} else console.log(`User was banned from "${member.guild.name}" but no audit log could be fetched.`)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -4,10 +4,8 @@ export default class GuildMemberRemove {
|
|||||||
static async run(client:TClient, member:Discord.GuildMember) {
|
static async run(client:TClient, member:Discord.GuildMember) {
|
||||||
if (!client.config.botSwitches.logs) return;
|
if (!client.config.botSwitches.logs) return;
|
||||||
if (!member.joinedTimestamp || member.guild?.id != client.config.dcServer.id) return;
|
if (!member.joinedTimestamp || member.guild?.id != client.config.dcServer.id) return;
|
||||||
if (client.guilds.cache.get(client.config.dcServer.id).bans.cache.has(member.id)) {
|
client.memberJoinDates.set(member.user.id, `${Math.round(member.joinedTimestamp/1000)}`);
|
||||||
(client.channels.resolve(client.config.dcServer.channels.logs) as Discord.TextChannel).send(`**${member.user.username}**'s join date is <t:${Math.round(member.joinedTimestamp/1000)}>`)
|
if (client.guilds.cache.get(client.config.dcServer.id).bans.cache.has(member.id)) return await client.userLevels.deleteUser(member.id);
|
||||||
return await client.userLevels.deleteUser(member.id);
|
|
||||||
};
|
|
||||||
let isBot = 'Bot';
|
let isBot = 'Bot';
|
||||||
if (!member.user.bot) isBot = 'Member';
|
if (!member.user.bot) isBot = 'Member';
|
||||||
const levelData = await client.userLevels.fetchUser(member.id);
|
const levelData = await client.userLevels.fetchUser(member.id);
|
||||||
|
Loading…
Reference in New Issue
Block a user