Matt Lott
d7cddcb136
Teacher trial subscription form
...
Add a teacher survey form for applying for a free trial subscription
for evaluation purposes.
Add an admin trial requests review page, where admins can approve/deny
requests.
2015-06-05 06:48:19 -07:00
Matt Lott
9812986655
Enable more server subs tests for Travis
2015-05-28 16:56:13 -07:00
Matt Lott
9828bd5d1d
Sponsored sub cleanup on unsubscribe
...
Sponsored subscriptions can be partially set up when the incremental
subscription charge fails. This cleans up the sponsored subscriptions
when one of the recipient subscriptions is cancelled.
Related to #2786
2015-05-28 16:56:13 -07:00
Matt Lott
a8a55021b9
🐛 Fix unpaid charges yield payments
...
Unpaid charges should not be recorded as successful payments in our
database. Was happening when opening the buy gems modal again.
2015-05-19 11:41:11 -07:00
Matt Lott
865ceac91a
🐛 Travis CI failures
...
Disabling some more subscription tests and adding spec durations so we
can narrow down the Travis CI timeout failures.
2015-05-12 15:08:55 -07:00
Matt Lott
4f54b4432f
Limit subscription tests under Travis CI
...
They are killing our Travis CI test runs due to timeouts and Stripe API
rate limits.
2015-05-06 13:49:47 -07:00
Matt Lott
559b9533c4
🐛 Fix clan name and description editing
...
#Fixes 2693
2015-04-21 14:12:01 -07:00
Matt Lott
f80a73ae9b
Decouple clan type from dashboard details
...
Adding dashboardType field, private clans automatically set this to
‘premium’.
2015-04-20 14:04:22 -07:00
Matt Lott
2b29e755fe
Make clan name and description editable
2015-04-15 11:09:43 -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
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
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
Matt Lott
53de6c6134
Add current subscription counts view under the admin page
2015-03-27 15:27:34 -07: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
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
Matt Lott
af89452b93
Merge branch 'sponsored-subs'
2015-03-13 15:19:20 -07: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
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
768ef7818c
Removed unneeded mongodb driver, since Mongoose uses its own.
2015-02-22 11:38:51 -08:00
Matt Lott
7e46b819c4
Stripe API version update fixes
...
Using customer sources instead of cards so we can update our API
version:
https://stripe.com/docs/upgrades?since=2014-11-05#api-changelog
2015-02-22 07:54:36 -08: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
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
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
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
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
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
Scott Erickson
59318b2f78
Merge branch 'master' into feature/campaign-editor
2014-12-19 12:54:11 -05:00
Scott Erickson
1cc6a97e43
Added basic campaign view, working on campaign handlers.
2014-12-16 17:46:24 -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
20c8352225
User password hash test accepts production or development salt for convenience.
2014-12-11 20:21:42 -08:00
Scott Erickson
876a663690
Fixed server tests.
2014-12-09 13:41:44 -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
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
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
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
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