Esempio n. 1
0
def register():
    """
    Agrega el usuario a la base de datos
    -- Actualmente todas las funciones están hechas para administradores
    -- y solo se puede poner la marca de admin por base de datos
    -- está creado en el modelo el flag de editor para dar permiso a
    -- todo excepto a datos de seguimiento de gente por privacidad
    """
    form = RegistrationForm()
    if form.validate_on_submit():
        usuario = Usuario(email=form.email.data,
                          username=form.username.data,
                          first_name=form.first_name.data,
                          last_name=form.last_name.data,
                          password=form.password.data)

        try:
            # agregar usuario a la BD
            db.session.add(usuario)
            db.session.commit()
            flash(u'Se ha creado correctamente el usuario.', 'success')
        except Exception as e:
            # error
            flash('Error:', e, 'danger')

        # redirect to the login page
        return redirect(url_for('auth.login'))

    # load registration template
    return render_template('auth/register.html', form=form)
def run_usuario_registrar(request):
    if request.method == 'POST':
        email = request.POST['email']

        #verifica se o email ja esta cadastrado
        try:
            usuario = Usuario.objects.get(email=email)
        except:
            #se nao esta, cadastra o novo usuario
            nome = request.POST['nome']

            senha = request.POST['senha']
            hash_senha = hashlib.sha224(senha.encode('utf8'))
            senha = hash_senha.hexdigest()

            usuario = Usuario(nome=nome, email=email, senha=senha)
            try:
                usuario.save()
                resultado = True
            except:
                resultado = False

            return {'resultado': resultado}
        else:
            return {'resultado': False}
Esempio n. 3
0
def new_user():
    data = request.get_json()

    if 'nome' not in data or 'email' not in data or 'senha' not in data or 'tag_id' not in data:
        return bad_request(403, 'Precisa passar nome, email,senha e tag')
    if Usuario.query.filter_by(nome=data['nome']).first():
        return bad_request(403, 'Use um outro nome')
    if Usuario.query.filter_by(email=data['email']).first():
        return bad_request(403, 'Use um outro email')

    data['ativo'] = 'S'

    usuario = Usuario()
    usuario.from_dict(data)

    cadastro = Cadastro()
    cadastro.passwd(data['senha'])

    usuario.cadastro_usuario = [cadastro]

    db.session.add(usuario)
    db.session.add(cadastro)
    db.session.commit()

    message = {'message': 'usuario criado'}

    return jsonify(message), 200
Esempio n. 4
0
def cadastrar():
    form = UsuarioCadastrarForm()
    if form.is_submitted():
        if form.validate():
            is_primeiro_usuario = Usuario.query.count() == 0
            # O primeiro usuário cadastrado será um administrador
            if is_primeiro_usuario:
                tipo_desc = 'Administrador'
            # Os outros são funcionários, por padrão
            else:
                tipo_desc = 'Funcionário'
            tipo = TipoUsuario.query.filter_by(descricao=tipo_desc).first()

            existente_email = Usuario.query.filter_by(
                email=form.email.data).first()
            existente_cpf = Usuario.query.filter_by(cpf=form.cpf.data).first()
            if existente_email is not None:
                form.email.errors.append("Email já cadastrado!")
            elif existente_cpf is not None:
                form.cpf.errors.append("CPF já cadastrado!")
            else:
                usuario = Usuario(
                    nome=form.nome.data,
                    email=form.email.data,
                    cpf=form.cpf.data,
                    hash_senha=bcrypt.generate_password_hash(form.senha.data),
                    tipo=tipo,
                )

                db.session.add(usuario)
                db.session.commit()
                flash('Usuário criado com sucesso.', 'success')
                return redirect(url_for('usuario.listar_usuarios'))

    return render_template('usuarios/cadastrar.html', form=form)
Esempio n. 5
0
def seed_data():
    # tb_tipo_usuario = sa.sql.table('tipo_usuario', sa.sql.column('descricao', sa.String))
    # op.bulk_insert(
    #     tb_tipo_usuario,
    #     [
    #         {'id': 1, 'descricao': 'Administrador'},
    #         {'id': 2, 'descricao': 'Cliente'},
    #         {'id': 3, 'descricao': 'Funcionário'},
    #         {'id': 4, 'descricao': 'Convidado'},
    #     ]
    # )

    Tipo_Usuario.inserir_tipos_usuarios()

    user = Usuario(login='******', email='*****@*****.**', senha='admin')
    user2 = Usuario(login='******', email='*****@*****.**', senha='user')
    db.session.add_all([user, user2])
    db.session.commit()
Esempio n. 6
0
def post():
    response = request.get_json()

    name = response['name']
    age = response['age']
    height = response['height']

    usuario = Usuario(name, age, height)
    q.post(usuario)

    return jsonify({name: 'Created'}), 201
Esempio n. 7
0
def seed():
    usuarios = [
        Usuario(nome='Leanne Graham', email='*****@*****.**', senha='Gwenborough'),
        Usuario(nome='Ervin Howell', email='*****@*****.**', senha='Wisokyburgh'),
        Usuario(nome='Clementine Bauch', email='*****@*****.**', senha='McKenziehaven'),
        Usuario(nome='Patricia Lebsack', email='*****@*****.**', senha='South Elvis'),
        Usuario(nome='Chelsey Dietrich', email='*****@*****.**', senha='Roscoeview'),
        Usuario(nome='Mrs. Dennis Schulist', email='*****@*****.**', senha='South Christy'),
        Usuario(nome='Kurtis Weissnat', email='*****@*****.**', senha='Howemouth'),
        Usuario(nome='Nicholas Runolfsdottir V', email='*****@*****.**', senha='Aliyaview'),
        Usuario(nome='Glenna Reichert', email='*****@*****.**', senha='Bartholomebury'),
        Usuario(nome='Clementina DuBuque', email='*****@*****.**', senha='Lebsackbury')
    ]

    for usuario in usuarios:
        print('Incluindo usuario {}'.format(usuario.nome))
        db.session.add(usuario)

    db.session.commit()
    print('Seed finnalizado.')
Esempio n. 8
0
def registro():
    if current_user.is_authenticated:
        return redirect(url_for('index'))
    form = RegistrationForm()
    if form.validate_on_submit():
        user = Usuario(username=form.username.data, email=form.email.data)
        user.set_password(form.password.data)
        db.session.add(user)
        db.session.commit()
        flash('Congratulations, you are now a registered user!')
        return redirect(url_for('login'))
    return render_template('register.html', title='Registre-se', form=form)
Esempio n. 9
0
def cadastrar_usuario():
    form = UsuarioForm()
    if form.validate_on_submit():
        if form.is_admin.data:
            usuario = Administrador(form.nome.data, form.email.data, form.senha.data)
        else:
            usuario = Usuario(form.nome.data, form.email.data, form.senha.data)
        db.session.add(usuario)
        db.session.commit()
        flash('Usuário criado com sucesso')

        return redirect('/')
    return render_template('usuario/cadastrar.html', title='Sign In', form=form)
Esempio n. 10
0
def carrega_usuarios(arquivo_csv):
    with open(arquivo_csv) as csvfile:
        usuarios = csv.reader(csvfile)
        for linha in usuarios:
            u = Usuario()
            u.email = linha[0]
            u.nome = unicode(linha[1], "utf-8")
            u.tipo = unicode(linha[2], "utf-8")
            u.in_coordenador = linha[3]
            u.coordenacao_id = linha[4]
            u.password = "******"
            db.session.add(u)
            db.session.commit()
Esempio n. 11
0
def put(id):
    response = request.get_json()

    name = response['name']
    age = response['age']
    height = response['height']

    usuario = Usuario(name, age, height)
    user = q.get(id)
    if user:
        q.put(id, usuario)
        return jsonify({user['name']: 'Updated'}), 200
    else:
        return jsonify({'Error': 'User not found'}), 404
Esempio n. 12
0
    def setUp(self):
        """
        Será chamado antes de cada teste
        """

        db.create_all()

        # cria usuario teste
        user = Usuario(nome="Pontotel",
                       password="******",
                       email='*****@*****.**')

        # salva usuário no banco de dados
        db.session.add(user)
        db.session.commit()
Esempio n. 13
0
def cadastrar():
    if current_user.is_authenticated:
        return redirect(url_for('bp_main.main'))
    form = CadastroForm()
    if form.validate_on_submit():
        senha_hash = bcrypt.generate_password_hash(
            form.senha.data).decode('utf-8')
        novo_usuario = Usuario(nome=form.nome.data,
                               email=form.email.data,
                               senha=senha_hash)
        db.session.add(novo_usuario)
        db.session.commit()
        flash(f'Conta criada!', 'success')
        return redirect(url_for('bp_usuarios.entrar'))
    return render_template('usuarios/cadastro.html', form=form)
Esempio n. 14
0
    def test_balance_positivo(self):
        usuario = Usuario()

        data = {
            "username": "******",
            "first_name": "jose",
            "last_name": "perez",
            "password": "******",
            "email": "*****@*****.**",
            "balance": 1000
        }

        serializer = UserSerializer(usuario, data=data)

        self.assertEqual(serializer.is_valid(), True)
Esempio n. 15
0
def create_user():
    json = request.get_json()

    try:
        usuario = Usuario(nome=json.get('nome', None),
                          email=json.get('email', None),
                          senha=json.get('senha', None))

        db.session.add(usuario)
        db.session.commit()

    except AssertionError as err:
        return jsonify({'status': str(err)}), 403

    return jsonify(usuario.to_json()), 201
Esempio n. 16
0
def registrar():
    if current_user.is_authenticated:
        return redirect(url_for('main.index'))
    form = RegisterForm()
    if form.validate_on_submit():
        usuario = Usuario(nickname=form.username.data,
                          senha=form.password.data)
        usuario.set_password()
        db.session.add(usuario)
        db.session.commit()
        usuario = Usuario.query.filter_by(nickname=form.username.data).first()
        login_user(usuario)
        return redirect(url_for('main.index'))
    return render_template('usuario/registrar.html',
                           title="Registrar",
                           form=form)
Esempio n. 17
0
def createdb(passwd):
    """ Creates a database with all of the tables defined in
        your SQLAlchemy models
    """
    db.create_all()
    u = Usuario('admin', passwd)
    db.session.add(u)
    s1 = Status(description='CRIADO')
    db.session.add(s1)
    s2 = Status(description='MIGRANDO')
    db.session.add(s2)
    s3 = Status(description='CONCLUIDO')
    db.session.add(s3)
    s4 = Status(description='ERRO')
    db.session.add(s4)
    db.session.commit()
Esempio n. 18
0
def create_user():
    data = request.get_json() or {}
    if 'login' not in data or 'email' not in data or 'senha' not in data:
        return bad_request('deve incluir login, email e senha!')
    if Usuario.query.filter_by(login=data['login']).first():
        return bad_request('Por favor use outro login')
    if Usuario.query.filter_by(email=data['email']).first():
        return bad_request('Por favor use outro endereço de email')
    user = Usuario()
    user.from_dict(data, new_user=True)
    db.session.add(user)
    db.session.commit()
    response = jsonify(user.to_dict())
    response.status_code = 201
    response.headers['Location'] = url_for('api.get_user', id=user.id)
    return response
Esempio n. 19
0
def cadastrar():
    form = RegistrationForm()
    if form.validate_on_submit():
        user = Usuario(email=form.email.data,
                            login=form.user.data,
                            nome=form.nome.data,
                            sobrenome=form.sobrenome.data,
                            password=form.senha.data)

        db.session.add(user)
        db.session.commit()
        flash('Cadastro realizado com sucesso! Faça login abaixo.')

        return redirect(url_for('auth.login'))

    return render_template('auth/cadastro.html', form=form, title='Cadastrar')
Esempio n. 20
0
def register():
    if current_user.is_authenticated:
        return redirect(url_for('index'))
    form = RegistrationForm()
    if form.validate_on_submit():
        username = unidecode.unidecode(form.username.data)
        if username.isalpha():
            user = Usuario(nome=username, email=form.email.data)
            user.set_password(form.password.data)
            db.session.add(user)
            db.session.commit()
            flash('Parabéns, você foi registrado com suceso!')
            return redirect(url_for('login'))
        flash('Por favor, não utilize caractéres especiais como "/ $ #" ' +
              'ou palavras acentuádas.')
    return render_template('register.html', title='Registro', form=form)
Esempio n. 21
0
def create_user(name, email, password):
    """Create a new persistent user"""
    from app.email import send_email
    hashed_password = PasswordManager(password).hash()
    usuario = Usuario(nombre_usuario=email,
                      readable_name=name,
                      hashed_password=hashed_password)
    db.session.add(usuario)
    db.session.commit()

    send_email(email,
               'Una cuenta a sido creada para ti',
               'email/created_account',
               name=name,
               username=email,
               password=password,
               contact_email=os.getenv('ECCEJU_MAIL_SENDER'))
Esempio n. 22
0
def registro():
    form = RegistroForm()
    # if request.method=='GET':
    #     return render_template("registro.html", form=form)
    if request.method != 'GET' and form.validate_on_submit():
        usuario = form.usuario.data
        senha = form.senha.data
        email = form.email.data
        existeU = Usuario.query.filter_by(usuario=usuario).first()
        existeEmail = Usuario.query.filter_by(email=email).first()
        if existeU == None and existeEmail == None:
            novoUsuario = Usuario(usuario=usuario, senha=senha, email=email)
            db.session.add(novoUsuario)
            db.session.commit()
            flash("Usuario registrado com sucesso")
            return redirect(url_for('login'))
        else:
            flash("Nome de usuário ou email já registrado.")
    return render_template("registro.html", form=form)
Esempio n. 23
0
def crear_usuario():
    datos = request.get_json() or {}
    if 'correo' not in datos or 'alias' not in datos or 'contrasena' not in datos:
        return peticion_erronea(
            'Debe incluir los campos correo electrónico, contraseña y alias.')
    if Usuario.query.filter_by(correo=datos['correo']).first():
        return peticion_erronea(
            'Ya hay un usuario con esa dirección correo de correo electrónico, por favor utilice una dirección de correo electrónico diferente.'
        )
    datos['idUsuario'] = Firebase.firebase_crear_usuario(datos)
    usuario = Usuario()
    usuario.from_dict(datos, nuevo_usuario=True)
    db.session.add(usuario)
    db.session.commit()
    respuesta = jsonify(usuario.to_dict())
    respuesta.status_code = 201
    respuesta.headers['Location'] = url_for('api.obtener_usuario',
                                            idUsuario=usuario.idUsuario)
    return respuesta
Esempio n. 24
0
def create_user_record(valid_payload):
    try:
        pessoa = Pessoa(valid_payload["nome"],
                        valid_payload["data_nascimento"])
        db.session.add(pessoa)
        db.session.flush()
        usuario = Usuario(valid_payload["email"], pessoa.id)
        usuario.fazer_hash_senha(valid_payload["senha"])
        db.session.add(usuario)
        db.session.commit()
        return Response(
            json.dumps(valid_payload),
            status=201,
            mimetype="application/json",
        )
    except Exception:
        return Response(
            json.dumps({"errors": "Internal Server Error"}),
            status=500,
            mimetype="application/json",
        )
Esempio n. 25
0
def registrar_usuario():
    form = UserRegisterForm()
    if form.validate_on_submit():
        nombre = form.nombre.data
        email = form.email.data
        password = form.password.data

        nuevo_usuario = Usuario(nombre=nombre, email=email, password=password)

        db.session.add(nuevo_usuario)
        db.session.commit()

        app.logger.info(f'{datetime.now()}: User {nuevo_usuario} registered')

        flash('Estas registrado!', 'success')
        return redirect(url_for('home'))

    return render_template('registrar.html',
                           barra_busqueda=True,
                           titulo='Registrarse',
                           form=form,
                           debug=app.config['DEBUG'])
Esempio n. 26
0
    def populate_db():
        from faker import Faker
        from app.models import Usuario, Viagem

        fake = Faker('pt_BR')
        for _ in range(100):
            user = Usuario(nome=fake.name(),
                           email=fake.email(),
                           firebase_id=fake.uuid4())
            db.session.add(user)
        db.session.commit()
        # add rides for the 20 fst users
        for user_id in range(1, 21):
            ride = Viagem(
                usuario_id=user_id,
                de=fake.city(),
                para=fake.city(),
                data=fake.date_time_between(start_date="-20d",
                                            end_date="+20d"),
            )
            db.session.add(ride)
        db.session.commit()
Esempio n. 27
0
def sala(id_sala, nome_sala):
    if not Sala.query.filter_by(id=id_sala).first():
        flash('Esta sala não existe!')
        return redirect(url_for('main.index'))
    try:
        id = Mensagem.query.order_by(Mensagem.id.desc()).first().id
    except:
        id = 0

    sala = Sala.query.filter_by(id=id_sala).first()
    #Verifica se o usuário está banido da sala
    if (not current_user.admin and sala.isBanido(current_user.id)):
        flash('Você está banido desta sala!')
        return redirect(url_for('main.index'))

    #Verifica se o usuário é admin do site ou dono da sala
    if (not current_user.admin and current_user.id != sala.admin_id):
        #Verifica se há senha ou se a senha está correta
        if (sala.senha
                and not sala.check_password(request.form.get('senha', ''))):
            flash('Senha incorreta!')
            return redirect(
                url_for('sala.senha_sala',
                        sala_id=sala.id,
                        sala_nome=sala.nome))

    user = Usuario()
    usuario_atual = user.query.filter_by(id=current_user.id).first()
    #Adiciona o usuário à sala
    usuario_atual.join_sala(sala)
    db.session.commit()
    #Pega as 10 últimas conversas
    conversas = Mensagem.query.filter(Mensagem.sala_id == id_sala).order_by(
        Mensagem.data_envio.desc()).limit(10)
    #Inverte a ordem das conversas
    conversas = conversas[::-1]
    return render_template('sala/sala.html', title='Sala', sala=sala, id_inicial=id, \
        id_sala=id_sala, conversas=conversas, user=user)
Esempio n. 28
0
import os
import datetime
import pytest

from app import create_app
from app.models import db, Usuario, Viagem

users = [
    Usuario(
        nome='John Smith',
        email='*****@*****.**',
        firebase_id='1',
    ),
    Usuario(
        nome='Mary Smith',
        email='*****@*****.**',
        firebase_id='2',
    ),
    Usuario(
        nome='Steve Smith',
        email='*****@*****.**',
        firebase_id='3',
    ),
]

rides = [
    Viagem(
        usuario_id=1,
        de='Mossoró',
        para='Fortaleza',
        data=datetime.date.today() - datetime.timedelta(days=1),  # yesterday
Esempio n. 29
0
def scraper():
    bs = BeautifulSoup
    novo_user = Usuario(
        nome='Samba Falado',
        email='*****@*****.**',
        senha=Bcrypt().generate_password_hash('heitor').decode('utf-8'),
        permissao='2')
    db.session.add(novo_user)
    for ano in range(2009, 2014):
        for mes in range(1, 13):
            url = 'http://sambafalado.blogspot.com/' + str(ano) + '/' + str(
                mes).zfill(2) + '/'
            #print(url)
            source = requests.get(url).text

            soup = bs(source, 'lxml')
            for result in soup.find_all('div', class_='post-outer'):

                result_datetime = result.abbr['title']
                #print('result_datetime')
                #result_datetime = datetime.fromisoformat(result_datetime)

                result_letra = result.find('div',
                                           class_='post-body entry-content')
                for br in result_letra.find_all('br'):
                    br.replace_with('\n')
                letra_da_musica = result_letra.text

                result_titulo = result.find('h3',
                                            class_='post-title entry-title')
                result_titulo = result_titulo.a.text.split('(')

                nome_da_musica = result_titulo[0].strip()

                compositores = result_titulo[1].split(')')[0]
                compositores = re.split('&|/|-|–|,', compositores)
                striper = []
                for compositor in compositores:
                    striper.append(compositor.strip())
                compositores = striper

                nova_musica = Musica(nome=nome_da_musica,
                                     letra=letra_da_musica,
                                     enviado_por=novo_user,
                                     enviado_em=result_datetime)
                db.session.add(nova_musica)

                #comps=[] ##
                for compositor in compositores:
                    query_compositor = Compositor.query.filter_by(
                        nome=compositor).first()
                    if not query_compositor:
                        novo_compositor = Compositor(nome=compositor)
                        db.session.add(novo_compositor)
                        nova_musica.compositores.append(novo_compositor)
                    else:
                        nova_musica.compositores.append(query_compositor)
                    #comps.append(compositor) ##
                db.session.commit()

                #print(f'{nome_da_musica} ({comps})') ##}
                flash('Parece que deu certo!')
    return redirect(url_for('bp_main.main'))
Esempio n. 30
0
 def _new_usuario(self, nombre_usuario, clave):
     usuario = Usuario(nombre_usuario=nombre_usuario,
                       hashed_password=PasswordManager(clave).hash())
     db.session.add(usuario)
     db.session.commit()
     return usuario