Commit graph

1045 commits

Author SHA1 Message Date
Nick Winter
eb075b99a0 Fixed #2448 with better random session query distribution. 2015-04-12 11:34:19 -07:00
Matt Lott
4669d4cb0a Update admin subs dashboard
Break up lengthy server calls to reduce timeouts in production.
2015-04-11 10:36:03 -07:00
Nick Winter
f8beed9ce8 Fixed #2464. Well, let's see if it works. 2015-04-10 16:57:16 -07:00
Matt Lott
bc35a27750 Private clans server updates
Only return private clans in lists to owners.
Get for specific private clan still allowed.
Restrict create/join private clan to premium users.
2015-04-10 16:04:36 -07:00
Matt Lott
5c40221ab2 Update admin subs dashboard
Using invoices to aggregate totals which should provide a more accurate
growth rate.
2015-04-10 11:27:59 -07:00
Nick Winter
fc43803588 Fixed ladder match links in ladder update emails. 2015-04-10 08:17:51 -07:00
Nick Winter
9ee0400c18 Updated to just send out tell-a-parent emails, no tell-a-friend emails. 2015-04-08 21:48:21 -07:00
Nick Winter
98b749eb1b Making simulator stuff more efficient by using less bandwidth. 2015-04-08 12:00:23 -07:00
Nick Winter
f02a8b54f3 Fixed #2596. Stopped bless-brunch from using its cacheBuster feature. Set no-cache header for /db/model.type/slug so that we can use Cloudflare on /db/model.type/object-id. Fixed a coffeelint warning. 2015-04-07 19:03:35 -07:00
Matt Lott
3c755d39e6 Add recent subscribers to admin dashboard 2015-04-07 15:00:53 -07:00
Nick Winter
603f9f9a37 Fixed issue where some sessions would not grant proper leaderboard replay access. 2015-04-07 14:51:18 -07:00
Nick Winter
7f41ad6c52 Added OSTraining and Breakout Mentors resources. 2015-04-07 09:25:42 -07:00
Matt Lott
9d6e5fe20b Clan analytics
Hook up server-side operations.
2015-04-06 16:27:56 -07:00
Matt Lott
cc4620bf6d 🐛Fix clan schema require case typo 2015-04-06 12:01:48 -07:00
Matt Lott
43fb8ed462 Add clans link everywhere
Top-level menu, world view, user profiles.
Will add to /teachers later.
2015-04-06 11:17:13 -07:00
Matt Lott
d4aa9882a9 Update clan buttons UI
And remove temporary test logging.
2015-04-06 10:07:16 -07:00
Matt Lott
57bdbb4432 🐛Fix anonymous clan details page viewing 2015-04-03 16:55:26 -07:00
Matt Lott
b808fa5276 Add favorite language to clan details page 2015-04-03 15:52:16 -07:00
Matt Lott
5ae93cd6ab Add clan description field 2015-04-03 14:09:43 -07:00
Matt Lott
39990ee151 Sort and limit clan lists
Clan lists sorted by member count, then created date.
Public clans lists limited to 100.
Member lists sorted by slug.
2015-04-03 12:22:44 -07:00
Matt Lott
dfff871c58 Add achievements to clan details view 2015-04-03 11:05:37 -07:00
Matt Lott
f0bee3fd98 Normalize clan owner data 2015-04-03 09:52:25 -07:00
Matt Lott
56342ad993 Normalize clan members data 2015-04-02 17:00:28 -07:00
Matt Lott
df120bdea3 Delete clan 2015-04-02 11:44:18 -07:00
Matt Lott
d91a7d8d1a Clans remove member 2015-04-02 11:01:37 -07:00
Matt Lott
bf38327578 Leave clan
And add join clan plumbing to clan details page.
2015-04-01 16:00:39 -07:00
Matt Lott
b48de3d74d Join clan 2015-04-01 15:24:45 -07:00
Matt Lott
482b66b8a4 Create and list clans
Replace mock data with some real functionality.
2015-04-01 11:56:48 -07:00
Nick Winter
0b1bb6a4aa Added admin/pending-patches view. Fixed accepting several kinds of patches. Added keyboard shortcuts for accepting (a) and rejecting (r) patches. Fixed #2490. Fixed #2515. Fixed #2304. 2015-03-28 13:54:44 -07:00
Matt Lott
532e8133c6 Add graph to sub counts admin page 2015-03-27 15:27:34 -07:00
Matt Lott
53de6c6134 Add current subscription counts view under the admin page 2015-03-27 15:27:34 -07:00
Nick Winter
7dff105cdf Insane hackery for #1777 to give us more code editor space, better use of space with tall screens, and scrolling API properties. Watch out for bugs. 2015-03-25 16:47:31 -07:00
Nick Winter
a7244e1567 Tweaking offer triggers. 2015-03-24 18:56:32 -07:00
Nick Winter
a39a4d4c1c MailChimp API doesn't let us segment by custom properties like chinaVersion. 2015-03-24 18:22:59 -07:00
Nick Winter
5bc58ce996 Added MakerSquare email offer. Not emailing subscribers with next-steps offers. 2015-03-24 17:08:50 -07:00
Nick Winter
eda57e366a Fix for anonymous user signups. 2015-03-23 16:38:12 -07:00
Nick Winter
b4ea78e5cb Implementing alternative pricing with Alipay in China to support dedicated China server. 2015-03-23 15:26:44 -07:00
Michael Schmatz
a16ae2b5bc Changed read prefs and enabled middleware 2015-03-21 21:49:32 -04:00
Matt Lott
2561bc4caf 🐛Fix Stripe web hook sub deleted for deleted user
Add check for deleted user in subscription deleted Stripe web hook
event handler, and equivalent test case.
Add logging for web hook 500 errors to aid future debugging.
2015-03-20 16:14:32 -07:00
Michael Schmatz
5a7666fca3 More read nearests and changed redirection 2015-03-20 16:33:03 -04:00
Michael Schmatz
d8c21771fc Merge branch 'master' into china 2015-03-20 16:08:18 -04:00
Nick Winter
e6f53d437a Adding zero-sum to simulated ladder levels. 2015-03-20 10:16:19 -07:00
Nick Winter
8b06de9613 Requests without users can't save poll votes. 2015-03-20 07:10:47 -07:00
Matt Lott
fec3ac38e9 Prepaid subscriptions
Admins can generate a prepaid code, which a user can use to subscribe
for free via the account/subscription page.
The subscription will be identical to the normal monthly subscription
(e.g. 3500 gems per month), except they won’t be charged.
Does not require the recipient to enter billing information.
Can be applied to an existing subscription, which will be converted to
free.
Prepaid code can only be used once.
Prepaid subscription cannot be unsubscribed via the UI.
2015-03-19 15:04:15 -07:00
Michael Schmatz
7f9301e8c6 Setting up read preferences and china specific configuration 2015-03-19 14:18:38 -04:00
Nick Winter
585fa40a8c Added first draft of campaign info to campaign selector screen. 2015-03-18 16:20:30 -07:00
Nick Winter
709c2fc4f1 Added more Artisan permissions for Articles. 2015-03-16 13:54:20 -07:00
Nick Winter
ab64a335e4 Another fix for poll handler getting next poll if there are no poll records yet. 2015-03-14 11:30:54 -07:00
Nick Winter
89bdb3b790 Fixed #2518. 2015-03-14 09:57:31 -07:00
Nick Winter
57e77a0cd7 Upcoming ladder level Zero Sum equalizes all players' heroes and equipment. 2015-03-14 09:39:43 -07:00
Matt Lott
fde8904fd8 Add backwards compatibility check for Stripe sub search 2015-03-13 15:39:19 -07:00
Matt Lott
af89452b93 Merge branch 'sponsored-subs' 2015-03-13 15:19:20 -07:00
Nick Winter
be84517010 Enabling another offer. 2015-03-12 11:08:58 -07:00
Nick Winter
a697b35920 Fixed poll fetching for first poll. 2015-03-11 09:01:40 -07:00
Nick Winter
9c99fc455a A few poll fixes. 2015-03-10 09:45:21 -07:00
Nick Winter
8c1de9dfa2 Added user index for siterefs. 2015-03-09 17:50:36 -07:00
Nick Winter
dc5fb0af14 Sending a couple more offers in the next-steps emails. 2015-03-09 16:32:29 -07:00
Nick Winter
f3e0b9c00c Poll answers now recordable by non-admins. 2015-03-09 10:11:03 -07:00
Nick Winter
495845a633 Storing certain poll results in User object. Showing a poll once per day. 2015-03-09 09:30:51 -07:00
Nick Winter
e21360127d Polls! 2015-03-08 16:36:17 -07:00
Nick Winter
1c88881b44 Hooked up a next-steps email to be sent on day two. 2015-03-04 17:08:45 -08:00
Matt Lott
cd59b90e37 Add custom payments
Example:
https://codecombat.com/account/invoices?a=21600&d=9%20monthly%20subscrip
tions
2015-03-04 15:40:53 -08:00
Matt Lott
418536ed60 Turn off mailchimp subscribe for unit tests 2015-03-04 05:50:24 -08:00
Michael Schmatz
f024f25235 Add some indexes 2015-03-04 00:04:16 -05:00
Nick Winter
a2bbc9c893 Actually saving said referrer information. 2015-03-03 09:06:42 -08:00
Michael Schmatz
d0908f694c Log app server analytics event to the new analytics server
I never managed to get the res.close event (responses from the server
are 0-length) I feel like this is a bug with Node I should report.
2015-03-02 19:02:28 -05:00
Nick Winter
7de6fcf5fd Added Artisan access to LevelComponents. 2015-03-01 20:59:50 -08:00
Nick Winter
2767fbc7aa Even less emphasis on recent games, for #2448. But we might need something different due to the time-clustered nature of submissions leading to an uneven distribution. 2015-03-01 07:57:21 -08:00
Nick Winter
d881476731 Let's try less emphasis on most recently submitted games. 2015-02-27 07:52:48 -08:00
Nick Winter
4082110382 Cleaned up getTwoGames random session simulation fetcher. Made it more efficient, made it have a better spread over all games submitted to a ladder with a better bias towards the most recently submitted games. 2015-02-26 21:25:17 -08:00
Nick Winter
99b2c268b2 Also caching Aggregates. 2015-02-26 18:32:59 -08:00
Nick Winter
b4e9ee67f0 Added one-minute in-memory server caching for a bunch of common queries. 2015-02-26 17:20:27 -08:00
Nick Winter
5128eae284 Added access to unpublished levels for 'artisan' permissions. 2015-02-26 15:21:08 -08:00
Nick Winter
d310fa9476 Harrowland was being slow in simulator for some reason. 2015-02-25 21:47:57 -08:00
Nick Winter
df4b98a9bf Added a new 'artisan' permission, which can edit most of the things admins can, but with less uncomfortable ultimate power. 2015-02-25 18:41:39 -08:00
Nick Winter
7e889a2a80 Simulating games for Harrowland, now, too. Alternative way of loading hero when sticking with same hero from within level when changing inventory. 2015-02-25 18:09:55 -08:00
Nick Winter
3be2b6406d Admins are now automatically premium. 2015-02-25 17:45:01 -08:00
Nick Winter
4e11870be0 Fixed bug with anonymous players' email addresses not making it through. 2015-02-25 17:39:54 -08:00
Matt Lott
39d393c52f 🐛Fix analytics API slugify 2015-02-25 11:39:26 -08:00
Nick Winter
dec201ad22 Removed watcher emails for overloaded watchers. 2015-02-25 11:16:57 -08:00
Nick Winter
4cbbcdad6d Merge pull request #2359 from laituan245/master
Added ability to delete account
2015-02-24 09:30:22 -08:00
laituan245
a588a3b2c8 Some updates to the PR #2359 2015-02-25 02:12:39 +09:00
laituan245
eb53381083 Don't delete the User object, just remove all the properties except for _id 2015-02-24 22:36:12 +09:00
Nick Winter
7d7db5dafe Thang Editor can now drag Thangs to adjust registration points. Fixed missing terrain save property on ThangTypes. Fixed text search test. Added new Talus (mountain floors) to floor ThangType list for proper stretching. 2015-02-22 11:07:56 -08:00
Nick Winter
498eae328a Migrated from mongoose-text-search to new built-in operators. Fixed #2367. 2015-02-21 14:22:51 -08:00
Nick Winter
1ba79b83a9 Added a script to recalculate all gems purchased. 2015-02-20 11:11:12 -08:00
Michael Schmatz
5b39c6bb19 Try moving projection after sort/limit
Trying to get these queries to be faster
2015-02-20 11:05:58 -05:00
laituan245
d325623699 Added ability to delete account 2015-02-20 08:19:30 +09:00
Nick Winter
87f3b9e135 gamesCompleted now properly fires achievements even though it's not using normal saves. 2015-02-18 17:08:54 -08:00
Nick Winter
880d22ed50 Limiting how many results try to get fetched on admin DB searches like /db/user so that we don't blow up the DB. 2015-02-18 14:12:23 -08:00
Nick Winter
c1e14dc973 Fixed achievement recalculation to work from the command line. 2015-02-18 09:57:03 -08:00
Nick Winter
faae8aed81 Fixed typo with new LevelSession game completion tracking. 2015-02-18 08:39:36 -08:00
Nick Winter
52648399c6 Fixed recording of gamesCompleted. Fixed recalculateStatistics scripts to not explode memory, and to report progress. 2015-02-17 20:51:32 -08:00
Nick Winter
d0f661508c Merge pull request #2339 from amankr/server
Added user info to db error
2015-02-17 15:29:22 -08:00
Nick Winter
ae07a25657 Fixed #2329: ordered spoken languages first by popularity (for top 8), then by alphabetical. 2015-02-17 09:29:21 -08:00
Aman Kumar
f7450c214c Added user info to db server error 2015-02-17 22:54:49 +05:30
Aman Kumar
c76241be40 Added user info to db error 2015-02-17 14:42:12 +05:30
Nick Winter
685c3b3318 Fixed patch fetches to handle when the patches are targeting strings instead of ObjectIds. 2015-02-16 17:38:25 -08:00
Nick Winter
c0f738d736 Fixed bug with Campaign i18n not showing fullNames properly. 2015-02-16 09:21:59 -08:00
Nick Winter
578ec6d7d0 Was confused about achievement collections and categories. 2015-02-13 17:10:30 -08:00
Nick Winter
6cdd6fbc44 Improvements for recalculating earned achievements, recreating earned achievements that should exist, and updating proportionalTo achievements like simulatedBy that don't get updated with a post-save hook. 2015-02-13 16:33:13 -08:00
Scott Erickson
c628eff272 Fixing #1866. 2015-02-13 15:07:44 -08:00
Scott Erickson
5272f9d9ba Fixing #2269. 2015-02-13 15:04:51 -08:00
Matt Lott
7cd35ffc33 Update share progress mail to include sender email 2015-02-13 14:04:57 -08:00
Nick Winter
4fec64c3ca Merge pull request #2313 from laituan245/master
Added a "god mode" button to the local dev environment  (issue #2164)
2015-02-13 09:08:09 -08:00
laituan245
9c754bbd96 Added a "god mode" button to the local dev environment #2164 2015-02-14 01:46:04 +09:00
Nick Winter
a8dc353f86 Aether now loading all code languages possibly used in a match before the level can begin. Hopefully, this will fix #1943 and fix #1892. 2015-02-12 18:40:38 -08:00
Nick Winter
7000048bee Fixed a few more issues with the headless simulator. 2015-02-12 17:07:29 -08:00
Nick Winter
8936d5fa40 Simulator version 2 takes into account flag history when simulating matches. 2015-02-12 10:59:34 -08:00
Nick Winter
a2a4303a83 Fixed #2109. Much less fragile naming of opponents on My Matches tab. 2015-02-12 08:50:55 -08:00
Nick Winter
63fa2f86d4 Tracking who is simulating matches so we can see patterns in ill-reported matches. Rejecting simulations from simulators with old versions of the Simulator code. 2015-02-11 20:24:12 -08:00
Nick Winter
2a9bb0292d Don't dispatch simulations to old ladders, just new hero-ladder levels. Fixed typo in last cache commit. 2015-02-11 14:01:38 -08:00
Nick Winter
91b6f1759d Fixed weird behavior of MailChimp API where it wouldn't update not-yet-confirmed subscribers' email addresses when changed and we'd end up sending the opt-in email a zillion times. 2015-02-09 15:33:59 -08:00
Matt Lott
c4620a7b2d Refactor analytics event logging
Clean up property slimming.
Save explicit identity traits in properties.
2015-02-09 15:03:04 -08:00
Nick Winter
760f2d35bb Fixed bug with checkStripeCharges also trying to match iOS charges. 2015-02-09 08:31:44 -08:00
Nick Winter
58edc6d033 Fixed #2173: Campaigns now update adjacent campaign i18n when saved. 2015-02-06 19:23:11 -08:00
Matt Lott
972c3d0d6f Share progress modal
Shown after forgetful-gemsmith
2015-02-06 14:49:50 -08:00
Matt Lott
771437abb5 Turn off parent email hipchat messages 2015-02-06 09:11:49 -08:00
Nick Winter
1d8f91c42f Added campaign world selector portal screen for half of players. 2015-02-05 15:05:33 -08:00
Scott Erickson
f9ee100e73 Made Achievements and Campaigns patchable. 2015-02-05 12:01:19 -08:00
Scott Erickson
eafecaf492 Addressing #2173, part 1. It should now be possible to submit changes for non-versioned documents like Campaigns and Achievements. 2015-02-05 11:47:27 -08:00
Matt Lott
349e975142 Update hipchat parent email msg 2015-02-04 16:41:59 -08:00
Nick Winter
239b9e3285 Merge branch 'master' of https://github.com/codecombat/codecombat 2015-02-04 16:18:01 -08:00
Nick Winter
a189e32948 Refactored sending of HipChat room messages. 2015-02-04 16:17:53 -08:00
Matt Lott
20e70c316e Help usage analytics script 2015-02-04 15:50:17 -08:00
Matt Lott
b42061e0ee Include code language in parent email 2015-02-04 14:29:16 -08:00
Matt Lott
c842f45786 Update subscribe modal with parent help button 2015-02-04 13:54:38 -08:00
Michael Schmatz
6ca92e1278 Fix #2180 2015-02-01 15:37:28 -05:00
Nick Winter
c977ecc16f Adding easy observing of leaderboard matches (except top 5). 2015-01-31 10:04:11 -08:00
Nick Winter
022d31c19a Basic leaderboards are working. 2015-01-30 21:36:48 -08:00
Matt Lott
a092444455 Add browser info to level session 2015-01-30 14:45:36 -08:00
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