Пример #1
0
def register():
    if ('username' not in request.args) or (request.args['username'] == ''):
        return make_response(jsonify({'error': 'Username not provided'}), 400)

    if ('email' not in request.args) or (request.args['email'] == ''):
        return make_response(jsonify({'error': 'Email not provided'}), 400)

    if ('password' not in request.args) or (request.args['password'] == ''):
        return make_response(jsonify({'error': 'Password not provided'}), 400)

    if ('confirm' not in request.args) or (request.args['confirm'] == ''):
        return make_response(
            jsonify({'error': 'Confirm password not provided'}), 400
        )

    form = RegisterForm(request.args)
    form.csrf_enabled = False
    if not form.validate():
        errors = []
        errors.append(form.username.errors)
        errors.append(form.email.errors)
        errors.append(form.password.errors)
        errors.append(form.confirm.errors)
        errors = [item for sublist in errors for item in sublist]

        return make_response(jsonify({'error': errors[0]}), 400)

    new_user = User(
        username=request.args['username'],
        email=request.args['email'],
        password=generate_password_hash(request.args['password'])
    )

    db.session.add(new_user)
    db.session.commit()
    return make_response(jsonify({'success': 'User has been created'}), 201)