TokenAccessRouter.mjs 1.2 KB

12345678910111213141516171819202122232425262728293031
  1. import AuthenticationController from '../Authentication/AuthenticationController.mjs'
  2. import AuthorizationMiddleware from '../Authorization/AuthorizationMiddleware.mjs'
  3. import TokenAccessController from './TokenAccessController.mjs'
  4. export default {
  5. apply(webRouter) {
  6. webRouter.get(
  7. `/project/:Project_id/sharing-updates`,
  8. AuthenticationController.requireLogin(),
  9. AuthorizationMiddleware.ensureUserCanReadProject,
  10. TokenAccessController.ensureUserCanUseSharingUpdatesConsentPage,
  11. TokenAccessController.sharingUpdatesConsent
  12. )
  13. webRouter.post(
  14. `/project/:Project_id/sharing-updates/join`,
  15. AuthenticationController.requireLogin(),
  16. AuthorizationMiddleware.ensureUserCanReadProject,
  17. TokenAccessController.ensureUserCanUseSharingUpdatesConsentPage,
  18. TokenAccessController.moveReadWriteToCollaborators
  19. )
  20. webRouter.post(
  21. `/project/:Project_id/sharing-updates/view`,
  22. AuthenticationController.requireLogin(),
  23. AuthorizationMiddleware.ensureUserCanReadProject,
  24. TokenAccessController.ensureUserCanUseSharingUpdatesConsentPage,
  25. TokenAccessController.moveReadWriteToReadOnly
  26. )
  27. },
  28. }