feat(analytics): track cron count

This commit is contained in:
Tyler Renelle
2015-03-26 11:15:23 -06:00
committed by Kevin Gisi
parent e9baafcbc8
commit e46789c303
4 changed files with 16 additions and 3 deletions

View File

@@ -7074,7 +7074,7 @@ api.wrap = function(user, main) {
{user} {user}
*/ */
cron: function(options) { cron: function(options) {
var clearBuffs, daysMissed, expTally, lvl, lvlDiv2, now, perfect, plan, progress, todoTally, _base, _base1, _base2, _base3, _progress, _ref, _ref1, _ref2; var clearBuffs, daysMissed, expTally, lvl, lvlDiv2, now, perfect, plan, progress, todoTally, _base, _base1, _base2, _base3, _base4, _progress, _ref, _ref1, _ref2, _ref3;
if (options == null) { if (options == null) {
options = {}; options = {};
} }
@@ -7247,6 +7247,13 @@ api.wrap = function(user, main) {
if (user.stats.mp > user._statsComputed.maxMP) { if (user.stats.mp > user._statsComputed.maxMP) {
user.stats.mp = user._statsComputed.maxMP; user.stats.mp = user._statsComputed.maxMP;
} }
if ((_base4 = user.flags).cronCount == null) {
_base4.cronCount = 0;
}
user.flags.cronCount++;
if ((_ref3 = options.ga) != null) {
_ref3.event('cron', user.flags.cronCount).send();
}
progress = user.party.quest.progress; progress = user.party.quest.progress;
_progress = _.cloneDeep(progress); _progress = _.cloneDeep(progress);
_.merge(progress, { _.merge(progress, {

View File

@@ -1559,6 +1559,11 @@ api.wrap = (user, main=true) ->
user.stats.mp += _.max([10,.1 * user._statsComputed.maxMP]) user.stats.mp += _.max([10,.1 * user._statsComputed.maxMP])
user.stats.mp = user._statsComputed.maxMP if user.stats.mp > user._statsComputed.maxMP user.stats.mp = user._statsComputed.maxMP if user.stats.mp > user._statsComputed.maxMP
# Analytics
user.flags.cronCount?=0
user.flags.cronCount++
options.ga?.event('cron', user.flags.cronCount).send(); #TODO userId for cohort
# After all is said and done, progress up user's effect on quest, return those values & reset the user's # After all is said and done, progress up user's effect on quest, return those values & reset the user's
progress = user.party.quest.progress; _progress = _.cloneDeep progress progress = user.party.quest.progress; _progress = _.cloneDeep progress
_.merge progress, {down:0,up:0} _.merge progress, {down:0,up:0}

View File

@@ -262,7 +262,7 @@ api.update = function(req, res, next) {
api.cron = function(req, res, next) { api.cron = function(req, res, next) {
var user = res.locals.user, var user = res.locals.user,
progress = user.fns.cron(), progress = user.fns.cron({ga:ga}),
ranCron = user.isModified(), ranCron = user.isModified(),
quest = shared.content.quests[user.party.quest.key]; quest = shared.content.quests[user.party.quest.key];

View File

@@ -145,7 +145,8 @@ var UserSchema = new Schema({
// Used to track the status of recapture emails sent to each user, // Used to track the status of recapture emails sent to each user,
// can be 0 - no email sent - 1, 2, 3 or 4 - 4 means no more email will be sent to the user // can be 0 - no email sent - 1, 2, 3 or 4 - 4 means no more email will be sent to the user
recaptureEmailsPhase: {type: Number, 'default': 0}, recaptureEmailsPhase: {type: Number, 'default': 0},
communityGuidelinesAccepted: {type: Boolean, 'default': false} communityGuidelinesAccepted: {type: Boolean, 'default': false},
cronCount: {type:Number, 'default':0}
}, },
history: { history: {
exp: Array, // [{date: Date, value: Number}], // big peformance issues if these are defined exp: Array, // [{date: Date, value: Number}], // big peformance issues if these are defined