register.tsx 780 B

1234567891011121314151617181920212223242526272829
  1. import { Handlers } from "$fresh/server.ts";
  2. import {
  3. makeErrorResponse,
  4. makeSuccessResponse,
  5. getCryptoString,
  6. } from "utils/server.ts";
  7. import { find, insert } from "utils/db.ts";
  8. export const handler: Handlers = {
  9. async POST(req: Request) {
  10. const reqJson = await req.json();
  11. if (reqJson.email && reqJson.password) {
  12. const user = find("User", {
  13. email: reqJson.email,
  14. });
  15. if (user.length === 0) {
  16. const newUser = insert("User", {
  17. name: reqJson.email.split("@")[0],
  18. email: reqJson.email,
  19. password: await getCryptoString(reqJson.password, "MD5"),
  20. });
  21. if (newUser.length > 0) {
  22. return makeSuccessResponse(true);
  23. }
  24. }
  25. }
  26. return makeErrorResponse();
  27. },
  28. };