UserEmailsController.coffee 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  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. logger.log req.params
  22. email = EmailHelper.parseEmail(req.params.email)
  23. return res.sendStatus 422 unless email?
  24. UserUpdater.removeEmailAddress userId, email, (error)->
  25. return res.sendStatus 500 if error?
  26. res.sendStatus 200
  27. setDefault: (req, res) ->
  28. userId = AuthenticationController.getLoggedInUserId(req)
  29. email = EmailHelper.parseEmail(req.body.email)
  30. return res.sendStatus 422 unless email?
  31. UserUpdater.setDefaultEmailAddress userId, email, (error)->
  32. return res.sendStatus 500 if error?
  33. res.sendStatus 200