MetaController.coffee 1.0 KB

12345678910111213141516171819202122232425262728
  1. EditorRealTimeController = require "../Editor/EditorRealTimeController"
  2. MetaHandler = require './MetaHandler'
  3. logger = require 'logger-sharelatex'
  4. module.exports = MetaController =
  5. getMetadata: (req, res, next) ->
  6. project_id = req.params.project_id
  7. logger.log {project_id}, "getting all labels for project"
  8. MetaHandler.getAllMetaForProject project_id, (err, projectMeta) ->
  9. if err?
  10. logger.err {project_id, err}, "[MetaController] error getting all labels from project"
  11. return next err
  12. res.json {projectId: project_id, projectMeta: projectMeta}
  13. broadcastMetadataForDoc: (req, res, next) ->
  14. project_id = req.params.project_id
  15. doc_id = req.params.doc_id
  16. logger.log {project_id, doc_id}, "getting labels for doc"
  17. MetaHandler.getMetaForDoc project_id, doc_id, (err, docMeta) ->
  18. if err?
  19. logger.err {project_id, doc_id, err}, "[MetaController] error getting labels from doc"
  20. return next err
  21. EditorRealTimeController.emitToRoom project_id, 'broadcastDocMeta', {
  22. docId: doc_id, meta: docMeta
  23. }
  24. res.sendStatus 200