コード例 #1
0
def cadastrar():
    # Cadastro via ajax
    usuario = Usuario()
    usuario.nivel = Roles.usuario.value
    populate_from_request(usuario)

    if not Usuario.valid_pass(request.form['senha']):
        return json_response(message='A senha deve ter pelo menos 6 dígitos',
                             data=[]), 400

    if usuario.login_exists(usuario.cpf, 0):
        return json_response(message='O CPF já está em uso, utilize outro',
                             data=[]), 400

    usuario.senha = Usuario.hash(request.form['senha'])
    usuario.data_cadastro = datetime.datetime.now().strftime(
        "%Y-%m-%d %H:%M:%S")
    identifier = usuario.insert()
    if identifier > 0:
        Logs(0, usuario.identifier,
             usuario.nome + '(' + usuario.cpf + ')' + ' fez o cadastro',
             'usuario', usuario.identifier,
             datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")).insert()
        return json_response(message='Cadastrado realizado!',
                             data=[usuario],
                             redirect=url_for('usuarios.entrar')), 201
    else:
        return json_response(message='Não foi possível cadastrar sua conta',
                             data=[]), 400
コード例 #2
0
def admin_cadastrar():
    """ Cadastro de usuários """
    auth = Auth()
    if auth.is_allowed('cadastra.usuario'):
        usuario = Usuario()
        populate_from_request(usuario)

        if not Usuario.valid_pass(request.form['senha']):
            return json_response(
                message='A senha deve ter pelo menos 6 dígitos', data=[]), 400

        if usuario.login_exists(usuario.cpf, 0):
            return json_response(message='O CPF já está em uso, utilize outro',
                                 data=[]), 400

        usuario.senha = Usuario.hash(request.form['senha'])
        usuario.data_cadastro = datetime.datetime.now().strftime(
            "%Y-%m-%d %H:%M:%S")
        if usuario.insert():
            Logs(
                0, auth.user.identifier, auth.user.nome + '(' + auth.user.cpf +
                ')' + ' cadastrou o usuário ' + usuario.nome + ' (' +
                usuario.cpf + ')', 'usuario', usuario.identifier,
                datetime.datetime.now().strftime(
                    "%Y-%m-%d %H:%M:%S")).insert()
            return json_response(message='Usuário cadastrado',
                                 data=[usuario],
                                 redirect=url_for('usuarios.admin_lista'))
        else:
            return json_response(
                message='Não foi possível cadastrar o usuário', data=[]), 400
    else:
        return json_response(
            message='Você não tem permissão para realizar esta ação',
            data=[]), 403