email_tools: passe par mail/mail.py
Pour le debug, et pour passer par un seul endroit.
This commit is contained in:
parent
7169e50fd2
commit
113684d0f8
2 changed files with 26 additions and 28 deletions
|
@ -18,7 +18,6 @@ from locale_util import setlocale
|
|||
|
||||
if '/usr/scripts' not in sys.path:
|
||||
sys.path.append('/usr/scripts')
|
||||
from gestion.email_tools import format_sender
|
||||
from gestion import secrets_new as secrets
|
||||
|
||||
default_language = 'fr'
|
||||
|
@ -157,6 +156,26 @@ def validation_url(view_name, data='', debug=False):
|
|||
|
||||
return ROOT + req.text.encode('utf-8')
|
||||
|
||||
def format_sender(sender, header_charset='utf-8'):
|
||||
"""
|
||||
Check and format sender for header.
|
||||
"""
|
||||
from email.Header import Header
|
||||
from email.Utils import parseaddr, formataddr
|
||||
|
||||
# Split real name (which is optional) and email address parts
|
||||
sender_name, sender_addr = parseaddr(sender)
|
||||
|
||||
# We must always pass Unicode strings to Header, otherwise it will
|
||||
# use RFC 2047 encoding even on plain ASCII strings.
|
||||
sender_name = str(Header(unicode(sender_name), header_charset))
|
||||
|
||||
# Make sure email addresses do not contain non-ASCII characters
|
||||
sender_addr = sender_addr.encode('ascii')
|
||||
|
||||
return formataddr((sender_name, sender_addr))
|
||||
|
||||
|
||||
class ServerConnection(object):
|
||||
"""Connexion au serveur smtp"""
|
||||
_conn = None
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue