next/server/api/story/[id]/index.delete.ts

20 lines
524 B
TypeScript
Raw Normal View History

import { messages } from "~/lib/server/constants";
import { storyQuerier } from "~/lib/server/dbHelpers";
import { canDelete } from "~/lib/server/middlewareButNotReally/storyPrivileges";
import { Story } from "~/models/stories";
export default eventHandler(async (ev) => {
const tmpS = await storyQuerier(ev);
if (canDelete(ev, tmpS)) {
await Story.findByIdAndDelete(tmpS._id);
return {
success: true,
message: "story deleted",
};
}
throw createError({
statusCode: 403,
message: messages[403],
});
});