UpdateTrimmer.coffee 904 B

1234567891011121314151617181920212223
  1. MongoManager = require "./MongoManager"
  2. WebApiManager = require "./WebApiManager"
  3. logger = require "logger-sharelatex"
  4. module.exports = UpdateTrimmer =
  5. shouldTrimUpdates: (project_id, callback = (error, shouldTrim) ->) ->
  6. MongoManager.getProjectMetaData project_id, (error, metadata) ->
  7. return callback(error) if error?
  8. if metadata?.preserveHistory
  9. return callback null, false
  10. else
  11. WebApiManager.getProjectDetails project_id, (error, details) ->
  12. return callback(error) if error?
  13. logger.log project_id: project_id, details: details, "got details"
  14. if details?.features?.versioning
  15. MongoManager.setProjectMetaData project_id, preserveHistory: true, (error) ->
  16. return callback(error) if error?
  17. MongoManager.upgradeHistory project_id, (error) ->
  18. return callback(error) if error?
  19. callback null, false
  20. else
  21. callback null, true