share.tsx 742 B

123456789101112131415161718192021222324252627
  1. import {
  2. checkToken,
  3. makeErrorResponse,
  4. makeSuccessResponse,
  5. } from "utils/server.ts";
  6. import { define } from "utils/state.ts";
  7. import { find, update } from "utils/db.ts";
  8. export const handler = define.handlers({
  9. async POST(ctx) {
  10. const req = ctx.req;
  11. const reqJson = await req.json();
  12. const id = reqJson.id;
  13. const shared = reqJson.shared;
  14. const tokenUserId = checkToken(req);
  15. if (tokenUserId && id) {
  16. const post = find("Post", { id, user_id: tokenUserId });
  17. if (post.length > 0) {
  18. const newPost = update("Post", id, { shared: shared ? 1 : 0 });
  19. if (newPost.length > 0) {
  20. return makeSuccessResponse(true);
  21. }
  22. }
  23. }
  24. return makeErrorResponse();
  25. },
  26. });