UserEmailsController.coffee 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. AuthenticationController = require('../Authentication/AuthenticationController')
  2. UserGetter = require("./UserGetter")
  3. UserUpdater = require("./UserUpdater")
  4. EmailHelper = require("../Helpers/EmailHelper")
  5. logger = require("logger-sharelatex")
  6. module.exports = UserEmailsController =
  7. list: (req, res) ->
  8. userId = AuthenticationController.getLoggedInUserId(req)
  9. UserGetter.getUserFullEmails userId, (error, fullEmails) ->
  10. return res.sendStatus 500 if error?
  11. res.json fullEmails
  12. add: (req, res) ->
  13. userId = AuthenticationController.getLoggedInUserId(req)
  14. email = EmailHelper.parseEmail(req.body.email)
  15. return res.sendStatus 422 unless email?
  16. UserUpdater.addEmailAddress userId, email, (error)->
  17. return res.sendStatus 500 if error?
  18. res.sendStatus 200
  19. remove: (req, res) ->
  20. userId = AuthenticationController.getLoggedInUserId(req)
  21. email = EmailHelper.parseEmail(req.body.email)
  22. return res.sendStatus 422 unless email?
  23. UserUpdater.removeEmailAddress userId, email, (error)->
  24. return res.sendStatus 500 if error?
  25. res.sendStatus 200
  26. setDefault: (req, res) ->
  27. userId = AuthenticationController.getLoggedInUserId(req)
  28. email = EmailHelper.parseEmail(req.body.email)
  29. return res.sendStatus 422 unless email?
  30. UserUpdater.setDefaultEmailAddress userId, email, (error)->
  31. return res.sendStatus 500 if error?
  32. res.sendStatus 200