EditorRouter.coffee 1.5 KB

12345678910111213141516171819202122
  1. EditorHttpController = require('./EditorHttpController')
  2. SecurityManager = require('../../managers/SecurityManager')
  3. module.exports =
  4. apply: (app, httpAuth) ->
  5. app.post '/project/:Project_id/doc', SecurityManager.requestCanModifyProject, EditorHttpController.addDoc
  6. app.post '/project/:Project_id/folder', SecurityManager.requestCanModifyProject, EditorHttpController.addFolder
  7. app.post '/project/:Project_id/:entity_type/:entity_id/rename', SecurityManager.requestCanModifyProject, EditorHttpController.renameEntity
  8. app.post '/project/:Project_id/:entity_type/:entity_id/move', SecurityManager.requestCanModifyProject, EditorHttpController.moveEntity
  9. app.delete '/project/:Project_id/file/:entity_id', SecurityManager.requestCanModifyProject, EditorHttpController.deleteFile
  10. app.delete '/project/:Project_id/doc/:entity_id', SecurityManager.requestCanModifyProject, EditorHttpController.deleteDoc
  11. app.delete '/project/:Project_id/folder/:entity_id', SecurityManager.requestCanModifyProject, EditorHttpController.deleteFolder
  12. app.post '/project/:Project_id/doc/:doc_id/restore', SecurityManager.requestCanModifyProject, EditorHttpController.restoreDoc
  13. # Called by the real-time API to load up the current project state.
  14. # This is a post request because it's more than just a getting of data. We take actions
  15. # whenever a user joins a project, like updating the deleted status.
  16. app.post '/project/:Project_id/join', httpAuth, EditorHttpController.joinProject
  17. app.ignoreCsrf('post', '/project/:Project_id/join')