예제 #1
0
def register():
    try:
        data = request.json
        email, password = data["email"], data["password"]

        if User.query.filter_by(email=email).count() > 0:
            return response(status=constants.ERROR,
                            message=constants.EMAIL_ALREADY_EXISTS)

        if not validate_email(email):
            return response(status=constants.ERROR,
                            message=constants.INVALID_EMAIL)

        user = User()
        user.email = email
        user.password = sha256_crypt.encrypt(str(password))

        db.session.add(user)
        db.session.commit()

        return response(status=constants.SUCCESS,
                        message=constants.REGISTRATION_SUCCESS)
    except Exception:
        return response(status=constants.ERROR,
                        message=constants.SOMETHING_WENT_WRONG,
                        status_code=422)
예제 #2
0
def register():
    form = RegistrationForm(request.form)

    if request.method == 'POST' and form.validate():
        if not (User.get_user_by_email_or_none(form.email.data)
                or User.get_user_by_username_or_none(form.username.data)):
            user = User()
            form.populate_obj(user)

            # store the email in lowercase form
            user.email = form.email.data.strip().lower()
            g.db.add(user)
            g.db.commit()

            session['current_user_id'] = user.id
            session['logged_in'] = True
            flash("Thanks for registering", 'success')
            return redirect(url_for('main.index'))

        flash('That email or username already exists!', 'error')

    return render_template('auth/registration.html', form=form)
예제 #3
0
def register():
    form = RegistrationForm(request.form)

    if request.method == 'POST' and form.validate():
        if not (User.get_user_by_email_or_none(form.email.data) or
                    User.get_user_by_username_or_none(form.username.data)):
            user = User()
            form.populate_obj(user)

            # store the email in lowercase form
            user.email = form.email.data.strip().lower()
            g.db.add(user)
            g.db.commit()

            session['current_user_id'] = user.id
            session['logged_in'] = True
            flash("Thanks for registering", 'success')
            return redirect(url_for('main.index'))

        flash('That email or username already exists!', 'error')

    return render_template('auth/registration.html', form=form)