mirror of
https://github.com/overleaf/overleaf.git
synced 2024-11-30 16:45:11 -05:00
29 lines
1.1 KiB
CoffeeScript
29 lines
1.1 KiB
CoffeeScript
SubscriptionDomainHandler = require("../Subscription/SubscriptionDomainHandler")
|
|
NotificationsBuilder = require("../Notifications/NotificationsBuilder")
|
|
SubscriptionGroupHandler = require("../Subscription/SubscriptionGroupHandler")
|
|
logger = require("logger-sharelatex")
|
|
|
|
|
|
module.exports = UserHandler =
|
|
|
|
populateGroupLicenceInvite: (user, callback = ->)->
|
|
SubscriptionGroupHandler.convertEmailInvitesToMemberships user.email, user._id, (err) ->
|
|
return callback(err) if err?
|
|
|
|
logger.log user_id:user._id, "populating any potential group licence invites"
|
|
licence = SubscriptionDomainHandler.getLicenceUserCanJoin user
|
|
if !licence?
|
|
return callback()
|
|
|
|
SubscriptionGroupHandler.isUserPartOfGroup user._id, licence.subscription_id, (err, alreadyPartOfGroup)->
|
|
if err?
|
|
return callback(err)
|
|
else if alreadyPartOfGroup
|
|
logger.log user_id:user._id, "user already part of group, not creating notifcation for them"
|
|
return callback()
|
|
else
|
|
NotificationsBuilder.groupPlan(user, licence).create(callback)
|
|
|
|
setupLoginData: (user, callback = ->)->
|
|
@populateGroupLicenceInvite user, callback
|
|
|