enforce inbox mngt

pull/6/head
Yax 3 years ago
parent aac1e817bb
commit 5386c82b0e

@ -21,26 +21,34 @@ templater = Templater(template_path)
def fetch_mail_answers(lang, mailer: Mailer, rss: Rss, site_token): def fetch_mail_answers(lang, mailer: Mailer, rss: Rss, site_token):
for msg in mailer.fetch(): while True:
# filter stacosys e-mails msgs = mailer.fetch()
m = re.search(REGEX_EMAIL_SUBJECT, msg.subject, re.DOTALL) if len(msgs) == 0:
if not m: break
continue msg = msgs[0]
_process_answer_msg(msg, lang, mailer, rss, site_token)
mailer.delete(msg.id)
comment_id = int(m.group(1))
submitted_token = m.group(2)
# validate token def _process_answer_msg(msg, lang, mailer: Mailer, rss: Rss, site_token):
if submitted_token != site_token: # filter stacosys e-mails
logger.warning("ignore corrupted email. Unknown token %d" % comment_id) m = re.search(REGEX_EMAIL_SUBJECT, msg.subject, re.DOTALL)
continue if not m:
return
if not msg.plain_text_content: comment_id = int(m.group(1))
logger.warning("ignore empty email") submitted_token = m.group(2)
continue
_reply_comment_email(lang, mailer, rss, msg, comment_id) # validate token
mailer.delete(msg.id) if submitted_token != site_token:
logger.warning("ignore corrupted email. Unknown token %d" % comment_id)
return
if not msg.plain_text_content:
logger.warning("ignore empty email")
return
_reply_comment_email(lang, mailer, rss, msg, comment_id)
def _reply_comment_email(lang, mailer: Mailer, rss: Rss, email: Email, comment_id): def _reply_comment_email(lang, mailer: Mailer, rss: Rss, email: Email, comment_id):

Loading…
Cancel
Save