UserFeaturesUpdater.js 673 B

1234567891011121314151617181920212223
  1. const { User } = require('../../models/User')
  2. module.exports = {
  3. updateFeatures(userId, features, callback) {
  4. const conditions = { _id: userId }
  5. const update = {}
  6. for (const key in features) {
  7. const value = features[key]
  8. update[`features.${key}`] = value
  9. }
  10. User.updateOne(conditions, update, (err, result) =>
  11. callback(err, features, (result ? result.nModified : 0) === 1)
  12. )
  13. },
  14. overrideFeatures(userId, features, callback) {
  15. const conditions = { _id: userId }
  16. const update = { features }
  17. User.updateOne(conditions, update, (err, result) =>
  18. callback(err, (result ? result.nModified : 0) === 1)
  19. )
  20. },
  21. }