|
@@ -1,10 +1,12 @@
|
|
|
const { callbackify } = require('util')
|
|
const { callbackify } = require('util')
|
|
|
const metrics = require('@overleaf/metrics')
|
|
const metrics = require('@overleaf/metrics')
|
|
|
const UserUpdater = require('../User/UserUpdater')
|
|
const UserUpdater = require('../User/UserUpdater')
|
|
|
|
|
+const AnalyticsManager = require('../Analytics/AnalyticsManager')
|
|
|
|
|
|
|
|
async function optIn(userId) {
|
|
async function optIn(userId) {
|
|
|
await UserUpdater.promises.updateUser(userId, { $set: { betaProgram: true } })
|
|
await UserUpdater.promises.updateUser(userId, { $set: { betaProgram: true } })
|
|
|
metrics.inc('beta-program.opt-in')
|
|
metrics.inc('beta-program.opt-in')
|
|
|
|
|
+ AnalyticsManager.setUserPropertyForUser(userId, 'beta-program', true)
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
async function optOut(userId) {
|
|
async function optOut(userId) {
|
|
@@ -12,6 +14,7 @@ async function optOut(userId) {
|
|
|
$set: { betaProgram: false },
|
|
$set: { betaProgram: false },
|
|
|
})
|
|
})
|
|
|
metrics.inc('beta-program.opt-out')
|
|
metrics.inc('beta-program.opt-out')
|
|
|
|
|
+ AnalyticsManager.setUserPropertyForUser(userId, 'beta-program', false)
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
const BetaProgramHandler = {
|
|
const BetaProgramHandler = {
|