3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-03-18 23:09:59 +00:00
zeppelin/backend/src/plugins/MessageSaver/commands/SaveMessagesToDB.ts

30 lines
999 B
TypeScript

import { messageSaverCmd } from "../types";
import { commandTypeHelpers as ct } from "../../../commandTypes";
import { saveMessagesToDB } from "../saveMessagesToDB";
import { sendSuccessMessage } from "src/pluginUtils";
export const SaveMessagesToDBCmd = messageSaverCmd({
trigger: "save_messages_to_db",
permission: "can_manage",
source: "guild",
signature: {
channel: ct.textChannel(),
ids: ct.string({ catchAll: true }),
},
async run({ message: msg, args, pluginData }) {
await msg.channel.createMessage("Saving specified messages...");
const { savedCount, failed } = await saveMessagesToDB(pluginData, args.channel, args.ids.trim().split(" "));
if (failed.length) {
sendSuccessMessage(
pluginData,
msg.channel,
`Saved ${savedCount} messages. The following messages could not be saved: ${failed.join(", ")}`,
);
} else {
sendSuccessMessage(pluginData, msg.channel, `Saved ${savedCount} messages!`);
}
},
});