users.handler.js 844 B

12345678910111213141516171819202122232425262728293031323334353637
  1. const query = require("../queries");
  2. const utils = require("../utils");
  3. const env = require("../env");
  4. async function get(req, res) {
  5. const domains = await query.domain.get({ user_id: req.user.id });
  6. const data = {
  7. apikey: req.user.apikey,
  8. email: req.user.email,
  9. domains: domains.map(utils.sanitize.domain)
  10. };
  11. return res.status(200).send(data);
  12. };
  13. async function remove(req, res) {
  14. await query.user.remove(req.user);
  15. await utils.sleep(1000);
  16. if (req.isHTML) {
  17. res.clearCookie("token", { httpOnly: true, secure: env.isProd });
  18. res.setHeader("HX-Trigger-After-Swap", "redirectToHomepage");
  19. res.render("partials/settings/delete_account", {
  20. success: "Account has been deleted. Logging out..."
  21. });
  22. return;
  23. }
  24. return res.status(200).send("OK");
  25. };
  26. module.exports = {
  27. get,
  28. remove,
  29. }