示例#1
0
def token_login(token):
    """View function that handles passwordless login via a token"""

    try:
        user, next = login_by_token(token)
    except PasswordlessLoginError, e:
        if e.user:
            send_login_instructions(e.user, e.next)
        do_flash(str(e), 'error')
        return redirect(request.referrer or url_for('login'))
示例#2
0
文件: views.py 项目: leonprou/inviter
def invite():
    if request.method == 'GET':
        invitations = Invitation.query.filter_by(status=None).all()
    else:
        emails = list(request.form.keys())
        users = User.query.filter(User.email.in_(emails)).all()
        invitations = [u.invitation for u in users]
    for invitation in invitations:
        send_login_instructions(invitation.user)
    return render_template('success.html')
示例#3
0
def send_login():
    """View function that sends login instructions for passwordless login"""

    form = PasswordlessLoginForm(csrf_enabled=not app.testing)

    if form.validate_on_submit():
        user = _datastore.find_user(**form.to_dict())

        if user.is_active():
            send_login_instructions(user, form.next.data)
            do_flash(*get_message('LOGIN_EMAIL_SENT', email=user.email))
        else:
            form.email.errors.append(get_message('DISABLED_ACCOUNT')[0])

    return render_template('security/send_login.html',
                           login_form=form,
                           **_ctx('send_login'))