mirror of
https://github.com/codeninjasllc/codecombat.git
synced 2025-04-26 14:03:28 -04:00
Clan analytics
Hook up server-side operations.
This commit is contained in:
parent
7cd71b6146
commit
9d6e5fe20b
1 changed files with 5 additions and 0 deletions
|
@ -1,6 +1,7 @@
|
|||
async = require 'async'
|
||||
mongoose = require 'mongoose'
|
||||
Handler = require '../commons/Handler'
|
||||
AnalyticsLogEvent = require '../analytics/AnalyticsLogEvent'
|
||||
Clan = require './Clan'
|
||||
EarnedAchievement = require '../achievements/EarnedAchievement'
|
||||
EarnedAchievementHandler = require '../achievements/earned_achievement_handler'
|
||||
|
@ -45,6 +46,7 @@ ClanHandler = class ClanHandler extends Handler
|
|||
User.update {_id: {$in: memberIDs}}, {$pull: {clans: clan.get('_id')}}, {multi: true}, (err) =>
|
||||
return @sendDatabaseError(res, err) if err
|
||||
@sendNoContent(res)
|
||||
AnalyticsLogEvent.logEvent req.user, 'Clan deleted', clanID: clanID, type: clan.get('type')
|
||||
|
||||
getByRelationship: (req, res, args...) ->
|
||||
return @joinClan(req, res, args[0]) if args[1] is 'join'
|
||||
|
@ -67,6 +69,7 @@ ClanHandler = class ClanHandler extends Handler
|
|||
User.update {_id: req.user._id}, {$addToSet: {clans: clanID}}, (err) =>
|
||||
return @sendDatabaseError(res, err) if err
|
||||
@sendSuccess(res)
|
||||
AnalyticsLogEvent.logEvent req.user, 'Clan joined', clanID: clanID, type: 'public'
|
||||
|
||||
leaveClan: (req, res, clanID) ->
|
||||
return @sendForbiddenError(res) unless req.user? and not req.user.isAnonymous()
|
||||
|
@ -83,6 +86,7 @@ ClanHandler = class ClanHandler extends Handler
|
|||
User.update {_id: req.user._id}, {$pull: {clans: clanID}}, (err) =>
|
||||
return @sendDatabaseError(res, err) if err
|
||||
@sendSuccess(res)
|
||||
AnalyticsLogEvent.logEvent req.user, 'Clan left', clanID: clanID, type: clan.get('type')
|
||||
|
||||
getMemberAchievements: (req, res, clanID) ->
|
||||
# TODO: add tests
|
||||
|
@ -144,5 +148,6 @@ ClanHandler = class ClanHandler extends Handler
|
|||
User.update {_id: memberID}, {$pull: {clans: clanID}}, (err) =>
|
||||
return @sendDatabaseError(res, err) if err
|
||||
@sendSuccess(res)
|
||||
AnalyticsLogEvent.logEvent req.user, 'Clan member removed', clanID: clanID, type: clan.get('type'), memberID: memberID
|
||||
|
||||
module.exports = new ClanHandler()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue