More rework progress, mostly done up to ModActions
This commit is contained in:
parent
52839cc9f3
commit
57893e7f76
38 changed files with 199 additions and 241 deletions
|
@ -9,6 +9,7 @@ import { censorMessage } from "./censorMessage";
|
|||
import escapeStringRegexp from "escape-string-regexp";
|
||||
import { logger } from "../../../logger";
|
||||
import { allowTimeout } from "../../../RegExpRunner";
|
||||
import { MessageEmbed, Invite } from "discord.js";
|
||||
|
||||
export async function applyFiltersToMsg(
|
||||
pluginData: GuildPluginData<CensorPluginType>,
|
||||
|
@ -20,7 +21,7 @@ export async function applyFiltersToMsg(
|
|||
let messageContent = savedMessage.data.content || "";
|
||||
if (savedMessage.data.attachments) messageContent += " " + JSON.stringify(savedMessage.data.attachments);
|
||||
if (savedMessage.data.embeds) {
|
||||
const embeds = (savedMessage.data.embeds as Embed[]).map(e => cloneDeep(e));
|
||||
const embeds = (savedMessage.data.embeds as MessageEmbed[]).map(e => cloneDeep(e));
|
||||
for (const embed of embeds) {
|
||||
if (embed.type === "video") {
|
||||
// Ignore video descriptions as they're not actually shown on the embed
|
||||
|
@ -69,20 +70,20 @@ export async function applyFiltersToMsg(
|
|||
}
|
||||
|
||||
if (isGuildInvite(invite)) {
|
||||
if (inviteGuildWhitelist && !inviteGuildWhitelist.includes(invite.guild.id)) {
|
||||
if (inviteGuildWhitelist && !inviteGuildWhitelist.includes(invite.guild!.id)) {
|
||||
censorMessage(
|
||||
pluginData,
|
||||
savedMessage,
|
||||
`invite guild (**${invite.guild.name}** \`${invite.guild.id}\`) not found in whitelist`,
|
||||
`invite guild (**${invite.guild!.name}** \`${invite.guild!.id}\`) not found in whitelist`,
|
||||
);
|
||||
return true;
|
||||
}
|
||||
|
||||
if (inviteGuildBlacklist && inviteGuildBlacklist.includes(invite.guild.id)) {
|
||||
if (inviteGuildBlacklist && inviteGuildBlacklist.includes(invite.guild!.id)) {
|
||||
censorMessage(
|
||||
pluginData,
|
||||
savedMessage,
|
||||
`invite guild (**${invite.guild.name}** \`${invite.guild.id}\`) found in blacklist`,
|
||||
`invite guild (**${invite.guild!.name}** \`${invite.guild!.id}\`) found in blacklist`,
|
||||
);
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -4,6 +4,7 @@ import { SavedMessage } from "../../../data/entities/SavedMessage";
|
|||
import { LogType } from "../../../data/LogType";
|
||||
import { stripObjectToScalars, resolveUser } from "../../../utils";
|
||||
import { disableCodeBlocks, deactivateMentions } from "knub/dist/helpers";
|
||||
import { TextChannel } from "discord.js";
|
||||
|
||||
export async function censorMessage(
|
||||
pluginData: GuildPluginData<CensorPluginType>,
|
||||
|
@ -13,7 +14,8 @@ export async function censorMessage(
|
|||
pluginData.state.serverLogs.ignoreLog(LogType.MESSAGE_DELETE, savedMessage.id);
|
||||
|
||||
try {
|
||||
await pluginData.client.deleteMessage(savedMessage.channel_id, savedMessage.id, "Censored");
|
||||
const channel = pluginData.guild.channels.resolve(savedMessage.channel_id) as TextChannel
|
||||
await channel.messages.delete(savedMessage.id);
|
||||
} catch {
|
||||
return;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue