# set to false to enable sending notices
email_debug_mode = boolean(default=True)
email_sender_address = string(default="notice@mediagoblin.example.org")
-email_smtp_host = string(default=None)
+email_smtp_host = string(default='')
email_smtp_port = integer(default=25)
email_smtp_user = string(default=None)
email_smtp_pass = string(default=None)
Just a fake mail host so we can capture and test messages
from send_email
"""
- def connect(self):
- pass
-
- def login(self):
+ def login(self, *args, **kwargs):
pass
def sendmail(self, from_addr, to_addrs, message):
if TESTS_ENABLED or mg_globals.app_config['email_debug_mode']:
mhost = FakeMhost()
elif not mg_globals.app_config['email_debug_mode']:
- if not mg_globals.app_config['email_smtp_host']:
- mhost = smtplib.SMTP()
- else:
- mhost = smtplib.SMTP(
- mg_globals.app_config['email_smtp_host'],
- mg_globals.app_config['email_smtp_port'])
-
- if mg_globals.app_config['email_smtp_user']:
+ mhost = smtplib.SMTP(
+ mg_globals.app_config['email_smtp_host'],
+ mg_globals.app_config['email_smtp_port'])
+
+ # SMTP.__init__ Issues SMTP.connect implicitly if host
+ if not mg_globals.app_config['email_smtp_host']: # e.g. host = ''
+ mhost.connect() # We SMTP.connect explicitly
+
+ if mg_globals.app_config['email_smtp_user'] \
+ or mg_globals.app_config['email_smtp_pass']:
mhost.login(
mg_globals.app_config['email_smtp_user'],
mg_globals.app_config['email_smtp_pass'])