mirror of
https://gitlab.ub.uni-bielefeld.de/sfb1288inf/nopaque.git
synced 2024-12-24 18:34:18 +00:00
Add e-mail code.
This commit is contained in:
parent
2e1aa8cf31
commit
bd49bb4dae
20
app/email.py
Normal file
20
app/email.py
Normal file
@ -0,0 +1,20 @@
|
||||
from threading import Thread
|
||||
from flask import current_app, render_template
|
||||
from flask_mail import Message
|
||||
from . import mail
|
||||
|
||||
|
||||
def send_async_email(app, msg):
|
||||
with app.app_context():
|
||||
mail.send(msg)
|
||||
|
||||
|
||||
def send_email(to, subject, template, **kwargs):
|
||||
app = current_app._get_current_object()
|
||||
msg = Message(app.config['OPAQUE_MAIL_SUBJECT_PREFIX'] + ' ' + subject,
|
||||
sender=app.config['OPAQUE_MAIL_SENDER'], recipients=[to])
|
||||
msg.body = render_template(template + '.txt', **kwargs)
|
||||
msg.html = render_template(template + '.html', **kwargs)
|
||||
thr = Thread(target=send_async_email, args=[app, msg])
|
||||
thr.start()
|
||||
return thr
|
@ -5,6 +5,14 @@ basedir = os.path.abspath(os.path.dirname(__file__))
|
||||
|
||||
|
||||
class Config:
|
||||
MAIL_SERVER = os.environ.get('MAIL_SERVER', 'smtp.uni-bielefeld.de')
|
||||
MAIL_PORT = int(os.environ.get('MAIL_PORT', '587'))
|
||||
MAIL_USE_TLS = os.environ.get('MAIL_USE_TLS', 'true').lower() in \
|
||||
['true', 'on', '1']
|
||||
MAIL_USERNAME = os.environ.get('MAIL_USERNAME')
|
||||
MAIL_PASSWORD = os.environ.get('MAIL_PASSWORD')
|
||||
OPAQUE_MAIL_SUBJECT_PREFIX = '[Opaque]'
|
||||
OPAQUE_MAIL_SENDER = 'Opaque Admin <inf_sfb1288@uni-bielefeld.de>'
|
||||
SECRET_KEY = os.environ.get('SECRET_KEY') or 'hard to guess string'
|
||||
SQLALCHEMY_TRACK_MODIFICATIONS = False
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user