Fix typo
Fix race condition with loading next level
Return an empty object for next level instead of an error;
Supermodel has a race condition when some of the models fail to load,
when we override an error response as "success".
Fix next level spec
Remove comment per Scott's request
Can't count on toObject getting called, such as on the '/db/classroom/:handle/levels', which
gets the courses property directly. Use middleware instead.
* Updates spade.js vendor file, adds a sublime-project for developers to use
* Moves server logic away from handlers
* Moves session update logic to middleware, sets up server schema to autorender IDs as ObjectIDs
* Modernizes the supermodel loading scheme and switches from constructor to initalize
* Tweak wording, options
* Instead of storing changes in local storage, warn when users may lose changes by navigating away
* Fix CreateTeacherAccountView so that if you connect to an existing account, the redirect is triggered
* Fix users.coffee weird race condition
Partially fix ActivateLicensesModal.spec
[IN PROGRESS] Don't display deleted users
Move userID to classroom.deletedMembers on user delete (not retroactive)
Fix PDF links for course guides, remove old PDFs from repo
Remove deprecated SalesView
Remove underline for not-yet-linked student names
Only show class select when there's more than one
Ignore case when sorting student names
Use student.broadName instead of name for display and sorting
Fix initial load not showing progress after joining a course (hacky)
Fix text entry for enrollment number input
Fix enrollment statistics
Fix enrollment stats completely (and add back in per-class unenrolled count)
Add deletedMembers to classroom schema
More fixes to enrollment stats (don't count nonmember prepaids)
Don't use 0 as implicit false for openSpots
Update suggested number of credit to buy automatically
Fix classroom edit form ignoring cleared values
Add alert text when more users selected than enrollments available
Alert user when trying to assign course to unenrolled students
Alert user when assigning course to nobody
Add some tests for TeacherClassView bulk assign alerts
Fix TeacherClassView tests failing without demos
Use model/collection.fakeRequests :D
Remove unused comment
Fix handling of improperly sorted deleted users on clientside
Add test for moving deleted users to deletedMembers
Add script for moving all deleted classroom members to classroom.deletedMembers
Completely rewrite tallying up enrollment statistics
Fix some tests to not be dependent on logged-in user
Address PR comments
Fix default number of enrollments to buy
Fix i18n for not enough enrollments
Use custom error message for classroom name length
* Take `/server/routes/auth` and move most of the logic to `/server/middleware/auth`, refactoring to use generators.
* List all `/auth/*` endpoints in `/server/routes/index.coffee`.
* Fill in testing gaps for `/auth/unsubscribe`.
* Add debug log when `sendwithus` is not operational, so it 'works' in development and testing.
* Use passport properly!
* Track Facebook and G+ logins in user activity as well as passport logins.
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
* 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
* 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
* 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