Пример #1
0
def create():
    errors = form_validator.validate(register.rules, request.json, True)
    if not errors:
        User.db = get_db()
        User.create(request.json)
        return jsonify({}), 201
    else:
        return jsonify({"errors": errors}), 422
Пример #2
0
def create():

    form = UserCreateForm(request.form)

    if form.is_valid():
        User.create(form.values)
        flash(form.success_message(), 'success')
        return redirect(url_for('user_index'))
    else:
        for error in form.error_messages():
            flash(error, 'danger')
        return new(user=form.values)
Пример #3
0
def create():
    Permiso = habilitedAcces()
    if Permiso == 'true':
        User.db = get_db()
        data = request.form
        exist = User.find_user(data['user'])
        if not exist:
            file = request.files['file']
            User.create(data,file.filename)
            filename =User.last_user()
            upload_file('usuario',str(filename['id']),file)
            flash(["El usuario debe ser confirmado por el Admin para poder ser utilizado.", 'green'])
            # enviar('Nuevo usuario','Un nuevo usuario se ha registrado y requiere de validacion del administrador.')
            return redirect(url_for('altaUser'))
        flash(["Ya existe un usuario con ese nombre, elija otro!", 'red'])   
        return redirect(url_for('altaUser'))
    return render_template(Permiso)
Пример #4
0
def new():
    s_config = siteconfig.get_config()
    if not has_permission("usuario_new", session) or (
            s_config["modo_mantenimiento"] == 1
            and not has_role("administrador", session)):
        abort(401)

    form = UserCreateForm()

    op_response = dict()

    if form.validate_on_submit():
        params = request.form.to_dict()

        plain_pw = params["password"]
        params["password"] = bcrypt.generate_password_hash(plain_pw).decode(
            "utf - 8")

        params["roles"] = request.form.getlist("rol_id")

        created = User.create(params)

        if created:
            html = render_template(
                "emails/mail_alta_usuario.html",
                username=params["username"],
                passwd=plain_pw,
            )

            send_async(
                params["email"],
                "Cuenta Registrada | Grupo2 - Orquesta Escuela de Berisso",
                html,
            )

            op_response["msg"] = "Se ha agregado al usuario con éxito"
            op_response["type"] = "success"
        else:
            op_response[
                "msg"] = "El nombre de usuario está en uso, intente con otro"
            op_response["type"] = "error"
            abort(make_response(jsonify(op_response), 422))

    else:
        if len(form.errors) >= 2:
            op_response["msg"] = "Complete todos los datos del nuevo usuario"
            op_response["type"] = "error"
        else:
            error_msg = "".join(list(form.errors.values())[0]).strip("'[]")
            op_response["msg"] = error_msg
            op_response["type"] = "error"

        abort(make_response(jsonify(op_response), 400))

    return make_response(jsonify(op_response), 201)
Пример #5
0
def store():
    if not authenticated(session):
        abort(401)
    #Chequea permiso
    User.db = get_db()
    if (User.tiene_permiso(session['id'], 'usuario_new')):
        if request.method == "POST" and forms.ValidateUser(
                request.form).validate():
            if (request.form['password'] != request.form['password_repeat']):
                flash('Las contraseñas no coinciden', 'error')
            #verifica los roles enviados
            elif (request.form.get("rol1")
                  == None) and (request.form.get("rol2")
                                == None) and (request.form.get("rol3")
                                              == None):
                flash('Debes elegir al menos un rol de usuario', 'error')
            #Chequea la existencia del usuario
            elif User.find_by_username(request.form['username']):
                flash("Ya existe un usuario con ese nombre de usuario",
                      'error')
            elif User.find_by_email(request.form['email']):
                flash("Ya existe un usuario con ese email", 'error')
            else:
                User.create(request.form)
                user = User.find_by_email_and_pass(request.form['email'],
                                                   request.form['password'])
                if request.form.get("rol1") != None:
                    User.set_role(user['id'], 1)
                if request.form.get("rol2") != None:
                    User.set_role(user['id'], 2)
                if request.form.get("rol3") != None:
                    User.set_role(user['id'], 3)
                flash("Usuario agregado correctamente", 'success')
        else:
            flash(
                'Verifica los campos obligatorios. No ingreses valores no permitidos',
                'error')
        return redirect(url_for('panel_usuarios'))
    else:
        abort(401)
Пример #6
0
def create():
    if not authenticated(session):
        abort(401)
    page = request.args.get('pagina')

    permisos = User.misPermisos(session['id'])

    Configuracion.db = get_db()
    config = Configuracion.all()

    data = request.form

    Estudiante.db = get_db()
    estudiante = Estudiante.find_by_documento(data['numero_doc'])

    User.db = get_db()
    user = User.find_by_email(data['email'])
    userDoc = User.find_by_documento(data['numero_doc'])

    users = User.all(page, config['paginacion'])
    rango = User.rangoAll(config['paginacion'])

    if validateCreateUser(data) == False:
        flash("Todos los campos son obligatorios.")
        return redirect(url_for('user_new', user=user))

    if user:
        flash("El email ya existe.")
        return redirect(url_for('user_new', user=user))

    if estudiante:
        flash("El documento ya existe.")
        return redirect(url_for('user_new', user=user))

    if userDoc:
        flash("El documento ya existe.")
        return redirect(url_for('user_new', user=user))

    User.create(data)  #agarro los datos del formulario
    return redirect(url_for('user_index', pagina=0))
Пример #7
0
def create():
    #Auth check
    auth.authenticated_or_401()

    if request.method == "POST":
        User.db = get_db()
        if (not User.has_permission(session['id'],'usuario_new')):
            abort(401)
        else:
            post_data = request.get_json() #Obtención de información
            errors = [] #Errores

            #Chequeo username
            if User.find_by_username(post_data['username']):                
                errors.append({'name': 'username', 'message': 'El nombre de usuario ingresado ya existe'})
            #Chequeo email
            if User.find_by_email(post_data['email']):
                errors.append({'name': 'email', 'message': 'El email ingresado ya existe'})
            #Chequeo passwords
            if (post_data['password'] != post_data['password_confirm']):
                errors.append({'name': 'password', 'message': 'Las contraseñas ingresadas no coinciden'})

            form = forms.ValidateUser.from_json(post_data, skip_unknown_keys=True)
            if (form.validate() and len(errors) == 0):
                #Password hashing
                password = sha256_crypt.encrypt(post_data['password'])
                #Creacion de usuario
                User.create(post_data, password)
                new_user = User.find_by_email(post_data['email'])
                update_roles(new_user['user_id'], post_data)
                response_object = {'status': 'success', 'message': 'Se agregó el nuevo usuario'}
            else:
                if (not form.validate()):
                    err = {'name': 'fields', 'message': 'Verifica los campos obligatorios y no ingreses nombres no permitidos.'}
                    errors.append(err)
                response_object = errors
            return jsonify(response_object)
Пример #8
0
def create():
    if not authenticated(session):
        return render_template('auth/login.html')
    ok = True
    if not pageState():
        ok = False
        for permiso in session['permisos']:
            if "VER_EN_MANTENIMIENTO" == permiso['nombre']:
                ok = True
    if not ok:
        return render_template('error/mantenimiento.html')

    msj = ""
    try:
        formCU = CreateUserForm(request.form)
        User.db = get_db()
        User.db.autocommit = False

        if createIsValid(formCU):

            res = User.create(request.form['email'], request.form['usuario'],
                              request.form['password'],
                              request.form['firstName'],
                              request.form['lastName'])
            for rolSelected in request.form.getlist("roles"):
                idRol = int(rolSelected)
                User.add_role(res['idInsertado'], idRol)

            User.db.commit()

            flash("Se creó con éxito", "success")
            return redirect(url_for('listado_usuarios'))

    except Exception as e:
        msj = str(e)
        User.db.rollback()
        rolesUsuario = request.form.getlist("roles")
        roles = Roles.all()
        return render_template("user/registrarUsr.html",
                               titulo=msj,
                               form=formCU,
                               roles=roles,
                               rolesUsuario=rolesUsuario,
                               formRequest=request.form)
Пример #9
0
def create():
    User.db = get_db()
    User.create(request.form)
    return redirect(url_for('user_index'))