mirror of
https://github.com/ZeppelinBot/Zeppelin.git
synced 2025-05-23 01:25:02 +00:00
first pass
This commit is contained in:
parent
7f2731262d
commit
bf086f8a91
3 changed files with 12 additions and 10 deletions
|
@ -9,9 +9,6 @@ export const StarboardReactionAddEvt = starboardEvt({
|
||||||
event: "messageReactionAdd",
|
event: "messageReactionAdd",
|
||||||
|
|
||||||
async listener(meta) {
|
async listener(meta) {
|
||||||
// FIXME: Temporarily disabled
|
|
||||||
return;
|
|
||||||
|
|
||||||
const pluginData = meta.pluginData;
|
const pluginData = meta.pluginData;
|
||||||
|
|
||||||
let msg = meta.args.reaction.message as Message;
|
let msg = meta.args.reaction.message as Message;
|
||||||
|
|
|
@ -5,9 +5,6 @@ export const StarboardReactionRemoveEvt = starboardEvt({
|
||||||
event: "messageReactionRemove",
|
event: "messageReactionRemove",
|
||||||
|
|
||||||
async listener(meta) {
|
async listener(meta) {
|
||||||
// FIXME: Temporarily disabled
|
|
||||||
return;
|
|
||||||
|
|
||||||
const boardLock = await meta.pluginData.locks.acquire(allStarboardsLock());
|
const boardLock = await meta.pluginData.locks.acquire(allStarboardsLock());
|
||||||
await meta.pluginData.state.starboardReactions.deleteStarboardReaction(
|
await meta.pluginData.state.starboardReactions.deleteStarboardReaction(
|
||||||
meta.args.reaction.message.id,
|
meta.args.reaction.message.id,
|
||||||
|
@ -21,9 +18,6 @@ export const StarboardReactionRemoveAllEvt = starboardEvt({
|
||||||
event: "messageReactionRemoveAll",
|
event: "messageReactionRemoveAll",
|
||||||
|
|
||||||
async listener(meta) {
|
async listener(meta) {
|
||||||
// FIXME: Temporarily disabled
|
|
||||||
return;
|
|
||||||
|
|
||||||
const boardLock = await meta.pluginData.locks.acquire(allStarboardsLock());
|
const boardLock = await meta.pluginData.locks.acquire(allStarboardsLock());
|
||||||
await meta.pluginData.state.starboardReactions.deleteAllStarboardReactionsForMessageId(meta.args.message.id);
|
await meta.pluginData.state.starboardReactions.deleteAllStarboardReactionsForMessageId(meta.args.message.id);
|
||||||
boardLock.unlock();
|
boardLock.unlock();
|
||||||
|
|
|
@ -1,6 +1,17 @@
|
||||||
|
import { BaseGuildTextChannel } from "discord.js";
|
||||||
import { StarboardMessage } from "../../../data/entities/StarboardMessage";
|
import { StarboardMessage } from "../../../data/entities/StarboardMessage";
|
||||||
import { noop } from "../../../utils";
|
import { noop } from "../../../utils";
|
||||||
|
|
||||||
export async function removeMessageFromStarboard(pluginData, msg: StarboardMessage) {
|
export async function removeMessageFromStarboard(pluginData, msg: StarboardMessage) {
|
||||||
await pluginData.client.deleteMessage(msg.starboard_channel_id, msg.starboard_message_id).catch(noop);
|
// fixes stuck entries on starboard_reactions table after messages being deleted, probably should add a cleanup script for this as well, i.e. DELETE FROM starboard_reactions WHERE message_id NOT IN (SELECT id FROM starboard_messages)
|
||||||
|
await pluginData.state.starboardReactions.deleteAllStarboardReactionsForMessageId(msg.message_id).catch(noop);
|
||||||
|
|
||||||
|
// just re-do the deletion, i know this isnt clean but i dont care
|
||||||
|
const channel: BaseGuildTextChannel = await pluginData.client.channels.cache.find(
|
||||||
|
chan => chan.id === msg.starboard_channel_id,
|
||||||
|
);
|
||||||
|
if (!channel || (channel.type !== "GUILD_TEXT" && channel.type !== "GUILD_NEWS")) return;
|
||||||
|
const message = await channel.messages.fetch(msg.starboard_message_id);
|
||||||
|
if (!message || !message.deletable) return;
|
||||||
|
await message.delete().catch(noop);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue