diff --git a/conservancy/settings.py b/conservancy/settings.py index b8e847adb9cb815cd1745abd639e93d023e7806d..2e355a2357336673e90497a594fb40f586f412ab 100644 --- a/conservancy/settings.py +++ b/conservancy/settings.py @@ -149,3 +149,8 @@ MIDDLEWARE = [ 'conservancy.middleware.ForceCanonicalHostnameMiddleware', # 'django.middleware.doc.XViewMiddleware', ] + +USETHESOURCE = { + 'SENDER': 'compliance@sfconservancy.org', + 'LIST_RECIPIENT': 'nutbush@lists.sfconservancy.org', +} diff --git a/conservancy/usethesource/emails.py b/conservancy/usethesource/emails.py index 082e10dbb405112b4bfa796d0dba07c2146f842e..4620a8f2bb3b69e625e64e8ba7ad7200a479548f 100644 --- a/conservancy/usethesource/emails.py +++ b/conservancy/usethesource/emails.py @@ -1,8 +1,9 @@ +from django.conf import settings from django.core.mail import EmailMessage from django.shortcuts import reverse -SENDER = 'compliance@sfconservancy.org' -LIST_RECIPIENT = 'nutbush@lists.sfconservancy.org' +SENDER = settings.USETHESOURCE['SENDER'] +LIST_RECIPIENT = settings.USETHESOURCE['LIST_RECIPIENT'] def make_candidate_email(candidate, user): @@ -21,23 +22,32 @@ Released: {candidate.release_date} {candidate.description} -To download this candidate's source and binary image, visit: +To view this candidate and download the source and binary image, visit: https://sfconservancy.org{reverse('usethesource:candidate', kwargs={'slug': candidate.slug})} -- {signature} -''' +(Via http//sfconservancy.org{reverse('usethesource:landing')})''' headers = {'Message-ID': candidate.email_message_id} return EmailMessage(subject, body, sender, to, headers=headers) def make_comment_email(comment): """Email when a comment is added to a candidate.""" - subject = f'Re: {comment.candidate.name}' + candidate = comment.candidate + subject = f'Re: {candidate.name}' signature = comment.user.get_full_name() or comment.user.username sender = f'{signature} <{SENDER}>' to = [LIST_RECIPIENT] - body = f'{comment.message}\n\n--\n{signature}' + body = f'''\ +{comment.message} + +To view this candidate and download the source and binary image, visit: +https://sfconservancy.org{reverse('usethesource:candidate', kwargs={'slug': candidate.slug})} + +-- +{signature} +(Via http//sfconservancy.org{reverse('usethesource:landing')})''' headers = {'Message-ID': comment.email_message_id} if in_reply_to := comment.in_reply_to(): # From my testing, both "In-Reply-To" and "References" headers trigger