Nick Winter
57d12c199e
Tweaks to campaign status view. Hooking up i18n for Campaigns, but it doesn't work yet.
2015-01-29 09:07:25 -08:00
Matt Lott
b78a35f5f0
📝 No extra index needed for user.code.problems
...
We only query via _id currently, so the default index will do.
2015-01-27 10:46:37 -08:00
Matt Lott
3d32c8a5e7
Document missing database schema indexes
...
These indexes are on the production database but not set in our
mongoose schemas.
2015-01-27 10:02:51 -08:00
Nick Winter
2e09a94736
Asking for feedback when cancelling subscriptions.
2015-01-26 16:48:32 -08:00
Matt Lott
5c9a42f513
🐛 Save level sessions with Date object
...
Fixes #2123
2015-01-26 16:31:26 -08:00
Matt Lott
019406a341
Update campaign analytics
...
Increase line graph dots for larger hover targets.
Update missing day data handling to fill in graph points for any
missing day, not just most recent end days.
Fix level completion div0 bug.
2015-01-26 14:58:38 -08:00
Nick Winter
2a68fa47a0
Fixed bug with subscription purchase analytis for low-traffic levels.
2015-01-23 11:44:15 -08:00
Nick Winter
e75e0791d0
Fixed problem POSTing UserCodeProblems for non-admins.
2015-01-22 11:30:31 -08:00
Matt Lott
e49c74259b
Update campaign editor analytics
...
Adding shown and purchased subscription counts.
Locking down analytics to admin-only.
2015-01-21 13:41:38 -08:00
Matt Lott
7fda59ee2d
Update campaign editor analytics
...
Adding help click counts and help videos start counts to level view
analytics.
2015-01-20 10:43:02 -08:00
Matt Lott
d0a0c95623
Update campaign editor analytics
...
Display little level completion line graphs in the level completion
table cells.
2015-01-19 21:59:25 -08:00
Matt Lott
05f028d944
Update campaign editor analytics
...
Adding ‘left game’ counts to overall campaign view. This is the number
of players that left the game after playing the given level.
2015-01-18 16:29:47 -08:00
Matt Lott
e499678223
Add user null check to logEvent
2015-01-15 14:21:30 -08:00
Matt Lott
116c7d0bf2
Update internal analytics
...
Adding level session ID where applicable.
Slimming down fields for most common events.
2015-01-15 11:04:52 -08:00
Matt Lott
c5977c00fe
Add shortened fields to analytics.log.event
...
We’ll remove the old long fields after we’ve got enough data to switch
over our analytics queries without complication.
2015-01-14 17:51:34 -08:00
Matt Lott
e79cadc761
Remove analytics.log.event created field
...
_id field already has created data:
http://docs.mongodb.org/manual/reference/object-id/
Also some misc analytics cleanup.
2015-01-14 13:03:02 -08:00
Matt Lott
3fd5f49220
Analytics data revamp
...
Add analytics per-day aggregation collection.
Add analytics strings collection.
Add per-day aggregation mongo insertion script.
Update campaign editor to use aggregation collection.
Update queries to use _id instead of created field.
2015-01-14 11:09:01 -08:00
Scott Erickson
f9a01db985
Added a delete endpoint for files. Fixes #33 .
2015-01-12 13:37:01 -08:00
Scott Erickson
da93c45ef3
Tweaked emailLower and nameLower auto-setting to not set if their respective depending properties do not exist. With minimizing mongoose off, this was causing db duplicate key problems.
2015-01-12 11:51:48 -08:00
Nick Winter
5c352699b0
buildTime stuff.
2015-01-10 09:33:41 -08:00
Nick Winter
58716f5b75
Revert "Fixed #1076 , and all other instances of empty objects being stripped out of documents. Turns out mongoose was doing this intentionally as a feature? I don't understand why that's on by default. Oh mongoose."
...
Saw that this caused 500s on /auth/whoami with no cookies set, with this error:
debug: 500: MongoError: E11000 duplicate key error index: coco.users.$emailLower_1 dup key: { : null }
Probably we need to be much more careful about what changes this blanket change to the minimize Mongoose option might introduce, since tests didn't catch this, but it would have taken the site down for anyone not logged in already.
This reverts commit 121f07d020
.
2015-01-09 18:30:05 -08:00
Scott Erickson
121f07d020
Fixed #1076 , and all other instances of empty objects being stripped out of documents. Turns out mongoose was doing this intentionally as a feature? I don't understand why that's on by default. Oh mongoose.
2015-01-09 11:56:54 -08:00
Matt Lott
05beebee68
Add play_counts API input null check
2015-01-08 17:17:34 -08:00
Matt Lott
372ac20a67
Update campaign editor analytics
...
Level view recent sessions is latest - 10 minutes.
2015-01-08 17:00:06 -08:00
Matt Lott
bc93a2b181
Update campaign editor analytics
...
Restrict level view completion rates to unique users. Super slow, perf
work to do here.
Increase level view completion rate date range to 2 weeks.
Increase level view average playtimes date range to 2 weeks.
Display player name if available in level view recent sessions.
2015-01-08 16:01:49 -08:00
Scott Erickson
d69c5941b3
Fixed #1968 .
2015-01-08 11:57:31 -08:00
Nick Winter
79c5b53de1
Updated GitHub README avatars. Added HipChat notifications when CLAs are signed.
2015-01-08 11:33:59 -08:00
Scott Erickson
d8e89f31b1
Fixed #1967 .
2015-01-08 11:29:10 -08:00
Imperadeiro98
68ed142bd6
Update auth.coffee
2015-01-08 19:27:37 +00:00
Nick Winter
4016476c4d
Fixed achievement plugin creation of repeatable achievements. Fixed some bugs in recalculating repeatable achievement exp. Implemented recalculating repeatable achievement gems. Achievement tests pass again.
2015-01-07 15:03:39 -08:00
Matt Lott
c54fea929e
Update campaign editor analytics
...
Optimize analytics.log.event user event data find() to use stream()
instead of exec(), which is better for large result sets
Fix startDay formatting bug
Per-level recent sessions to 100
2015-01-07 14:49:24 -08:00
Nick Winter
1455dc0550
Working on repeatable achievement posting. Two tests still fail, though, so it's not there yet.
2015-01-07 12:25:43 -08:00
Matt Lott
d89b0d90e3
Campaign analytics - unique users, dropped count
...
Fixing incorrect dropped counts.
Restricting start/finish level events to unique users.
Does not fix campaign editor level view analytics.
2015-01-06 21:38:49 -08:00
Nick Winter
4ea2a51ff6
In middle of debugging non-functioning repeatable achievements.
2015-01-06 21:32:58 -08:00
Scott Erickson
2f36884456
Got proportionalTo working with gems as well as points. Probably also got it working for LevelSessions, but this should be tested.
2015-01-06 18:14:19 -08:00
Scott Erickson
7f203f246c
Fixed a bug where projection in /db/campaign/.../levels wasn't working correctly anymore if project wasn't included.
2015-01-06 16:59:56 -08:00
Matt Lott
1c1f2be497
Changing analytics.log.event indexes to compound
...
Changing this back. Using mongodb hint() and explain() on our find()
call indicates the compound index is better than the two single indexes.
2015-01-06 14:54:56 -08:00
Matt Lott
a144c5ff0d
Update analytics.log.event indexes to match prod
...
These were applied as single indexes directly in production.
2015-01-06 14:07:22 -08:00
Nick Winter
9272ceb23e
Trying to restore functionality of achievement plugin but without memory leak.
2015-01-05 21:57:23 -08:00
Nick Winter
45b90804ec
Noting some TODOs to fix soon.
2015-01-05 20:49:59 -08:00
Matt Lott
1a401230f4
Add recent sessions to campaign editor analytics
...
In level view. Shows latest 10, and you can double-click them to open
in modalmodal.
2015-01-05 15:40:28 -08:00
Matt Lott
b4a0fe146e
Add common user code problems to campaign editor
...
In level view, showing data from last 30 days, with top 20 issues by
count.
2015-01-05 13:42:19 -08:00
Matt Lott
7052dd99f5
Add index to analytics.log.event
2015-01-05 10:49:43 -08:00
Nick Winter
947811c01b
Replayable once-per-day increasing-difficulty level basics.
2015-01-05 10:44:24 -08:00
Matt Lott
61180c640d
Add completion % to campaign analytics
2015-01-05 10:28:56 -08:00
Matt Lott
b5969e0abc
Update campaign analytics level ordering
...
Reading campaign levels from database. Assumes database order is
roughly progression order.
2015-01-02 13:31:50 -08:00
Nick Winter
dbc42fb7e1
Added task system to Thang Editor.
2015-01-01 14:07:11 -08:00
Matt Lott
2d410fa57f
Update editor analytics level completions
...
We have to grab all the level data at once, so we should cache it all
too. Only the first level completions call should be uncached/slow.
2015-01-01 12:26:19 -08:00
Matt Lott
e65887ec79
Add campaign drop-offs analytics to editor
2015-01-01 12:01:51 -08:00
Matt Lott
56b4346556
Update average playtimes query to match level
2014-12-31 13:19:46 -08:00
Matt Lott
9b6d327c7f
Add average playtimes to levels in campaign editor
2014-12-31 12:25:18 -08:00
Matt Lott
fcf5346aa3
Add completion rates to levels in campaign editor
2014-12-31 11:49:29 -08:00
Nick Winter
c54fd5ab4b
Moved editors from PUT to POST so that version saving behavior is preserved and admins can PUT without saving new versions.
2014-12-29 09:14:43 -08:00
Nick Winter
1390cbacdc
Temporarily reverting 0bdec68
change to PUT for versioned documents.
2014-12-28 17:24:37 -08:00
Nick Winter
744d30737e
Merged in campaign editor and campaign view. Destroyed WorldMapView, CampaignOptions, and LevelOptions. Lots of stuff is now stored in the database instead of code. Cleaned up a few unneeded old features. Fixed some problems with checking permissions on first rather than latest versions of documents.
2014-12-28 13:25:20 -08:00
Nick Winter
b4341ad46c
Merge branch 'feature/campaign-editor'
2014-12-27 11:03:51 -08:00
Michael Schmatz
3d1ee9767f
Fix sorting crashing bug
2014-12-24 16:45:34 -05:00
Nick Winter
d6b5c14123
Give me thine email addresses correctly, dear contact handler.
2014-12-24 11:02:52 -08:00
Michael Schmatz
2e9e9ee85c
Put limit on things to be sorted
...
We might have to alter the queries a bit if we aren't happy with the results
2014-12-23 20:19:20 -05:00
Nick Winter
759e193f29
Pulling email from user in contact form if they gave an invalid email reply-to.
2014-12-23 08:20:35 -08:00
Scott Erickson
0bdec68cfc
Set up a save button.
2014-12-22 16:21:57 -05:00
Scott Erickson
0dd2d9efbd
Handled merge conflict.
2014-12-22 12:33:52 -05:00
Nick Winter
e8d185a860
Embedding level completion checklist inside the level editor.
2014-12-20 20:01:07 -08:00
Nick Winter
08cb87c84d
Automatically take screenshots when submitting contact form from level view.
2014-12-19 18:37:42 -08:00
Nick Winter
6ac0bea5ca
Beefing up contact form data population.
2014-12-19 17:27:58 -08:00
Scott Erickson
59318b2f78
Merge branch 'master' into feature/campaign-editor
2014-12-19 12:54:11 -05:00
Nick Winter
0635d1dccf
Fixed typo in contract emails.
2014-12-18 22:22:44 -08:00
Nick Winter
59b433d863
Upgrading contact form context a bit.
2014-12-18 20:39:15 -08:00
Nick Winter
d801ed61ce
Separating contact emails into premium subscriber support and basic general support.
2014-12-18 20:35:14 -08:00
Scott Erickson
b63b4d64da
More work on the CampaignEditorView. Data gets saved to models now.
2014-12-17 22:53:04 -08:00
Nick Winter
fe0c89e433
Reverting 1167655f
and 30ed0a0e
to re-enable the analytics log handler.
2014-12-17 21:54:56 -08:00
Nick Winter
2ea47cf83b
Fixed #1952 (unsubscribing from specific ladder update emails).
2014-12-17 19:38:36 -08:00
Michael Schmatz
a9265bce42
Disabled achievements plugin
2014-12-17 21:58:32 -05:00
Matt Lott
6ab74f9dab
Disable analytics.users.active
2014-12-17 14:17:50 -08:00
Matt Lott
30ed0a0ead
Disable analytics.log.event server handler
2014-12-17 09:53:43 -08:00
Matt Lott
9baef64dd0
Fix double 403 in Handler.get
2014-12-16 21:45:30 -08:00
Scott Erickson
1cc6a97e43
Added basic campaign view, working on campaign handlers.
2014-12-16 17:46:24 -08:00
Matt Lott
c76662c967
Log analytics events internally
2014-12-15 11:45:12 -08:00
Nick Winter
9ec4b741c4
Fixed CLA permissions check.
2014-12-15 10:02:05 -08:00
Nick Winter
fc4354eb3e
Forgotten the locale code for my spammer target.
2014-12-14 16:01:03 -08:00
Nick Winter
753acb1299
Added 'github' permission type to allow access to CLAs view.
2014-12-14 13:37:43 -08:00
Nick Winter
ef37d74b4d
en-UK and en-AU also require patch approval for translations, can never just save.
2014-12-14 13:27:39 -08:00
Nick Winter
3b2bebf427
Ended HoC sale.
2014-12-13 09:00:33 -08:00
Scott Erickson
b0de331a10
Shored up stripe transaction payment defences to try and fix #1906 .
2014-12-12 15:27:58 -08:00
Nick Winter
194d3ee647
Worked around unstable Zoho mail dependencies by switching password recovery and contact emails to Sendwithus.
2014-12-11 20:15:24 -08:00
Matt Lott
0c81942c71
2nd HoC sub sale
2014-12-11 18:39:03 -08:00
Scott Erickson
0b81796333
Created the Campaign foundation: schema, model, handler.
2014-12-11 11:26:28 -08:00
Matt Lott
d4cfaac7e5
Sub price test
2014-12-10 16:05:55 -08:00
Scott Erickson
02953d0e6c
Set up a subscription page with subscription info and the subscribe button, taking that logic out of the payments page.
2014-12-10 13:42:12 -08:00
Scott Erickson
876a663690
Fixed server tests.
2014-12-09 13:41:44 -08:00
Nick Winter
a97baa2207
HoC sale.
2014-12-09 06:06:14 -08:00
Nick Winter
61f63caa59
Trying to fix a server crash I found with bad stripe globals.
2014-12-08 08:09:31 -08:00
Nick Winter
d5f953ae4f
Getting rid of indexes on employers and candidates.
2014-12-08 07:07:29 -08:00
Scott Erickson
aac1aa379e
Set up stubs for future subscription sales.
2014-12-06 12:38:06 -08:00
Scott Erickson
62cab1e76b
Admins can now give users discounts and free accounts from the MainAdminView view.
2014-12-06 10:05:52 -08:00
Scott Erickson
836d2905b9
Users who have paid or otherwise have access to all content are now called 'premium', and user objects on client and server have an isPremium getter which checks all relevant properties.
2014-12-05 17:19:52 -08:00
Scott Erickson
f4e3416918
Set up an endpoint for fetching Stripe info.
2014-12-05 17:19:52 -08:00
Scott Erickson
e8bb5b824d
Tweaked the subscription handler to modify the actual target user, not necessarily the user that is making the changes.
2014-12-05 15:49:46 -08:00
Scott Erickson
209836c172
Fixed user patching to not also unsubscribe subscribers.
2014-12-05 14:11:38 -08:00
Scott Erickson
d0ee8cb7c7
Set up the server to allow admins to assign customers coupons. Fixed up how customers are created/updated by the server to allow setting new payment information rather than forever using the payment info first provided.
2014-12-04 17:41:27 -08:00
Scott Erickson
0edf4e0ca1
Fixed a MailChimp test. Fixed payment and subscription handlers to deny anonymous users. Hid the subscribe button from anonymous users.
2014-12-04 13:07:07 -08:00
Matt Lott
e3abb9ceb3
Capture active user metrics
...
Watching for these events:
Level completed
User registered
Playtime of 30s in a level
Purchase
Payment
Subscribe
Earned an achievement
2014-12-04 12:57:57 -08:00
Scott Erickson
7210de02e9
Set up stripe to get user emails so receipts can be emailed.
2014-12-03 16:36:03 -08:00
Scott Erickson
0893784a75
Fixed MailChimp subscription updating from the website.
2014-12-03 15:26:39 -08:00
Scott Erickson
eb98cf4952
Hooked up Level handler to deny creating new LevelSessions when the level requires a subscription and the user doesn't have one.
2014-12-03 13:32:28 -08:00
Nick Winter
50ec896fd8
Added a requiresSubscription property to the levels.
2014-12-03 11:46:03 -08:00
Nick Winter
65dde043c7
SubscribeModal is in.
2014-12-03 09:14:14 -08:00
Scott Erickson
aea1e39b58
Tweaked the subscription handler to act more like the payment handler when a card charge fails. It returns 402.
2014-12-02 20:40:33 -08:00
Scott Erickson
cd3bb690f4
Created stripe subscription logic.
2014-12-02 20:02:35 -08:00
Scott Erickson
5dcdabfd62
Refactored stripeCustomerID to stripe object in the user object so we can put more stuff in there.
2014-12-02 11:47:15 -08:00
Nick Winter
ffcfec0a6a
Trying to shut the server up about some anonymous user who is simulating.
2014-12-01 13:53:17 -08:00
Michael Schmatz
3cf80c895e
Removed log infos, iPad language selection
2014-11-30 16:19:01 -05:00
Scott Erickson
3e0394d0d8
Fixed the latest version handler to handle invalid original id inputs.
2014-11-29 11:11:40 -08:00
Scott Erickson
1bd70591a0
Added new mongodb versions to be allowed.
...
Added error logging for every which reason a user may be unable to pay.
Added more info for users when they hit unknown errors.
2014-11-29 10:46:01 -08:00
Nick Winter
891b78eb44
Hiding some ThangTypes from view in level editor.
2014-11-29 10:34:04 -08:00
Nick Winter
d2aabbdacc
A couple workarounds for crashing server tests. Including method in HipChat error messages. Trying to work around undefined ThangType fetch during level loading.
2014-11-29 08:43:40 -08:00
Scott Erickson
31214e854e
Wabam. Refactored a bunch of stuff into 'core' folders so that it's clearer which files are being loaded first thing, and which are not. Also reworked a bunch of the anymatch things in config.coffee, cause there were better ways.
2014-11-28 17:49:41 -08:00
Nick Winter
4b45385571
Working on paper dolls.
2014-11-28 12:11:59 -08:00
Michael Schmatz
6cb46aafa8
Link to Papertrail logs in error messages
2014-11-28 14:37:55 -05:00
Michael Schmatz
897fe6c63e
Improved error handling
2014-11-28 11:44:03 -05:00
Michael Schmatz
0ac0065753
Fixed payments
2014-11-28 11:07:37 -05:00
Nick Winter
915a3243f5
Added feature image hair and thumb slots to the ThangType.
2014-11-26 16:29:48 -08:00
Nick Winter
53c6da5ef8
Allowing upload of paper doll images for items.
2014-11-26 14:18:17 -08:00
Scott Erickson
c4fdcab6fe
The HeroVictoryModal now has the server check for and upsert any missing items, levels and heroes earned.
2014-11-26 12:02:42 -08:00
Scott Erickson
790217f227
Tweaked how the I18N editor works to guard against garbage English submissions and make the chosen language more consistent.
2014-11-25 16:22:06 -08:00
Nick Winter
ab6251281e
Added a payment-received HipChat notification.
2014-11-25 13:20:09 -08:00
Scott Erickson
8f55b9bc1b
Refactored the AccountSettingsView to be both in the site and in the PlayAccountModal.
2014-11-25 12:43:17 -08:00
Nick Winter
98f1eec10c
Upgraded choose hero view for locked heroes. Went back to animated heroes instead of feature images. Removed some server logs.
2014-11-25 09:28:50 -08:00
Michael Schmatz
2b8006ff83
Fixing more crashing bugs
2014-11-25 11:20:39 -05:00
Michael Schmatz
30e08e2c99
Fixed a few crashing bugs
2014-11-25 10:52:20 -05:00
Michael Schmatz
d56f594d58
Better error handling
2014-11-24 20:07:29 -05:00
Nick Winter
16e264788a
Trying to workaround a crash I saw in the logs for GitHub auth.
2014-11-24 14:38:54 -08:00
Matt Lott
c16b0f97bf
Update sync PVP to use transpiledCode
2014-11-22 20:48:07 -08:00
Scott Erickson
03705825d9
Made the GET /db/* endpoints generally accessible without needing to have a user object associated with the request.
2014-11-22 18:41:06 -08:00
Scott Erickson
e5b87e5158
Tweaked, re-enabled achievement specs.
2014-11-21 10:59:48 -08:00
Scott Erickson
c77d38d59f
Made sure Apple receipts can't be re-used with different accounts.
2014-11-21 10:34:37 -08:00
Nick Winter
4de71507a8
Fixed winston require in EarnedAchievement handler.
2014-11-21 10:04:50 -08:00
Scott Erickson
b86e3c30dc
Set up level achievements to be created manually by the client, hopefully making them a bit more stable.
2014-11-20 22:09:54 -08:00
Nick Winter
2393165d9a
Turned off some completed A/B tests. Fixed an achievement recalculation typo Scott found.
2014-11-20 21:57:47 -08:00
Michael Schmatz
f84e92595b
Changed UDID to identifierForVendor
2014-11-20 20:03:24 -05:00
Scott Erickson
a18537b065
Added the ability to assign a user an iOS UDID, and login with it.
2014-11-20 15:54:15 -08:00
Scott Erickson
fae09aad00
Turned on double optin for MailChimp.
2014-11-20 14:31:50 -08:00
Nick Winter
df51e28a1d
Fixed camera zoom killing coordinate hover unnecessarily.
2014-11-20 11:37:10 -08:00
Scott Erickson
13de055c0b
Set up a basic achievements list modal for the world map.
2014-11-19 14:56:40 -08:00
Nick Winter
bf71893ddf
Significantly reduced memory usage and simulation time by further limiting the amount of Thangs which even start tracking ThangState in the first place.
2014-11-17 21:30:44 -08:00
Scott Erickson
95dca575d1
Set up stripe on the server and site to allow purchases through the website.
2014-11-17 15:15:08 -08:00
Matt Lott
f56d01419f
Update sync pvp teams and real-time playback
...
-Non-creator will switch teams upon joining a sync pvp game, if creator
is on same team
-Team swapping should only affect level session
-Real-time multiplayer submit now reloads PlayLevelView to ease loading
both player’s latest level sessions, and then automatically starts
real-time playback.
2014-11-17 15:07:10 -08:00
Nick Winter
a7069e19bd
Ignore (and warn about) achievements with empty queries. Fixed embarrassing bug with more-practice / skip-ahead branching not doing anything for non-admins.
2014-11-17 08:44:53 -08:00
Scott Erickson
025780a575
Added loadingTip property to levels, set them up on the LevelLoadingView, and got them prepped for i18n-ing.
2014-11-12 15:00:24 -08:00
Nick Winter
26beb8a034
A few improvements to ItemDetailsView formatting to deal with spells granted.
2014-11-12 11:02:05 -08:00