summaryrefslogtreecommitdiffstats
path: root/utils.py
diff options
context:
space:
mode:
Diffstat (limited to 'utils.py')
-rw-r--r--utils.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/utils.py b/utils.py
index 49a69d3..a20b034 100644
--- a/utils.py
+++ b/utils.py
@@ -131,6 +131,19 @@ def verify_confirmation(realm, token, timeout=None):
return pickle.loads(payload)
+def http_verify_confirmation(*args, **kwargs):
+ """
+ Like `verify_confirmation`, but raise HTTP exceptions with appropriate
+ messages instead of `Confirmation{Invalid,Timeout}`.
+ """
+
+ try:
+ return verify_confirmation(*args, **kwargs)
+ except ConfirmationInvalid:
+ raise Forbidden(u'Ungültiger Bestätigungslink')
+ except ConfirmationTimeout:
+ raise Forbidden(u'Bestätigungslink ist zu alt')
+
def send_mail(recipient, subject, body, sender=None):
if sender is None: