aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoar Wandborg <git@wandborg.com>2011-08-07 01:22:31 +0200
committerJoar Wandborg <git@wandborg.com>2011-08-07 01:22:31 +0200
commit47364ead6b281b820422901ddba2d06e073395bd (patch)
tree22ce908fa20e9ea6f8dbc677d678b4ed885e3659
parentf40d79714a426a1ea4fe7742ccab836440336eca (diff)
downloadmediagoblin-47364ead6b281b820422901ddba2d06e073395bd.tar.lz
mediagoblin-47364ead6b281b820422901ddba2d06e073395bd.tar.xz
mediagoblin-47364ead6b281b820422901ddba2d06e073395bd.zip
Added SMTP configuration options
-rw-r--r--mediagoblin/config_spec.ini4
-rw-r--r--mediagoblin/util.py18
2 files changed, 18 insertions, 4 deletions
diff --git a/mediagoblin/config_spec.ini b/mediagoblin/config_spec.ini
index bbc1f7d6..bc6f00d9 100644
--- a/mediagoblin/config_spec.ini
+++ b/mediagoblin/config_spec.ini
@@ -20,6 +20,10 @@ direct_remote_path = string(default="/mgoblin_static/")
# 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_port = integer(default=25)
+email_smtp_user = string(default=None)
+email_smtp_pass = string(default=None)
# Set to false to disable registrations
allow_registration = boolean(default=True)
diff --git a/mediagoblin/util.py b/mediagoblin/util.py
index 5880f856..6dced54e 100644
--- a/mediagoblin/util.py
+++ b/mediagoblin/util.py
@@ -240,6 +240,9 @@ class FakeMhost(object):
def connect(self):
pass
+ def login(self):
+ pass
+
def sendmail(self, from_addr, to_addrs, message):
EMAIL_TEST_MBOX_INBOX.append(
{'from': from_addr,
@@ -267,13 +270,20 @@ def send_email(from_addr, to_addrs, subject, message_body):
- subject: subject of the email
- message_body: email body text
"""
- # TODO: make a mock mhost if testing is enabled
if TESTS_ENABLED or mg_globals.app_config['email_debug_mode']:
mhost = FakeMhost()
elif not mg_globals.app_config['email_debug_mode']:
- mhost = smtplib.SMTP()
-
- mhost.connect()
+ 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.login(
+ mg_globals.app_config['email_smtp_user'],
+ mg_globals.app_config['email_smtp_pass'])
message = MIMEText(message_body.encode('utf-8'), 'plain', 'utf-8')
message['Subject'] = subject