Example #1
0
File: views.py Project: ZRJ/ledge
def confirm(id):
    """The view to confirm a new account's email."""
    #: get resources
    user = User.query.get_or_404(id)
    service = SignUpService(user)
    input_token = request.args['token']

    #: active current account
    try:
        service.active(input_token)
    except TokenUsedError:
        message = _(u"The account had been actived.")
        return render_template("confirm-failed.html", message=message), 403
    except TokenWrongError:
        message = _(u"The active token is invalid.")
        return render_template("confirm-failed.html", message=message), 403

    #: automatic sign in
    session_login(user)
    #: output a success message
    message = _(u"The account has been actived successfully.")
    return render_template("confirm-success.html", message=message)