TrackChangesManager.coffee 1.2 KB

12345678910111213141516171819202122232425262728
  1. settings = require "settings-sharelatex"
  2. request = require "request"
  3. logger = require "logger-sharelatex"
  4. module.exports = TrackChangesManager =
  5. flushProject: (project_id, callback = (error) ->) ->
  6. logger.log project_id: project_id, "flushing project in track-changes api"
  7. url = "#{settings.apis.trackchanges.url}/project/#{project_id}/flush"
  8. request.post url, (error, res, body) ->
  9. return callback(error) if error?
  10. if 200 <= res.statusCode < 300
  11. callback(null)
  12. else
  13. error = new Error("track-changes api responded with non-success code: #{res.statusCode} #{url}")
  14. logger.error err: error, project_id: project_id, "error flushing project in track-changes api"
  15. callback(error)
  16. archiveProject: (project_id, callback = ()->)->
  17. logger.log project_id: project_id, "archving project in track-changes api"
  18. url = "#{settings.apis.trackchanges.url}/project/#{project_id}/archive"
  19. request.post url, (error, res, body) ->
  20. return callback(error) if error?
  21. if 200 <= res.statusCode < 300
  22. callback(null)
  23. else
  24. error = new Error("track-changes api responded with non-success code: #{res.statusCode} #{url}")
  25. logger.error err: error, project_id: project_id, "error archving project in track-changes api"
  26. callback(error)