DocumentController.coffee 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. ProjectEntityHandler = require "../Project/ProjectEntityHandler"
  2. Errors = require "../../errors"
  3. logger = require("logger-sharelatex")
  4. module.exports =
  5. getDocument: (req, res, next = (error) ->) ->
  6. project_id = req.params.Project_id
  7. doc_id = req.params.doc_id
  8. plain = req?.query?.plain == 'true'
  9. logger.log doc_id:doc_id, project_id:project_id, "receiving get document request from api (docupdater)"
  10. ProjectEntityHandler.getDoc project_id, doc_id, (error, lines, rev) ->
  11. if error?
  12. logger.err err:error, doc_id:doc_id, project_id:project_id, "error finding element for getDocument"
  13. return next(error)
  14. if plain
  15. res.type "text/plain"
  16. res.send lines.join('\n')
  17. else
  18. res.type "json"
  19. res.send JSON.stringify {
  20. lines: lines
  21. }
  22. setDocument: (req, res, next = (error) ->) ->
  23. project_id = req.params.Project_id
  24. doc_id = req.params.doc_id
  25. lines = req.body.lines
  26. logger.log doc_id:doc_id, project_id:project_id, "receiving set document request from api (docupdater)"
  27. ProjectEntityHandler.updateDocLines project_id, doc_id, lines, (error) ->
  28. if error?
  29. logger.err err:error, doc_id:doc_id, project_id:project_id, "error finding element for getDocument"
  30. return next(error)
  31. logger.log doc_id:doc_id, project_id:project_id, "finished receiving set document request from api (docupdater)"
  32. res.sendStatus 200