UserFeaturesUpdater.coffee 579 B

12345678910111213141516
  1. Settings = require "settings-sharelatex"
  2. logger = require("logger-sharelatex")
  3. User = require('../../models/User').User
  4. PlansLocator = require("./PlansLocator")
  5. module.exports =
  6. updateFeatures: (user_id, plan_code, callback = (err, features)->)->
  7. conditions = _id:user_id
  8. update = {}
  9. plan = PlansLocator.findLocalPlanInSettings(plan_code)
  10. logger.log user_id:user_id, plan:plan, plan_code:plan_code, "updating users features"
  11. update["features.#{key}"] = value for key, value of plan.features
  12. User.update conditions, update, (err)->
  13. callback err, plan.features