UserCreator.coffee 630 B

1234567891011121314151617181920212223242526272829
  1. User = require("../../models/User").User
  2. logger = require("logger-sharelatex")
  3. metrics = require('metrics-sharelatex')
  4. module.exports = UserCreator =
  5. createNewUser: (opts, callback)->
  6. logger.log opts:opts, "creating new user"
  7. user = new User()
  8. username = opts.email.match(/^[^@]*/)
  9. if !opts.first_name? or opts.first_name == ""
  10. opts.first_name = username[0]
  11. for key, value of opts
  12. user[key] = value
  13. user.ace.syntaxValidation = true
  14. user.featureSwitches?.pdfng = true
  15. user.save (err)->
  16. callback(err, user)
  17. metrics.timeAsyncMethod(
  18. UserCreator, 'createNewUser',
  19. 'mongo.UserCreator',
  20. logger
  21. )