mirror of
https://github.com/django/django.git
synced 2025-10-24 06:06:09 +00:00
Fixed #12666 -- Added EMAIL_USE_LOCALTIME setting.
When EMAIL_USE_LOCALTIME=True, send emails with a Date header in the local time zone.
This commit is contained in:
committed by
Tim Graham
parent
b9c04801d4
commit
c3495bb984
@@ -194,6 +194,9 @@ EMAIL_HOST = 'localhost'
|
||||
# Port for sending email.
|
||||
EMAIL_PORT = 25
|
||||
|
||||
# Whether to send SMTP 'Date' header in the local time zone or in UTC.
|
||||
EMAIL_USE_LOCALTIME = False
|
||||
|
||||
# Optional SMTP authentication information for EMAIL_HOST.
|
||||
EMAIL_HOST_USER = ''
|
||||
EMAIL_HOST_PASSWORD = ''
|
||||
|
||||
@@ -316,7 +316,11 @@ class EmailMessage(object):
|
||||
# accommodate that when doing comparisons.
|
||||
header_names = [key.lower() for key in self.extra_headers]
|
||||
if 'date' not in header_names:
|
||||
msg['Date'] = formatdate()
|
||||
# formatdate() uses stdlib methods to format the date, which use
|
||||
# the stdlib/OS concept of a timezone, however, Django sets the
|
||||
# TZ environment variable based on the TIME_ZONE setting which
|
||||
# will get picked up by formatdate().
|
||||
msg['Date'] = formatdate(localtime=settings.EMAIL_USE_LOCALTIME)
|
||||
if 'message-id' not in header_names:
|
||||
# Use cached DNS_NAME for performance
|
||||
msg['Message-ID'] = make_msgid(domain=DNS_NAME)
|
||||
|
||||
Reference in New Issue
Block a user