router.js 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. /* eslint-disable
  2. camelcase,
  3. max-len,
  4. no-unused-vars,
  5. */
  6. // TODO: This file was created by bulk-decaffeinate.
  7. // Fix any style issues and re-enable lint.
  8. /*
  9. * decaffeinate suggestions:
  10. * DS102: Remove unnecessary code created because of implicit returns
  11. * Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md
  12. */
  13. let Router
  14. const MessageHttpController = require('./Features/Messages/MessageHttpController')
  15. const { ObjectId } = require('./mongojs')
  16. module.exports = Router = {
  17. route(app) {
  18. app.param('project_id', function(req, res, next, project_id) {
  19. if (ObjectId.isValid(project_id)) {
  20. return next()
  21. } else {
  22. return res.status(400).send('Invalid project_id')
  23. }
  24. })
  25. app.param('thread_id', function(req, res, next, thread_id) {
  26. if (ObjectId.isValid(thread_id)) {
  27. return next()
  28. } else {
  29. return res.status(400).send('Invalid thread_id')
  30. }
  31. })
  32. // These are for backwards compatibility
  33. app.get(
  34. '/room/:project_id/messages',
  35. MessageHttpController.getGlobalMessages
  36. )
  37. app.post(
  38. '/room/:project_id/messages',
  39. MessageHttpController.sendGlobalMessage
  40. )
  41. app.get(
  42. '/project/:project_id/messages',
  43. MessageHttpController.getGlobalMessages
  44. )
  45. app.post(
  46. '/project/:project_id/messages',
  47. MessageHttpController.sendGlobalMessage
  48. )
  49. app.post(
  50. '/project/:project_id/thread/:thread_id/messages',
  51. MessageHttpController.sendThreadMessage
  52. )
  53. app.get('/project/:project_id/threads', MessageHttpController.getAllThreads)
  54. app.post(
  55. '/project/:project_id/thread/:thread_id/messages/:message_id/edit',
  56. MessageHttpController.editMessage
  57. )
  58. app.delete(
  59. '/project/:project_id/thread/:thread_id/messages/:message_id',
  60. MessageHttpController.deleteMessage
  61. )
  62. app.post(
  63. '/project/:project_id/thread/:thread_id/resolve',
  64. MessageHttpController.resolveThread
  65. )
  66. app.post(
  67. '/project/:project_id/thread/:thread_id/reopen',
  68. MessageHttpController.reopenThread
  69. )
  70. app.delete(
  71. '/project/:project_id/thread/:thread_id',
  72. MessageHttpController.deleteThread
  73. )
  74. return app.get('/status', (req, res, next) => res.send('chat is alive'))
  75. }
  76. }