UserMembershipRouter.coffee 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. UserMembershipAuthorization = require './UserMembershipAuthorization'
  2. UserMembershipController = require './UserMembershipController'
  3. SubscriptionGroupController = require '../Subscription/SubscriptionGroupController'
  4. TeamInvitesController = require '../Subscription/TeamInvitesController'
  5. module.exports =
  6. apply: (webRouter) ->
  7. # group members routes
  8. webRouter.get '/manage/groups/:id/members',
  9. UserMembershipAuthorization.requireGroupAccess,
  10. UserMembershipController.index
  11. webRouter.post '/manage/groups/:id/invites',
  12. UserMembershipAuthorization.requireGroupAccess,
  13. TeamInvitesController.createInvite
  14. webRouter.delete '/manage/groups/:id/user/:user_id',
  15. UserMembershipAuthorization.requireGroupAccess,
  16. SubscriptionGroupController.removeUserFromGroup
  17. webRouter.delete '/manage/groups/:id/invites/:email',
  18. UserMembershipAuthorization.requireGroupAccess,
  19. TeamInvitesController.revokeInvite
  20. webRouter.get '/manage/groups/:id/members/export',
  21. UserMembershipAuthorization.requireGroupAccess,
  22. UserMembershipController.exportCsv
  23. # group managers routes
  24. webRouter.get "/manage/groups/:id/managers",
  25. UserMembershipAuthorization.requireGroupManagersAccess,
  26. UserMembershipController.index
  27. webRouter.post "/manage/groups/:id/managers",
  28. UserMembershipAuthorization.requireGroupManagersAccess,
  29. UserMembershipController.add
  30. webRouter.delete "/manage/groups/:id/managers/:userId",
  31. UserMembershipAuthorization.requireGroupManagersAccess,
  32. UserMembershipController.remove
  33. # institution members routes
  34. webRouter.get "/manage/institutions/:id/managers",
  35. UserMembershipAuthorization.requireInstitutionAccess,
  36. UserMembershipController.index
  37. webRouter.post "/manage/institutions/:id/managers",
  38. UserMembershipAuthorization.requireInstitutionAccess,
  39. UserMembershipController.add
  40. webRouter.delete "/manage/institutions/:id/managers/:userId",
  41. UserMembershipAuthorization.requireInstitutionAccess,
  42. UserMembershipController.remove
  43. # publisher members routes
  44. webRouter.get "/manage/publishers/:id/managers",
  45. UserMembershipAuthorization.requirePublisherAccess,
  46. UserMembershipController.index
  47. webRouter.post "/manage/publishers/:id/managers",
  48. UserMembershipAuthorization.requirePublisherAccess,
  49. UserMembershipController.add
  50. webRouter.delete "/manage/publishers/:id/managers/:userId",
  51. UserMembershipAuthorization.requirePublisherAccess,
  52. UserMembershipController.remove