Skip to content
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

double quote name when part of the email address #3257

Merged
merged 6 commits into from
Apr 13, 2021

Conversation

hwatheod
Copy link
Contributor

@hwatheod hwatheod commented Apr 13, 2021

This fixes #3230 by ensuring that names with special characters like commas and periods are processed correctly. The ESPUser.email_sendto_address now encloses the name in double quotes, and escapes existing double quotes with a backslash.

Also, change all the places where we manually build email recipients to use the ESPUser.email_sendto_address function instead.

NOTE TO REVIEWERS: Please double check that my changes from the old code to the ESPUser.email_sendto_address function are correct. Particularly note that the order of parameters for ESPUser.email_sendto_address is email first then name, whereas the original code was in the opposite order.

These changes will probably be easier to review if you view the diff in "Unified" mode.

This ensures that names with special characters
like commas and periods are processed correctly.
Also, change all the places where we manually
build email recipients to use
ESPUser.email_sendto_address
@lgtm-com

This comment has been minimized.

Copy link
Member

@willgearty willgearty left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I double checked all of the changes and it all checks out, including the order of the arguments. Therefore, I'm approving this, but I'll also add that we could probably use the get_email_sendto_address() method to clean up the code in several places where we're working with an actual ESPUser object (we'll need to keep using the static method where we are using the director_email or something similar). It's up to you @hwatheod.

@hwatheod
Copy link
Contributor Author

@willgearty Good call on using get_email_sendto_address(). Made those changes. Can you verify again?

Copy link
Member

@willgearty willgearty left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Found a few stragglers

esp/esp/dbmail/receivers/classlist.py Outdated Show resolved Hide resolved
esp/esp/dbmail/receivers/classlist.py Outdated Show resolved Hide resolved
esp/esp/dbmail/receivers/sectionlist.py Outdated Show resolved Hide resolved
esp/esp/dbmail/receivers/sectionlist.py Outdated Show resolved Hide resolved
esp/esp/program/modules/handlers/teacherclassregmodule.py Outdated Show resolved Hide resolved
esp/esp/program/modules/handlers/teachereventsmodule.py Outdated Show resolved Hide resolved
@lgtm-com

This comment has been minimized.

@lgtm-com
Copy link

lgtm-com bot commented Apr 13, 2021

This pull request fixes 1 alert when merging 6a71133 into 128e805 - view on LGTM.com

fixed alerts:

  • 1 for Unused import

Copy link
Member

@willgearty willgearty left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me, thanks @hwatheod!

@willgearty willgearty merged commit d111eec into main Apr 13, 2021
@willgearty willgearty deleted the double-quote-name-in-email-address branch April 13, 2021 19:03
@learning-unlimited learning-unlimited deleted a comment from lgtm-com bot Apr 14, 2021
willgearty added a commit that referenced this pull request Apr 16, 2021
willgearty added a commit that referenced this pull request May 27, 2021
* Initial docs for stable release 13

* Docs for #3116, #3117, and #3118

* Added docs about django upgrade

* Docs for #3128

* Docs for #3129, #3133, #3134, and #3137

* Docs for #3156 and #3153

* Docs for #3174, #3163, and #3184

* Docs for #3139, #3140, and #3141

* Docs for #3143, #3150, #3154, #3160, #3162, and #3168

* Docs for #3171, #3185, #3186, and #3188

* Docs for #3131 and #3189

* Docs for #3149 and #3190

* Docs for #3193, #3194, #3195, #196, and #3197

* Clarification

* Docs for #3192, #3201, #3209, and #2248

* Docs for #3204, #3212, #3214, #3205, 9fd073c, and #3226

* Docs for #3232, de5861c, #3231, #3233, #3234, #3237, #3238, and #3239

* Fix indent

* Docs for #3227 and #3235

* Add missing word

* spelling

* Docs for e57581f, #3255, #3253, #3257, and #3249

* Docs for #3254, #3260, and #3262

* Docs for #3263, #3272, #3240, #3264, #3266, and #3270

* clarifications

* Docs for #3283 and #3252

* Docs for #3288 and misc commits

* Docs for #3292, #3311, #3286, #3289, and #3279

* Docs for a377f0d; move note

* Docs for #3315, #3290, and #3322

* Docs for #3273 and #3317

* Final edits
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Weird characters in names cause email failure
2 participants