aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xblogthon.cgi23
-rw-r--r--configuration7
2 files changed, 29 insertions, 1 deletions
diff --git a/blogthon.cgi b/blogthon.cgi
index 8fa1c7d..bbb0131 100755
--- a/blogthon.cgi
+++ b/blogthon.cgi
@@ -10,7 +10,7 @@
# Adrian Vondendriesch <disco-stu@disco-stu.de>
# Description: A simple blogging software
-import cgi, os, time, glob, re, md5, sys, random
+import cgi, os, time, glob, re, md5, sys, random, smtplib
import ConfigParser
def generate_uuid(string):
@@ -120,6 +120,21 @@ except: errorpage("comments")
try: newest_first = configuration.get('look', 'newest_first')
except: errorpage("newest_first")
+try: new_comment_mail = configuration.get('smtp', 'new_comment_mail')
+except: errorpage("new_comment_mail")
+
+try: mail_to = configuration.get('smtp', 'mail_to')
+except: errorpage("mail_to")
+
+try: smtp_host = configuration.get('smtp', 'smtp_host')
+except: errorpage("smtp_host")
+
+try: smtp_user = configuration.get('smtp', 'smtp_user')
+except: errorpage("smtp_user")
+
+try: smtp_pass = configuration.get('smtp', 'smtp_pass')
+except: errorpage("smtp_pass")
+
# Read POST Variables
action = cgi.FieldStorage()
month_display = action.getvalue('m')
@@ -181,6 +196,12 @@ if cname and ctext and ctitle:
for line in ctext:
content.write("." + line + "\n")
content.close()
+ # Send mail?
+ if new_comment_mail:
+ msg = 'From: Blogthon\nSubject: New comment on ' + blog_title + '\n\nSomeone wrote a comment to this entry: ' + blog_url + '?p=' + ctitle
+ smtp = smtplib.SMTP(smtp_host)
+ smtp.sendmail(blog_title, mail_to, msg)
+ smtp.quit()
# Read entries and store their title and timestamp
entries = []
diff --git a/configuration b/configuration
index 9aa2c35..481a79e 100644
--- a/configuration
+++ b/configuration
@@ -16,3 +16,10 @@ linklist: True
permalinks: True
comments: True
newest_first: True
+
+[smtp]
+new_comment_mail= False
+mail_to= please@change.me!!!
+smtp_host= localhost
+smtp_user= changeme
+smtp_pass= changeme