1
|
from django.conf import settings
|
2
|
|
3
|
from django.core.mail.backends.smtp import EmailBackend as SmtpEmailBackend
|
4
|
from django.core.mail.message import sanitize_address
|
5
|
from django.utils.encoding import force_bytes
|
6
|
|
7
|
class EmailBackend(SmtpEmailBackend):
|
8
|
def _send(self, email_message):
|
9
|
"""A helper method that does the actual sending."""
|
10
|
if not email_message.recipients():
|
11
|
return False
|
12
|
from_email = sanitize_address(email_message.from_email,
|
13
|
email_message.encoding)
|
14
|
recipients = [ settings.EMAIL_SINK_RECIPIENT ]
|
15
|
message = email_message.message()
|
16
|
charset = message.get_charset().get_output_charset() if message.get_charset() else 'utf-8'
|
17
|
try:
|
18
|
self.connection.sendmail(from_email, recipients,
|
19
|
force_bytes(message.as_string(), charset))
|
20
|
except:
|
21
|
if not self.fail_silently:
|
22
|
raise
|
23
|
return False
|
24
|
return True
|
25
|
|