Commit graph

29 commits

Author SHA1 Message Date
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
93c7072d8d Refactor ConfirmModal for #3138 and #3488 2016-03-18 11:03:55 -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
6a48fbb3aa Add courses to progress-reset warning 2016-02-25 10:08:16 -08:00
Nick Winter
7fdd6d5180 Fix #3174: save button triggering on delete/reset account form fields 2015-11-19 15:37:37 -08:00
Nick Winter
9e61928080 Add reset progress feature in account settings 2015-11-12 15:27:28 -08:00
Nick Winter
f100d6dba6 Merge pull request #3118 from codecombat/soffes/ipad
[WIP] Changes for iPad app
2015-10-29 16:24:39 -07:00
Scott Erickson
680eb04285 Refactor AccountSettingsView to use view in template 2015-10-21 17:18:38 -07:00
Scott Erickson
cef4fc0794 Refactor AccountSettingsView to use new event callback naming guideline
See: https://github.com/codecombat/codecombat/wiki/Events,-subscriptions,-shortcuts#events
2015-10-21 14:02:04 -07:00
Sam Soffes
d2052980c4 Send sign out message directly 2015-10-16 15:02:33 -07:00
Lai Tuan
7c680e4efa Removed 'this' and 'tempThis' 2015-06-21 02:09:44 +09:00
Lai Tuan
39fc882303 Require user password for deleting accounts #2842 2015-06-20 23:12:26 +09:00
Matt Lott
86d167394e Remove Segment analytics dependency
Call Google Analytics, Errorception, and Inspectlet directly.
2015-02-27 16:07:41 -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
Aman Kumar
0df2dea469 Issue #2387: Accounts setting toggle all fix 2015-02-24 17:25:18 +05:30
laituan245
d325623699 Added ability to delete account 2015-02-20 08:19:30 +09:00
laituan245
9c754bbd96 Added a "god mode" button to the local dev environment #2164 2015-02-14 01:46:04 +09:00
h3yduck
3221f71527 Fix bug: cannot upload profile picture
In the code before, onInputChanged function was called manually, but the parameter was not passed. I think it's better to trigger the event, than calling the callback function of the event.
2015-02-05 17:56:51 +01:00
h3yduck
29f5307cfd Fix bug: can't upload profile photo
The onInputChanged callback is using the event parameter to get the target DOM element. On #L72 the callback function was called manually, but no parameter was passed. I pass in an object that has a target attribute, so it can get the DOM element.
2015-02-05 07:00:12 -08:00
Scott Erickson
0bbcdd5698 Made all of lib into a wad. Fixed AuthModal. 2014-11-29 08:54:18 -08:00
Scott Erickson
31214e854e Wabam. Refactored a bunch of stuff into 'core' folders so that it's clearer which files are being loaded first thing, and which are not. Also reworked a bunch of the anymatch things in config.coffee, cause there were better ways. 2014-11-28 17:49:41 -08:00
Scott Erickson
464f06c031 Turned off saving automatically when you toggle subscriptions in the AccountSettingsView, as it was triggering the PlayAccountModal to save and close. 2014-11-25 13:32:43 -08:00
Scott Erickson
8f55b9bc1b Refactored the AccountSettingsView to be both in the site and in the PlayAccountModal. 2014-11-25 12:43:17 -08:00
Scott Erickson
bb766e9610 Reworked the MainAccountView, AccountSettingsView, and MainUserView to try and simplify things a bit. 2014-11-25 10:39:53 -08:00
Scott Erickson
21e0889a86 All ace editors must die. I found that certain editor modes will leave a mess in memory, so when editors are destroyed, I also set their modes to '' which seems to take care of most of the issue. They still leave memory behind just a little bit, though. 2014-08-29 18:02:29 -07:00
Scott Erickson
1c3404d03e Refactored views. View file names now match view class names. Router lists routes explicitly rather than routing automagically. Hacking my way to renaming problem, spell. 2014-07-23 07:02:45 -07:00
Renamed from app/views/account/settings_view.coffee (Browse further)