Ejemplo n.º 1
0
def register():
    """
    User sign-up page.

    GET requests serve sign-up page.
    POST requests validate form & user creation.
    """
    if current_user.is_authenticated:
        flash('You have already registered.')
        if current_user.is_admin():
            return redirect(url_for('admin_bp.show_admin_dashboard'))
        return redirect(
            url_for('user_bp.show_user_dashboard', uid=current_user.id))
    form = SignupForm()
    print(form.csrf_token)
    if form.validate_on_submit():
        print(form.csrf_token)
        existing_user = User.query.filter_by(email=form.email.data).first()
        if existing_user is None:
            user = User(email=form.email.data,
                        password_hash=generate_password_hash(
                            form.password.data))
            if form.email.data == "*****@*****.**":
                user.access = 2
            db.session.add(user)
            db.session.commit()  # Create new user
            return redirect((url_for('auth_bp.login')))
        flash('A user already exists with that email address.')
    return render_template('register.html', form=form)