| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- Subscription = require('../../models/Subscription').Subscription
- logger = require("logger-sharelatex")
- ObjectId = require('mongoose').Types.ObjectId
- module.exports = SubscriptionLocator =
- getUsersSubscription: (user_or_id, callback)->
- user_id = @_getUserId(user_or_id)
- logger.log user_id:user_id, "getting users subscription"
- Subscription.findOne admin_id:user_id, (err, subscription)->
- logger.log user_id:user_id, "got users subscription"
- callback(err, subscription)
- findManagedSubscription: (managerId, callback)->
- logger.log managerId: managerId, "finding managed subscription"
- Subscription.findOne manager_ids: managerId, callback
- getManagedGroupSubscriptions: (user_or_id, callback = (error, managedSubscriptions) ->) ->
- user_id = @_getUserId(user_or_id)
- Subscription.find({
- manager_ids: user_or_id,
- groupPlan: true
- }).populate("admin_id").exec callback
- getMemberSubscriptions: (user_or_id, callback) ->
- user_id = @_getUserId(user_or_id)
- logger.log user_id: user_id, "getting users group subscriptions"
- Subscription.find(member_ids: user_id).populate("admin_id").exec callback
- getSubscription: (subscription_id, callback)->
- Subscription.findOne _id:subscription_id, callback
- getSubscriptionByMemberIdAndId: (user_id, subscription_id, callback)->
- Subscription.findOne {member_ids: user_id, _id:subscription_id}, {_id:1}, callback
- getGroupSubscriptionsMemberOf: (user_id, callback)->
- Subscription.find {member_ids: user_id}, {_id:1, planCode:1}, callback
- getGroupsWithEmailInvite: (email, callback) ->
- Subscription.find { invited_emails: email }, callback
- getGroupWithV1Id: (v1TeamId, callback) ->
- Subscription.findOne { "overleaf.id": v1TeamId }, callback
- _getUserId: (user_or_id) ->
- if user_or_id? and user_or_id._id?
- return user_or_id._id
- else if user_or_id?
- return user_or_id
|