DocumentController.coffee 1.3 KB

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