Commit graph

1704 commits

Author SHA1 Message Date
Scott Erickson
442c33bfe1 Refactor auth specs for #3469 2016-04-11 10:35:46 -07:00
Scott Erickson
823dbd620b Refactor achievement specs for #3469 2016-04-08 15:06:05 -07:00
Matt Lott
ece3c6f19d Clean up server Slack messages 2016-04-08 09:24:38 -07:00
Scott Erickson
8ff80fc92d Add npm 'proxy' script for developing client on prod server 2016-04-07 13:59:38 -07:00
Matt Lott
9865e6da22 Turn off demo request 2 enrollments and approved mails 2016-04-07 12:52:11 -07:00
Scott Erickson
29cd880480 Refactor handlers to /server/handlers 2016-04-07 09:40:53 -07:00
Scott Erickson
c3e5416166 Refactor server models into /server/models, remove request and mongoose from test globals 2016-04-06 16:06:52 -07:00
Scott Erickson
ebab07d736 Fix /teachers/demo to work when not logged in 2016-04-05 10:01:51 -07:00
phoenixeliot
beb53d9f2f Various fixes and changes to teacher-accounts and teacher-dashboard 2016-04-04 15:42:29 -07:00
Scott Erickson
58a5df7a4f Restrict teacher and student accounts to their respective areas and actions 2016-04-04 15:20:34 -07:00
phoenixeliot
4a72ffc185 Implement all of teacher-dashboard 2016-04-04 15:19:27 -07:00
Scott Erickson
bd3a77da9f Implement teacher accounts 2016-04-04 15:18:06 -07:00
Nick Winter
8e3a7915de No more simulations for Elemental Wars 2016-03-28 15:34:19 -07:00
Nick Winter
2dc4b17b94 Adjust ladder simulations 2016-03-25 20:01:42 -07:00
Matt Lott
f53d46cb90 🐛Fix missing User reference in trial-requests 2016-03-22 13:57:04 -07:00
Matt Lott
feeabf4f08 Turn off server Slack message unfurling
Also cleaning up some message URL formatting.
2016-03-22 09:51:18 -07:00
Matt Lott
b6ad388828 🐛Parse Slack API response JSON 2016-03-22 09:32:28 -07:00
Matt Lott
ec50bbab40 Use correct Slack bot profile for server messages 2016-03-21 14:10:26 -07:00
Matt Lott
3dd322986a Update Slack message destinations
Using ops and dev-feed more, reducing noise on general.
2016-03-21 05:36:44 -07:00
Matt Lott
5d71acba05 Replace HipChat with Slack 2016-03-18 17:05:21 -07:00
Scott Erickson
61953219a4 Have user avatar endpoint check that id is valid
To limit errors for client tests which send invalid ids
2016-03-18 11:03:55 -07:00
Scott Erickson
f21baa7af5 Migrate /db/trial.request for #3469 2016-03-18 11:03:55 -07:00
Scott Erickson
2e96a387e9 Add User.logout to client 2016-03-18 11:03:54 -07:00
Matt Lott
97f7026a4f Update Close.io sales lead creation
Moving lead upserting to background script
2016-03-14 09:35:57 -07:00
Scott Erickson
464430200c Fix AccountSettingsView to only try to change permissions in development 2016-03-11 15:00:55 -08:00
Scott Erickson
ebc98f988f Refactor CreateAccountModal out of AuthModal, add class code to signup 2016-03-10 10:52:11 -08:00
Matt Lott
bce9862be2 Update request demo Ux
Renaming request quote to request demo
Changing create class wording to set up class
Showing different UI if teacher or not
Adding gameplay screenshots to homepage
Update request demo email

Closes #3449
2016-03-08 09:30:50 -08:00
Nick Winter
1ccad78782 Submit picoCTF solutions, show progress, disable sound 2016-03-04 11:44:43 -08:00
Scott Erickson
a2249f8df1 Add return-to-admin (turn off espionage mode) 2016-03-04 10:43:17 -08:00
Rob
eeb6f8c5e9 Support older version of request where cookie jars are on by default o.O 2016-03-03 15:47:00 -08:00
Scott Erickson
47f3223be1 Fix and improve new errors system
* Fix error property name -> errorName
* showNotyError can handle Backbone error callbacks where jqxhr is second param
* showNotyError correctly shows JSON error message or name
* Add timeout to showNotyError
2016-03-03 13:59:17 -08:00
Nick Winter
eb47e83fb4 Replace 'queen' with 'zap' in our code word list 2016-03-03 09:42:29 -08:00
Matt Lott
7bd0936c93 Import approved trial requests into Close.io 2016-02-26 06:21:31 -08:00
Scott Erickson
ad78f64b31 Add mongoose require to named middleware 2016-02-25 10:39:10 -08:00
Matt Lott
609884eb51 Update furthest course dashboard tables
Adding a second table, setting range to be 60 and 365 days.
Updating teacher columns to prioritize student paid status over
furthest student course.
2016-02-24 06:25:01 -08:00
Matt Lott
dd603a0436 Add school sales table to dashboard 2016-02-24 06:25:01 -08:00
Scott Erickson
7749f9cc0a Refactor out promisifyAll, use Mongoose's promises and promisify 2016-02-22 16:03:21 -08:00
Scott Erickson
becad06750 Refactor ArticleEditView and PatchesView to use model endpoint functions 2016-02-22 16:03:21 -08:00
Scott Erickson
7fb08f343a Refactor /db/article to use generators 2016-02-22 16:03:21 -08:00
Scott Erickson
9f3b177574 Fix getting a document by slug or id and projecting it without its permissions 2016-02-22 09:30:36 -08:00
adeeb1
e71a4b71dc Fixed GitHub authentication - #1764 2016-02-19 10:07:05 -08:00
Scott Erickson
cf030146e8 Restrict request quote emails
* If logged in => repopulate and lock email (and name if available)
* If logged out => disallow using an email for an existing account and display a validation message + login link
2016-02-17 11:51:26 -08:00
Matt Lott
cb29d7068b Add prepaids to payments
Closes #3402
2016-02-17 10:08:44 -08:00
Nick Winter
37fbd8ca21 Start to play picoCTF levels as course levels without hero selection 2016-02-17 09:53:45 -08:00
Rob
0aa3418e44 Add PicoCTF backend support. 2016-02-16 16:44:35 -08:00
Matt Lott
73657d5428 Update analytics dashboard
Splitting out classroom and campaign active users
Adding more detailed active users graphs
Patching up missing analytics log events for 2/2/16-2/9/16
2016-02-16 09:23:42 -08:00
Nick Winter
6800ea2ff7 Add picoCTFProblem field to levels 2016-02-10 14:16:54 -08:00
Matt Lott
61d2ce3dc5 Add index for analytics server log collection
Created on live analytics server as well.
2016-02-09 16:50:55 -08:00
Scott Erickson
d0185cc2cd Fix level session creation to use classroom language setting for course-ladder levels 2016-02-09 10:15:26 -08:00
Scott Erickson
bb38c58903 Properly fix duplicate course instances
* Add script to merge existing course instances
* Have client only send one course instance creation
* Have server return existing course instance if one for the given classroom/course exists
* Remove bandaid code from ClassroomView
2016-02-08 12:48:29 -08:00
Matt Lott
bd9ca8ee5f Add enrollments graph to analytics dashboard 2016-02-06 14:02:44 -08:00
Matt Lott
5d2ad62fb9 Add top school counts to analytics dashboard 2016-02-04 17:31:25 -08:00
Matt Lott
e8c22679d9 Add trials to active classes analytics dashboard
Only looking at active classrooms, split into paid, trial, and free.
Active class: 12+ students total, 6+ active in last 30 days.
2016-02-04 16:31:52 -08:00
Nick Winter
260fd21f4e Add Segment for teachers, misc analytics cleanup tweaks 2016-02-02 15:13:55 -08:00
Matt Lott
78c86eb979 Add furthest course table to analytics page 2016-01-26 14:37:25 -08:00
Nick Winter
622c3d46de More investigation for baffling _.pluck bug 2016-01-20 09:34:32 -08:00
Nick Winter
770379c521 Testing fix for weird _.pluck issue 2016-01-18 16:09:19 -08:00
Scott Erickson
c23fb50fa7 Merge pull request #3330 from differentmatt/teacher-news
Add approved teacher trials to CodoCombat list Teachers group
2016-01-18 15:18:55 -08:00
Matt Lott
9d1213bdf9 Update recovery password email
Closes #3332
2016-01-18 12:46:18 -08:00
Matt Lott
d2921f66cb Add approved teacher trials to mail news group 2016-01-17 07:39:30 -08:00
Nick Winter
67f7ce1e0d Add Brazil coupon test. Generalize prices in subscription test a bit more. Handle brazil_basic_subscription product in one more place. 2016-01-12 12:25:13 -08:00
Nick Winter
e872ead632 Implement Brazil coupon 2016-01-11 09:52:46 -08:00
Nick Winter
c0fd58401f Fix analytics query finding limited number of recent sessions 2016-01-11 09:51:23 -08:00
Nick Winter
01b181ee43 Add script to find active subscribers by country 2016-01-11 09:50:44 -08:00
Matt Lott
017dea696f Remove HoC extra 2 months trial enrollments 2016-01-07 15:45:46 -08:00
Imperadeiro98
a8d4d68da8 Remove duplicate key from LevelSystem.coffee 2016-01-06 14:24:22 +00:00
Rob Blanckaert
0fe700b6bf Add healthcheck route 2015-12-29 00:03:43 -05:00
Nick Winter
187a6f87a9 Include course info in contact message session links 2015-12-28 08:15:48 -08:00
Nick Winter
f8091443e9 Lower the number of rerenderings needed when spritesheets get full. Add a jitSpritesheets query variable option for comparing performance of prerendered spritesheets. 2015-12-18 13:26:47 -08:00
Nick Winter
7186bd5592 Fix error handling callback 2015-12-17 07:03:54 -08:00
Rob
846fb987d2 Merge commit '129d3b793d97ea32e6f42b4ca1f33bb0860157e0' into production 2015-12-16 16:46:00 -08:00
Nick Winter
129d3b793d Add Mandate for modifying simulation throughput on the fly, other things later 2015-12-16 16:39:45 -08:00
Scott Erickson
a28e7bde2c Update tests for db products, some cleanup 2015-12-16 16:39:44 -08:00
Nick Winter
b39883209c Remove a couple server logs 2015-12-16 16:39:44 -08:00
Nick Winter
3981c8887d Parse numeric arguments in admin query condition URLs 2015-12-16 16:39:43 -08:00
Scott Erickson
7c516c4d9f Move product information to the db 2015-12-14 11:10:50 -08:00
Matt Lott
ae1621ea09 Update analytics aggregation to process classrooms 2015-12-13 15:35:53 -08:00
Matt Lott
03bc785201 Merge branch 'master' into production 2015-12-12 13:16:38 -08:00
Nick Winter
c242317d91 Enhance logging for bad PUTs with 'undefined' slug ids 2015-12-11 10:09:53 -08:00
Matt Lott
920444fa83 Merge branch 'master' into production 2015-12-10 12:27:08 -08:00
Matt Lott
7f280a1b56 Remove submitted trial request hipchat msgs 2015-12-10 11:22:04 -08:00
Nick Winter
77a09c86e0 Merge branch 'master' into production 2015-12-10 09:06:58 -08:00
Nick Winter
608d45ba70 Don't do undefined slug collection scans 2015-12-10 09:05:34 -08:00
Matt Lott
a3544ef417 Merge branch 'master' into production 2015-12-09 14:51:26 -08:00
Scott Erickson
23e3821e24 Switch from jasmine-node to jasmine, run server tests on a single process
This collapses the difference between master and single-process-server-tests, to
remove some larger fixtures files that were in that feature branch.
2015-12-09 14:27:10 -08:00
Nick Winter
2db3145e19 Fix Mongoose 4 update change the right way for completing level achievement calculations 2015-12-09 12:08:16 -08:00
Nick Winter
7269dc85d4 Update our updates' callbacks' argument signature for Mongoose 4 2015-12-09 11:56:18 -08:00
Nick Winter
163a701188 Aad a schoolName index for later querying of our top schools 2015-12-09 11:55:46 -08:00
Nick Winter
8230004962 Merge branch 'master' into production 2015-12-09 06:23:14 -08:00
Nick Winter
453c5759cc Add simulation throughput counter 2015-12-09 06:22:40 -08:00
Matt Lott
5a584b6325 Merge branch 'master' into production 2015-12-08 16:24:13 -08:00
Matt Lott
745b905813 Update HoC survey mail end date to a string 2015-12-08 15:23:35 -08:00
Matt Lott
8269113efc Add paid access end date to HoC approved survey mail 2015-12-08 15:16:28 -08:00
Nick Winter
a95b938fc5 Merge branch 'master' into production 2015-12-07 03:41:59 -08:00
Nick Winter
80b72edff1 Handling a few more server errors I saw 2015-12-07 03:41:33 -08:00
Nick Winter
2650b1288a Merge branch 'master' into production 2015-12-06 12:13:55 -08:00
Nick Winter
ca1cb9a084 Don't listen to any unauthenticated requests in CourseInstanceHandler 2015-12-06 12:13:10 -08:00
Nick Winter
ba8a1370d9 Merge branch 'master' into production 2015-12-06 09:53:31 -08:00
Nick Winter
5a92825347 Removed nonsensical lean model set calls that don't work in new Mongoose 2015-12-06 09:53:25 -08:00
Nick Winter
5181f44c3a Merge branch 'master' into production 2015-12-06 09:28:11 -08:00
Nick Winter
5555fdfe50 Removed some logs 2015-12-06 09:28:03 -08:00
Nick Winter
9ac89cbce1 Merge branch 'master' into production 2015-12-06 09:24:16 -08:00
Nick Winter
1187390fd0 Improve simulation game logic, and re-enable automatic simulations under certain conditions, better targeted toward the matches the player cares about 2015-12-06 09:20:37 -08:00
Nick Winter
f38eea3590 Merged. Turn off chained rankings for now since they are slow and don't work anyway 2015-12-06 04:36:41 -08:00
Nick Winter
77731dad84 Improve server caching and ladder view refresh performance 2015-12-05 08:18:36 -08:00
Rob
47d093ec88 Don't crash if a user has no stats object. 2015-12-04 18:28:51 -08:00
Nick Winter
6d890051a9 Merge branch 'master' into production 2015-12-04 14:07:42 -08:00
Scott Erickson
7598236c21 Remove redundant lowercasing in classroom handler 2015-12-04 13:38:35 -08:00
Nick Winter
0c8a5dabb0 Merge branch 'master' into production 2015-12-04 12:06:48 -08:00
Scott Erickson
9d36d33051 Make fetch Classroom by code case insensitive 2015-12-04 11:30:10 -08:00
Matt Lott
ccbb7c6317 Merge branch 'master' into production 2015-12-04 09:28:52 -08:00
Nick Winter
055a6f7eeb Update next steps email 2015-12-03 12:25:59 -08:00
Nick Winter
3677146c4a Merge branch 'master' into production 2015-12-03 11:15:40 -08:00
Nick Winter
e3db0dea3a Add Classroom, Clan, and Achievement indexes. Fix logging for undefined slugs indentation. 2015-12-03 11:15:34 -08:00
Nick Winter
6c1f7c789a Merge branch 'master' into production 2015-12-03 10:55:27 -08:00
Nick Winter
b3edafe285 Add missing CourseInstance indexes. Log undefined slug lookups. 2015-12-03 10:55:08 -08:00
Matt Lott
1d51b063c4 Merge branch 'master' into production 2015-12-02 17:00:45 -08:00
Scott Erickson
704ed75f55 Fix classroom invite link 2015-12-02 15:04:56 -08:00
Scott Erickson
6be512621f Merge branch 'master' into production 2015-12-02 14:01:44 -08:00
Scott Erickson
4403347290 Fix removing members from classrooms and course instances 2015-12-02 13:59:47 -08:00
Rob
ba2b49a5cb Merge branch 'master' into production 2015-12-02 13:34:29 -08:00
Nick Winter
28f6dd1fe1 Merge branch 'master' into production 2015-12-02 12:07:50 -08:00
Rob
6d4c17f724 Merge branch 'master' into courses-vhoc 2015-12-02 12:03:55 -08:00
Scott Erickson
7f2ddba089 Add remove student modal to ClassroomView 2015-12-02 11:56:38 -08:00
Rob
abfce4299c Send unique users to perfmon 2015-12-02 10:58:02 -08:00
Nick Winter
0d65d73024 Finish merging master into courses-vhoc 2015-12-02 10:10:50 -08:00
Nick Winter
da2d4507b5 Merge branch 'master' into production 2015-12-01 17:48:17 -08:00
Nick Winter
88ee363576 Add schoolName field to AuthModal 2015-12-01 17:44:03 -08:00
Nick Winter
8e1143b519 Add schoolName field to AuthModal 2015-12-01 17:32:02 -08:00
Nick Winter
2dc7800b37 Fix getting classrooms by CamelCase codes 2015-12-01 14:12:56 -08:00
Nick Winter
ae6eca583a Present 'Play Classroom Version' before playing a campaign level when appropriate 2015-12-01 11:24:16 -08:00
Nick Winter
c44dccd59b Merge branch 'master' into production 2015-12-01 06:05:50 -08:00
Nick Winter
ecfd982847 Note PayPal payment method. End limited-time year sale. 2015-11-30 10:50:34 -08:00
Scott Erickson
07ad8382cc Project sessions loaded in /courses 2015-11-29 16:17:55 -05:00
Nick Winter
e8665f7299 Merge branch 'master' into production 2015-11-29 12:33:16 -08:00
Nick Winter
95c703a7df Simulate games in background while playing levels if we think there's extra compute power 2015-11-29 12:30:19 -08:00
Scott Erickson
ea0c274a3c Fix /courses initial implementation 2015-11-29 15:26:17 -05:00
Nick Winter
c6bb6580ab Merge branch 'master' into production 2015-11-27 12:13:08 -08:00
Nick Winter
81af63a763 Support for calling reset account progress from scripts 2015-11-27 12:12:47 -08:00
Scott Erickson
d4540af780 Merge branch 'master' into courses-vhoc 2015-11-27 10:43:15 -05:00
Nick Winter
162a291925 Merge branch 'master' into production 2015-11-26 06:55:10 -08:00
Nick Winter
7a317370b5 Add a couple scripts for resetting user progress and migrating course sessions to hero levels 2015-11-26 06:54:23 -08:00
Matt Lott
c385aaa414 Merge branch 'master' into courses-vhoc 2015-11-25 16:11:36 -08:00
Nick Winter
7b88eb772a Merge branch 'master' into production 2015-11-24 13:54:14 -08:00
Nick Winter
67f14c7928 Try putting AI players in league ladders 2015-11-24 13:18:38 -08:00
Matt Lott
d7a66722b9 Update teacher surveys
Removing trial subscriptions
Updating trial page copy
Adding special HoC trial
Introducing a new course prepaid property endDate, which won’t be
returned or redeemed after the date.
2015-11-24 10:32:19 -08:00
Nick Winter
747856bd4c Merge branch 'master' into production 2015-11-24 08:56:36 -08:00
Nick Winter
ec7f17a149 Show level indexes in courses 2015-11-24 08:56:28 -08:00
Nick Winter
ebc081d105 Only fetch hero campaigns for overworld route 2015-11-23 12:38:51 -08:00
Nick Winter
3b1f21eff5 Merge branch 'master' into production 2015-11-22 08:02:51 -08:00
Nick Winter
e0011ee5d0 Classroom invite codes are now real words like BigFrogFarm 2015-11-22 07:47:28 -08:00
Scott Erickson
a98d0b1b2a Partial work on /courses view when signed in 2015-11-22 00:08:46 -08:00
Nick Winter
2dfaa1b7f3 Fix #3193: show completed levels again in campaign selector 2015-11-21 15:12:12 -08:00
Scott Erickson
27b21d0c4e Add classroom code handling to StudentSignUpModal 2015-11-20 18:02:02 -08:00
Matt Lott
0140361555 Merge branch 'master' into production 2015-11-20 13:19:07 -08:00
Scott Erickson
66b1e1b61d Fix /db/prepaid/<id>/redeemers when the creator is one of the redeemed, and prepaid tests in general 2015-11-20 13:17:33 -08:00
Matt Lott
f32316a7f7 Merge branch 'master' into production 2015-11-19 16:07:50 -08:00
Matt Lott
db5f0171c7 Make trial request created property editable 2015-11-19 16:07:02 -08:00
Matt Lott
2efc93a93f Merge branch 'master' into production 2015-11-19 15:23:55 -08:00
Matt Lott
804c62e13b Add created field to trial requests
Necessary for importing external trial requests.
2015-11-19 15:20:42 -08:00
Nick Winter
c867b1f5b4 Merge branch 'master' into production 2015-11-19 14:52:04 -08:00
Nick Winter
ef7618497f Fix #3184: get more of our campaign overworld properties we need 2015-11-19 13:20:42 -08:00
Nick Winter
04c6b27bed Merge branch 'master' into production 2015-11-19 10:41:37 -08:00
Nick Winter
c8ceca4d3d Add user.courseInstances, use it for course ladders 2015-11-19 10:41:31 -08:00
Scott Erickson
7a6c42b89f Set up course-ladder level handling
* LadderView displays course info, different style for course-ladder levels
* LadderView hides simulate tab for course-ladder levels
* HeroVictoryModal links to LadderView for course-ladder levels
* CourseDetails page links to LadderView for course-ladder levels
* Enable course instances for league simulation
2015-11-18 14:02:45 -08:00
Rob
c761e8de3b Merge branch 'master' into production 2015-11-17 16:24:33 -08:00
Matt Lott
4abace927a Add getPrepaidCodes API null check
https://app.asana.com/0/53713686567836/63657760462910
2015-11-17 16:21:08 -08:00
Scott Erickson
6a54c7cf54 Add classroom name, description, and language editing, and classroom language infrastructure 2015-11-17 16:10:23 -08:00
Nick Winter
08c7ad71a5 Merge branch 'master' of https://github.com/codecombat/codecombat 2015-11-17 15:26:51 -08:00
Nick Winter
f96a0a018c Track ladderAchievementDifficulty in multiplayer human level sessions 2015-11-17 15:23:35 -08:00
Rob
7a377350e8 Tabs -> Spaces 2015-11-17 15:19:17 -08:00
Rob
32861b025a Support sending performance information to stats. 2015-11-17 14:57:12 -08:00
Rob
7a86f754df Add flavor to overworld. 2015-11-17 11:27:08 -08:00
Rob
7f3426cc09 adjacentCampaigns should be an object not an array. 2015-11-17 11:22:55 -08:00
Rob
991fead0f6 Create specific campaign view for campaign selection screen. 2015-11-17 11:15:56 -08:00
Nick Winter
d65fd3d954 Merge branch 'master' into production 2015-11-15 08:23:23 -08:00
Nick Winter
8838095a0c Add a (very high) limit to the UserCodeProblem aggregation 2015-11-14 17:07:55 -08:00
Nick Winter
82da5b50bc Remove one unneeded LevelSession index (there are likely more) 2015-11-14 17:00:54 -08:00
Nick Winter
34819f2d04 Add index for /db/level.session/-/recent 2015-11-14 16:47:55 -08:00
Nick Winter
9624885fe2 Aggregating UserCodeProblems by level with an index instead of aggregating all ever 2015-11-14 16:34:35 -08:00
Nick Winter
b31e5fc93a Fix user.code.problem routes to use . instead of _ 2015-11-14 16:32:21 -08:00
Matt Lott
ea3d241903 Merge branch 'master' into production 2015-11-13 13:29:19 -08:00
Rob
6ecd54baa5 Use grep to find other mismapped routes. 2015-11-13 15:13:47 -05:00
Matt Lott
2fd8334398 Merge branch 'master' into production 2015-11-13 12:01:43 -08:00
Rob
24f352fb72 Fix route mappings for trail requests. 2015-11-13 14:57:15 -05:00
Matt Lott
5ad9edb3d5 Merge branch 'master' into production 2015-11-13 11:24:12 -08:00
Rob
631cc7766d Fix analytics mapping. 2015-11-13 14:11:07 -05:00
Matt Lott
c953fd32d8 Merge branch 'master' into production 2015-11-13 10:31:40 -08:00
Matt Lott
9189adcff0 Update teacher surveys
Gives 2 course headcount too.
2015-11-12 16:36:31 -08:00
Nick Winter
9ab2ccd905 Merge branch 'master' into production 2015-11-12 15:36:26 -08:00
Nick Winter
9e61928080 Add reset progress feature in account settings 2015-11-12 15:27:28 -08:00
Rob
62cd00e328 Merge branch 'handler-restructure' 2015-11-12 17:34:03 -05:00
Matt Lott
e6e0617945 Tracking property for admin added course headcount 2015-11-12 12:16:40 -08:00
Rob
836a01d1a8 Pull out schema fetching, as some times we fetch schemas when we don't actually have a handler for the type. 2015-11-12 15:01:33 -05:00
Rob
234d1b5950 Bind express /db roots one at a time.
Don't forget about the module root!

Route maps better.
2015-11-12 14:43:50 -05:00
Nick Winter
a262dc781d Merge branch 'master' into production 2015-11-12 11:01:10 -08:00
Nick Winter
910dd8e6b6 Use course access control for shared course hero levels 2015-11-12 11:00:54 -08:00
Nick Winter
44fb30b81e Merge branch 'master' into production 2015-11-12 10:25:51 -08:00
Nick Winter
fe05e66458 Give Campaigns types so that course campaigns can share hero levels 2015-11-12 10:25:25 -08:00
Nick Winter
29892a9619 Add user country to contact messages
https://app.asana.com/0/54275583589675/64698696631078/f
2015-11-11 15:43:25 -08:00