Skip to content
Snippets Groups Projects
Commit cc36d35d authored by psy's avatar psy
Browse files

catch dns timeout exception and print warning

parent f5ccdb7e
No related branches found
No related tags found
No related merge requests found
......@@ -9,6 +9,8 @@ from flask_mail import Message
from itsdangerous import URLSafeTimedSerializer as Serializer
from itsdangerous import BadSignature, SignatureExpired
from DNS.Base import TimeoutError as DNSTimeoutError
class User(UserMixin, db.Model):
id = db.Column(db.Integer, primary_key=True)
......@@ -25,13 +27,18 @@ class User(UserMixin, db.Model):
Markup('<b>DEBUG:</b> <a href={url}>{url}</a>'.format(
url=url_for('login_with_token', token=token, _external=True))),
'warning')
return
return token
# send login email
msg = Message('Ohai!', recipients=[self.login])
msg.body = 'Here is your login link: {}'.format(url_for('login_with_token', token=token, _external=True))
try:
mail.send(msg)
except DNSTimeoutError:
return None
return token
@staticmethod
def verify_login_token(token):
......
......@@ -67,9 +67,11 @@ def login():
db.session.commit()
# create token
user.create_token()
token = user.create_token()
if token is not None:
flash('Check your inbox!')
else:
loginform.login.errors.append('Error creating token!')
else:
loginform.login.errors.append('Please enter valid email address!')
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment