3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-05-10 12:25:02 +00:00
zeppelin/backend/src/plugins/Post/commands/SchedluedPostsDeleteCmd.ts
2021-01-17 21:21:18 +02:00

26 lines
872 B
TypeScript

import { postCmd } from "../types";
import { sorter } from "../../../utils";
import { sendErrorMessage, sendSuccessMessage } from "../../../pluginUtils";
import { commandTypeHelpers as ct } from "../../../commandTypes";
export const ScheduledPostsDeleteCmd = postCmd({
trigger: ["scheduled_posts delete", "scheduled_posts d"],
permission: "can_post",
signature: {
num: ct.number(),
},
async run({ message: msg, args, pluginData }) {
const scheduledPosts = await pluginData.state.scheduledPosts.all();
scheduledPosts.sort(sorter("post_at"));
const post = scheduledPosts[args.num - 1];
if (!post) {
sendErrorMessage(pluginData, msg.channel, "Scheduled post not found");
return;
}
await pluginData.state.scheduledPosts.delete(post.id);
sendSuccessMessage(pluginData, msg.channel, "Scheduled post deleted!");
},
});