-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Change password from settings #3245
Comments
Hi @Bonapara, I'm interested in working on this. Please have a review of the below engineering notes in order to confirm the development pieces, just to be on same page.
For sending HTML mail, are we using any templating engine? If not, I would like to propose the use of any template like nodemailer handlebars or MJML template or any other so that we are consistent throughout. |
Thanks a lot @i-am-chitti - that's a lot of work something labeled as a "good first issue" 😅
cc @charlesBochet fyi |
Thanks @FelixMalfait. I've started working on this. Will raise PR once ready. |
@i-am-chitti thanks! FYI this was a required step to publish our Zapier app in their store so your work will also unlock this :) |
Hello @i-am-chitti, have you had the chance to work on email templating yet? I'll be needing email templates for a different issue soon. If you haven't started on this, I'm planning to open a pull request to implement email templating, making it available for both of us to use. |
No, I haven't yet started on email templating. I planned it at last as it's
a styling part. Currently only testing with bare minimum. You can start on
this. Once I develop the requirements, will integrate templates which you
would develop.
…On Tue, 9 Jan 2024, 15:25 martmull, ***@***.***> wrote:
Hello @i-am-chitti <https://github.com/i-am-chitti>, have you had the
chance to work on email templating yet? I'll be needing email templates for
a different issue soon. If you haven't started on this, I'm planning to
open a pull request to implement email templating, making it available for
both of us to use.
—
Reply to this email directly, view it on GitHub
<#3245 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AOK2TGWRJZMOXBQSZJWADTTYNUHZVAVCNFSM6AAAAABBOB3I22VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQOBSG42TANBRGM>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Perfect |
Hey @FelixMalfait, Backend dev has completed. Now setting up frontend. I've hit one blocker though - I've added a mutation file under
Now, executing command to generate the Graphql data with So, mutation resolver has been added. Any idea why it may not be present in generated Graphql on frontend? |
Sorry I'm not sure. You seem to be doing it properly 🤔 |
Yep, frontend application works at localhost:3001 and opens correctly. I debugged it, actually, the GQL query was incorrect instead of |
@martmull FYI |
Hello @i-am-chitti, FYI email templating is available It is not perfect at all and we will move that templating in a dedicated package soon in the future, but you can use the current templating for your change password email Feel free to ping me if you have any question, and thanks again for your contribution |
…t column on user entity
Thanks @martmull. How do I get the mails? Currently, they are logged in terminal but would want to see the actual email. Do we have any mailhog setup where these emails are being intercepted and can be viewed? |
Hey @i-am-chitti, you need to setup some env variables listed here: https://docs.twenty.com/start/self-hosting/environment-variables#email |
@FelixMalfait @Bonapara How do I get to show the proper error message on frontend? For example, one request gives this error - But on frontend, on extracting the
|
@FelixMalfait @charlesBochet, I've opened a PR here - #3538 @martmull LMK if there is any change in email module. Will update this PR too. |
Thank you @i-am-chitti, @martmull, @lucasbordeau or @thaisguigon should take a look at your PR today :) |
* GH-3245 add passwordResetToken and passwordResetTokenExpiresAt column on user entity * Add password reset token expiry delay env variable * Add generatePasswordResetToken mutation resolver * Update .env.sample file on server * Add password reset token and expiry migration script * Add validate password reset token query and a dummy password update (WIP) resolver * Fix bug in password reset token generate * add update password mutation * Update name and add email password reset link * Add change password UI on settings page * Add reset password route on frontend * Add reset password form UI * sign in user on password reset * format code * make PASSWORD_RESET_TOKEN_EXPIRES_IN optional * add email template for password reset * Improve error message * Rename methods and DTO to improve naming * fix formatting of backend code * Update change password component * Update password reset via token component * update graphql files * spelling fix * Make password-reset route authless on frontend * show token generation wait time * remove constant from .env.example * Add PASSWORD_RESET_TOKEN_EXPIRES_IN in docs * refactor emails module in reset password * update Graphql generated file * update email template of password reset * add space between date and text * update method name * fix lint issues * remove unused code, fix indentation, and email link color * update test file for auth and token service * Fix ci: build twenty-emails when running tests --------- Co-authored-by: martmull <martmull@hotmail.fr>
Expected behavior
1. Go to profile settings
In the
Profile
settings, we would like to add a new section that allows users to reset their password:https://www.figma.com/file/xt8O9mFeLl46C5InWwoMrN/Twenty?type=design&node-id=13273-96299&mode=design&t=tY8CUvxiUNT2VRnR-11
2. Receive an email
Selecting
Change password
will trigger an email to the user with a reset link:Email body style & content:
https://www.figma.com/file/xt8O9mFeLl46C5InWwoMrN/Twenty?type=design&node-id=16594-92960&mode=design&t=tY8CUvxiUNT2VRnR-11
3. Change password
When the user clicks on the email link, they should be redirected to a page at
app.twenty.com/reset-password
. This page will prompt them to enter a new password:https://www.figma.com/file/xt8O9mFeLl46C5InWwoMrN/Twenty?type=design&node-id=19100-70339&mode=design&t=tY8CUvxiUNT2VRnR-11
The text was updated successfully, but these errors were encountered: