web.py 文件源码

python
阅读 20 收藏 0 点赞 0 评论 0

项目:census 作者: ioddly 项目源码 文件源码
def register_email():
    verify = verify_recaptcha_form()
    if not verify:
        return template("login.htm", email_login_error = "ReCAPTCHA verification failed")
    email = request.forms.get('email')
    msg = 'An email has been sent to the address provided with login information'
    # validate email

    # check that user does not already exist
    user = None
    for user2 in r.table('users').get_all(["email", email], index = 'identity_check').run(conn()):
        user = user2

    if user:
        user['authlink'] = str(uuid.uuid4())
        r.table('users').replace(user).run(conn())
        link = "%s/login/email/%s/%s" % (config['SITE_URL'], email, user['authlink'])

        users.mail(user, 'login information', REGISTER_EMAIL_HTML.substitute(link=link),
                REGISTER_EMAIL_TEXT.substitute(link=link))

        users.flash('info', msg)
    else:
        authlink = uuid.uuid4()
        user = {
            "identity_type": "email",
            "identity": email,
            "authlink": str(uuid.uuid4()),
            "subscribed": True,
            "last_update": r.now(),
        }
        r.table('users').insert(user).run(conn())
        link = "%s/login/email/%s/%s" % (config['SITE_URL'], email, user['authlink'])

        users.mail(user, 'confirmation', REGISTER_EMAIL_HTML.substitute(link=link),
                REGISTER_EMAIL_TEXT.substitute(link=link))

        users.flash('info', msg)
    return redirect('/login')
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号