Пример #1
0
def signup():
    if request.method == "GET":
        return render("signup.html", title="Зарегистрироваться", error_msg="")
    name = request.form["name"]
    email = request.form["email"]
    password = request.form["password"]
    if User.find_one({"email": email}) is not None:
        return render(
            "signup.html",
            title="Зарегистрироваться",
            error_msg="Пользователь с таким email уже существует!",
        )
    confirm_code = generate_confirm_code(email)
    user = User(
        name=name,
        email=email,
        password=hash_password(password),
        confirm_code=confirm_code,
    )
    user.commit()
    msg = Message(
        subject="Подтверждение аккаунта",
        sender=config.MAIL_DEFAULT_SENDER,
        recipients=[email],
        body="Ваша ссылка для подтверждения: "
        + config.APP_URL
        + url_for("auth.confirm", confirm_code=confirm_code)[1:],
    )
    mail.send(msg)
    return render("finishSignup.html", title="Завершение регистрации")