foxwells.vinboard: figuring out why not getting from db properly
This commit is contained in:
parent
c02e85aafe
commit
bb62bc8c0a
1 changed files with 32 additions and 18 deletions
|
@ -243,6 +243,7 @@ async function createBoardMessage(msg, count) {
|
|||
username: msg.member?.displayName ?? msg.author.username,
|
||||
threadID: VINBOARD_THREAD_ID,
|
||||
embeds: [embed],
|
||||
attachments: image.file ? [{filename: "thumb.jpg"}] : null,
|
||||
files: image.file ? [{file: image.file, filename: "thumb.jpg"}] : null,
|
||||
wait: true,
|
||||
};
|
||||
|
@ -250,6 +251,7 @@ async function createBoardMessage(msg, count) {
|
|||
|
||||
let vinboard_webhook;
|
||||
let vin_channel;
|
||||
let board_channel;
|
||||
async function processReaction(_msg, user, reaction) {
|
||||
if (_msg.guildID != FOXWELLS_GUILD_ID) return;
|
||||
if (_msg.channel.id != VINBOARD_CHANNEL_ID) return;
|
||||
|
@ -267,6 +269,15 @@ async function processReaction(_msg, user, reaction) {
|
|||
return;
|
||||
}
|
||||
|
||||
if (!board_channel) {
|
||||
vin_channel.threads.get(VINBOARD_THREAD_ID);
|
||||
}
|
||||
|
||||
if (!board_channel) {
|
||||
logger.error("vinboard", "Failed to get thread.");
|
||||
return;
|
||||
}
|
||||
|
||||
const msg =
|
||||
vin_channel.messages.get(_msg.id) ??
|
||||
(await vin_channel.getMessage(_msg.id));
|
||||
|
@ -289,6 +300,7 @@ async function processReaction(_msg, user, reaction) {
|
|||
).length;
|
||||
|
||||
const dbEntry = getBoardEntry(msg.id);
|
||||
logger.debug("vinboard", JSON.stringify(dbEntry));
|
||||
if (dbEntry) {
|
||||
if (trueCount == 0) {
|
||||
logger.verbose("vinboard", `Deleting entry for "${msg.id}"`);
|
||||
|
@ -301,23 +313,26 @@ async function processReaction(_msg, user, reaction) {
|
|||
}
|
||||
} else {
|
||||
if (dbEntry.board_id) {
|
||||
logger.verbose(
|
||||
"vinboard",
|
||||
`Updating count for "${msg.id}" (${
|
||||
dbEntry.count ?? 0
|
||||
} -> ${trueCount})`
|
||||
);
|
||||
await webhook.editMessage(
|
||||
dbEntry.board_id,
|
||||
await createBoardMessage(msg, trueCount)
|
||||
);
|
||||
await setBoardEntry(msg.id, trueCount, dbEntry.board_id);
|
||||
} else {
|
||||
logger.verbose("vinboard", `Creating entry for "${msg.id}"`);
|
||||
const boardMessage = await vinboard_webhook.execute(
|
||||
await createBoardMessage(msg, trueCount)
|
||||
);
|
||||
await setBoardEntry(msg.id, trueCount, boardMessage.id);
|
||||
const _boardMessage = await board_channel.getMessage(dbEntry.board_id);
|
||||
if (_boardMessage) {
|
||||
logger.verbose(
|
||||
"vinboard",
|
||||
`Updating count for "${msg.id}" (${
|
||||
dbEntry.count ?? 0
|
||||
} -> ${trueCount})`
|
||||
);
|
||||
await webhook.editMessage(
|
||||
_boardMessage.id,
|
||||
await createBoardMessage(msg, trueCount)
|
||||
);
|
||||
await setBoardEntry(msg.id, trueCount, dbEntry.board_id);
|
||||
} else {
|
||||
logger.verbose("vinboard", `Creating entry for "${msg.id}"`);
|
||||
const boardMessage = await vinboard_webhook.execute(
|
||||
await createBoardMessage(msg, trueCount)
|
||||
);
|
||||
await setBoardEntry(msg.id, trueCount, boardMessage.id);
|
||||
}
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
@ -325,7 +340,6 @@ async function processReaction(_msg, user, reaction) {
|
|||
const boardMessage = await vinboard_webhook.execute(
|
||||
await createBoardMessage(msg, trueCount)
|
||||
);
|
||||
logger.debug("vinboard", JSON.stringfy(boardMessage));
|
||||
await setBoardEntry(msg.id, trueCount, boardMessage.id);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue