Commit graph

55 commits

Author SHA1 Message Date
Matt Lott
ed8e36f5cd Put student pages under /students
Closes #3909
2016-09-12 06:20:59 -07:00
Scott Erickson
f29f4cb82b Do not fetch sessions for course instances that do not have classrooms 2016-09-06 12:43:06 -07:00
Matt Lott
99a148a136 bug:Fix /courses using outdated level slugs
Closes #3901
2016-09-02 11:50:14 -07:00
Matt Lott
df69cb54a8 🐛/courses wd2 Start button goes to wrong level
We can’t cache course instance sessions by course because of web dev
primer levels and classroom versioning.
2016-08-31 17:04:43 -07:00
Matt Lott
527ba277ab Order /courses classrooms most recent first 2016-08-31 17:04:43 -07:00
Matt Lott
b647252956 Update /courses UI 2016-08-17 14:15:52 -07:00
phoenixeliot
21cd890bfa Use translated ClassCode error message 2016-07-07 16:03:07 -07:00
Scott Erickson
af9f7201d0 Finish new CreateAccountModal 2016-07-07 15:56:41 -07:00
phoenixeliot
5e6c9709f9 Display better error when invalid class code is entered 2016-07-07 15:32:11 -07:00
phoenixeliot
e841334c86 Fix join class modal (temporary hack) 2016-06-15 13:28:03 -07:00
phoenixeliot
749601c9d8 Don't cache classrooms (fetched by memberID) 2016-06-14 14:27:57 -07:00
Matt Lott
9dbcf27e11 Add classroom Mixpanel logging
Closes #3720
2016-06-09 10:46:26 -07:00
phoenixeliot
870ae9a8a1 Add hero selector for courses mode
Use selected hero in Course mode play

Show selected hero on Courses (in progress)

Add hero select modal

Use short names, only show warriors

Use box-shadow instead of borders

Add tests for HeroSelectModal

Refactor modal opening test

Address code review feedback
2016-06-03 13:40:41 -07:00
Matt Lott
d0d3d838ed Better page titles
Also ditching non-production constructor page titles
2016-05-27 09:40:46 -07:00
Scott Erickson
8dbc86ca04 Fix bugquest bugs
Hide TeachersContactModal after sending message

Fix GET /db/level/:handle/session, more extensively test

Fix EnrollmentView number of students input to stop losing focus on input

Fix EnrollmentsView syntax

Fix ActivateLicensesModal "Get Enrollments" button when already in the enrollments page

Update EnrollmentsView with new credit numbers when ActivateLicensesModal closes

Hide search box in TeacherClassView "Enrollment Status" tab

Tweak EnrollmentsView styling

Fix EnrollmentsView tests

Fix AnalyticsView

Make EnrollmentsView more explicitly handle undefined and empty array prepaid groups

Remove log

CoursesView handles JoinClassModal cancel

Re-enable EditStudentModal set password button when the form changes

Fix course instance tests, next level endpoint bug

Fix EditStudentModal tests
2016-05-24 14:10:56 -07:00
phoenixeliot
3d705e5d70 Fix bugquest bugs
Fix link to /teachers/classes (fixes bugquest#20)

Fix edit button color/icon (bugquest#23)

Fix bugquest#34

Fix password input width (bugquest#33)

Center new pasword text

Fix teacher password reset endpoint (bugquest#4)

Refactor+use NewHomeView logic for user page button (Fixes bugquest#2)

Refactor teacher-password-reset endpoint

This makes it much easier to prevent collisions with other logic when PUTing new User attributes.

Add regression test for converting to teacher account

Fix email verified links, require login (fix bugquest#16)

Fix me having stale emailVerified value (Fixes bugquest#40)

Don't show JoinClassModal to students

Add paragraph to JoinClassModal (fixes bugquest#14)

Update change-password label text (fixes bugquest#30)

Fix prompting for login on Account Settings page (bugquest #10)

Show validation errors for teacher password reset (bugquest#36)

Show yellow progress dot in My Classes if anyone has started (bugquest#55)

Remove confusing text (bugquest#100)
2016-05-24 14:10:17 -07:00
phoenixeliot
8496343a02 Improve student account recovery
This adds the ability to verify email addresses of a user, so we know they have access to the email address on their account.

Until a user has verified their email address, any teacher of a class they're in can reset their password for them via the Teacher Dashboard. When a user's email address is verified, a teacher may trigger a password recovery email to be sent to the student.

Verification links are valid forever, until the user changes the email address they have on file. They are created using a timestamp, with a sha256 of timestamp+salt+userID+email. Currently the hash value is rather long, could be shorter.

Squashed commit messages:

Add server endpoints for verifying email address

Add server endpoints for verifying email address (pt 2)

Add Server+Client endpoint for sending verification email

Add client view for verification links

Add Edit Student Modal for resetting passwords

Add specs for EditStudentModal

Tweak method name in EditStudentModal

Add edit student button to TeacherClassView

Fix up frontend for teacher password resetting

Add middleware for teacher password resetting

Improve button UX in EditStudentModal

Add JoinClassModal

Add welcome emails, use broad name

Use email without domain as fallback instead of full email

Fetch user on edit student modal open

Don't allow password reset if student email is verified

Set role to student on user signup with classCode

Tweak interface for joinClassModal

Add button to request verification email for yourself

Fix verify email template ID

Move text to en.coffee

Minor tweaks

Fix code review comments

Fix some tests, disable a broken one

Fix misc tests

Fix more tests

Refactor recovery email sending to auth

Fix overbroad sass

Add options to refactored recovery email function

Rename getByCode to fetchByCode

Fix error message

Fix up error handling in users middleware

Use .get instead of .toObject

Use findById

Fix more code review comments

Disable still-broken test
2016-05-24 14:07:28 -07:00
Scott Erickson
f6b3016d85 POST /db/classroom/-/members joins any free course instances, rather then CoursesView doing so 2016-05-16 16:47:08 -07:00
phoenixeliot
35d0352a92 Autofill class code from URL in signup modal 2016-05-11 14:53:05 -07:00
Scott Erickson
997fe1aafb CoursesView uses regular login and create account modals 2016-04-27 16:26:05 -07:00
Scott Erickson
675e3290ac Lock course content to classrooms 2016-04-27 09:58:04 -07:00
phoenixeliot
e2d08fa7cf Stuff
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
2016-04-19 12:32:20 -07:00
phoenixeliot
beb53d9f2f Various fixes and changes to teacher-accounts and teacher-dashboard 2016-04-04 15:42:29 -07:00
Scott Erickson
ebc98f988f Refactor CreateAccountModal out of AuthModal, add class code to signup 2016-03-10 10:52:11 -08:00
Scott Erickson
29350bf1de Make network error handling more generic 2016-01-27 10:41:56 -08:00
Matt Lott
0c34d06e70 🐛Remove join class refresh 2015-12-10 12:22:48 -08:00
Matt Lott
77a8347b5e Prevent double _cc classroom join 2015-12-04 16:47:52 -08:00
Matt Lott
44cd64e00e /courses analytics 2015-12-04 12:08:14 -08:00
Scott Erickson
d255802e38 Set up /courses for individuals without any course instances 2015-11-29 18:41:57 -05:00
Scott Erickson
11e9a40645 Finish hooking up ChangeCourseLanguageModal into /courses 2015-11-29 18:25:57 -05:00
Scott Erickson
8662fb057f Fix /courses when not joining 2015-11-29 18:20:38 -05:00
Scott Erickson
87c7bafd57 Add join-class functionality to /courses 2015-11-29 18:13:31 -05:00
Scott Erickson
405785bafe Add completion stats to /courses 2015-11-29 17:18:24 -05:00
Scott Erickson
07ad8382cc Project sessions loaded in /courses 2015-11-29 16:17:55 -05:00
Scott Erickson
47acfc93d0 Fix course buttons and level links in /courses 2015-11-29 15:26:17 -05:00
Scott Erickson
ea0c274a3c Fix /courses initial implementation 2015-11-29 15:26:17 -05:00
Scott Erickson
2adb3362ed Add ChangeCourseLanguageModal to CoursesView 2015-11-23 11:52:15 -06:00
Scott Erickson
ea4a98af86 Add rest of CoursesView, untested, unhooked to server
On a plane, so skipping my usual iterative testing.
Bugs are undoubtedly everywhere.
2015-11-23 08:46:08 -08:00
Scott Erickson
a98d0b1b2a Partial work on /courses view when signed in 2015-11-22 00:08:46 -08:00
Scott Erickson
5aff591a8b Set up courses view for anonymous users 2015-11-21 11:38:34 -08:00
Scott Erickson
66432990f4 Add framework for new courses pages 2015-11-03 16:41:06 -08:00
Scott Erickson
11d3bfc9c4 Make redeem coupon network errors on /courses happen within modal 2015-10-30 11:05:24 -07:00
Nick Winter
d776809e1c Update Hour of Code student flow and tracking, remove signup requirement 2015-10-13 08:12:07 -07:00
Matt Lott
708f78153b Route /hoc to courses
When in HoC mode:
Students have an option to play through as a single player, in addition
to entering a code to join an existing class.
Teachers get the normal course enrollment flow, without a sales blurb
on /courses.
2015-10-12 16:25:23 -07:00
Matt Lott
0cb30d9500 Prompt for login in /courses redeem code dialog 2015-10-09 09:32:46 -07:00
Matt Lott
1c1a5d4295 /courses student mode when _ppc present 2015-10-08 06:10:12 -07:00
Matt Lott
440bf9c6e0 /courses?_ppc=blah logged out message
Also trim /courses prepaid code input.
2015-10-07 14:56:10 -07:00
Matt Lott
7390f2d1e4 Separate URLs for /courses/students and /courses/teachers 2015-10-07 14:37:41 -07:00
Matt Lott
75b9cb50d9 Add /courses prepaid code query var
Update invite students link to go to /courses
2015-10-06 12:30:22 -07:00
Matt Lott
9c7345fed0 Redeem course prepaid code on /courses page
Completes #54270566052118
2015-10-06 11:20:57 -07:00