49 lines
1.5 KiB
TypeScript
49 lines
1.5 KiB
TypeScript
import { DiscordenoGuild, sendMessage } from '@discordeno';
|
|
import { log, LogTypes as LT } from '@Log4Deno';
|
|
|
|
import config from '~config';
|
|
|
|
import dbClient from 'db/client.ts';
|
|
|
|
import { warnColor } from 'embeds/colors.ts';
|
|
|
|
import utils from 'utils/utils.ts';
|
|
|
|
export const guildDeleteHandler = (guild: DiscordenoGuild) => {
|
|
log(LT.LOG, `Handling leaving guild ${JSON.stringify(guild)}`);
|
|
sendMessage(config.logChannel, {
|
|
embeds: [
|
|
{
|
|
title: 'Removed from Guild',
|
|
color: warnColor,
|
|
fields: [
|
|
{
|
|
name: 'Name:',
|
|
value: `${guild.name}`,
|
|
inline: true,
|
|
},
|
|
{
|
|
name: 'Id:',
|
|
value: `${guild.id}`,
|
|
inline: true,
|
|
},
|
|
{
|
|
name: 'Member Count:',
|
|
value: `${guild.memberCount}`,
|
|
inline: true,
|
|
},
|
|
],
|
|
},
|
|
],
|
|
}).catch((e: Error) => utils.commonLoggers.messageSendError('guildDelete.ts:38', 'Leave Guild', e));
|
|
|
|
// Clean up any guild based data
|
|
dbClient
|
|
.execute('DELETE FROM allowed_guilds WHERE guildid = ? AND banned = 0', [guild.id])
|
|
.catch((e) => utils.commonLoggers.dbError('guildDelete.ts:41', 'delete from', e));
|
|
dbClient.execute('DELETE FROM allow_inline WHERE guildid = ?', [guild.id]).catch((e) => utils.commonLoggers.dbError('guildDelete.ts:42', 'delete from', e));
|
|
dbClient
|
|
.execute('DELETE FROM aliases WHERE guildid = ? AND userid = ?', [guild.id, 0n])
|
|
.catch((e) => utils.commonLoggers.dbError('guildDelete.ts:45', 'delete from', e));
|
|
};
|