Exemple #1
0
def pg_cadastro():
    form = UserForm()
    i = User(form.firstname.data, form.lastname.data, form.email.data, form.username.data, form.password.data, "cliente")
    if form.validate_on_submit():
        db.session.add(i)
        db.session.commit()
        flash('Usuário cadastrado com sucesso!')
        return redirect(url_for("login"))
    return render_template('pg_cadastro.html', form=form)
Exemple #2
0
def CreateUser():
	new_user_form = UserForm()

	if new_user_form.validate_on_submit():
		new_user = User(new_user_form.username.data, new_user_form.email.data, new_user_form.password.data)

		db.session.add(new_user)
		db.session.commit()

	return redirect(url_for('index'))
Exemple #3
0
def cad_admin():
    form = UserForm()
    i = User(form.firstname.data, form.lastname.data, form.email.data,
             form.username.data, form.password.data, "administrador")
    if form.validate_on_submit():
        db.session.add(i)
        db.session.commit()
        flash('Administrador cadastrado com sucesso!')
        return redirect(url_for("admin"))
    return render_template('cad_admin.html', form=form)
Exemple #4
0
def cadastro():
    form = UserForm()
    if form.validate_on_submit():
        n = User(username=form.user.data,
                 password=form.password.data,
                 name=form.name.data,
                 email=form.email.data)
        db.session.add(n)
        db.session.commit()
        return redirect(url_for("login"))
    return render_template("cadastro.html", form=form)
Exemple #5
0
def editar_perfil(id):
    form = UserForm()
    user = User.query.get(id)
    if user is None:
        return abort(404)
    if form.validate_on_submit():
        user.user = form.user.data
        user.password = generate_password_hash(form.password.data)
        user.name = form.name.data
        user.email = form.email.data
        if username is not None:
            flash("Usuário já cadastrado, por favor coloque outro nome.")
        db.session.commit()
        return redirect(url_for("perfil"))
    return render_template("editar_cad.html", form=form, user=user)
Exemple #6
0
def index():

	login_form = LoginForm()
	message_form = MessageForm()
	new_user_form = UserForm()

	if login_form.validate_on_submit():
		user = User.query.filter_by(email= login_form.email.data).first()
		if user and user.password == login_form.password.data:
			login_user(user)
			flash("Logged in")
		else:
			flash("Invalid login")
	user_r = User.query.order_by(User.id).all()

	if message_form.validate_on_submit():
		message = Message(message_form.name.data,message_form.email.data,message_form.message.data)
		db.session.add(message)
		db.session.commit()
		flash("Successfully sent")

	message_r = Message.query.order_by(Message.id).all()


	return render_template('homepage.html',
						   login_form = login_form,
						   message_form = message_form,
						   new_user_form = new_user_form,
						   user_r = user_r,
						   message_r = message_r)
Exemple #7
0
def EditUser(id):
	edit_user_form = UserForm()
	user = User.query.get(id)

	if edit_user_form.validate_on_submit():

		user.username = edit_user_form.username.data
		user.email =  edit_user_form.email.data
		user.password = edit_user_form.password.data

		db.session.commit()	
		return redirect(url_for('index'))

	return render_template('user_edit.html',
		                   user = user,
		                   edit_user_form = edit_user_form)
def edit(login):
    if current_user.is_authenticated and current_user.is_manager():
        form = UserForm()

        if form.is_submitted():
            #Obtem usuário cadastrado no banco de dados
            usuario = Usuario.query.filter_by(login_usuario=login).first()

            #Informações do formulário
            nome = form.nome.data
            email = form.email.data.lower()
            senha = form.senha.data
            tipo = form.tipo.data.lower()
            situacao = form.situacao.data.lower()

            #Altera informações para alteração no banco de dados
            usuario.nome_usuario = nome
            usuario.email_usuario = email
            if senha:
                usuario.set_password(senha)
            usuario.tipo_usuario = tipo
            usuario.situacao_usuario = situacao

            #Grava no banco de dados
            db.session.add(usuario)
            db.session.commit()

            return redirect(url_for('list'))
        else:
            usuario = Usuario.query.filter_by(login_usuario=login).first()

            if usuario:
                #carrega campos de seleção
                funcionario = Funcionario.query.filter_by(
                    id_funcionario=usuario.funcionario_id_funcionario).first()
                form.id_funcionario.choices = [(funcionario.id_funcionario,
                                                funcionario.nome_funcionario)]
                form.tipo.default = usuario.tipo_usuario.capitalize()
                form.situacao.default = usuario.situacao_usuario.capitalize()
                form.process()
            return render_template('user/user_edit.html',
                                   form=form,
                                   usuario=usuario)

    return redirect('pagina-inicial')
def register():
    #Guarda de rota, apenas usuário autenticado e que for gerente pode registrar
    if current_user.is_authenticated and current_user.is_manager():
        form = UserForm()

        if form.is_submitted():
            #Obtem informações do formulário de registro
            nome = form.nome.data
            email = form.email.data.lower()
            login = form.login.data.lower()
            senha = form.senha.data
            tipo = form.tipo.data.lower()
            situacao = form.situacao.data.lower()
            id_funcionario = form.id_funcionario.data

            #Cria objeto Usuario
            usuario = Usuario(login=login,
                              senha=senha,
                              nome=nome,
                              email=email,
                              tipo=tipo,
                              situacao=situacao,
                              id_funcionario=id_funcionario)

            #Grava no banco de dados
            db.session.add(usuario)
            db.session.commit()

            #Redireciona para lista de usuários
            return redirect(url_for('list'))

        #carrega combo box com a lista de funcionários
        elif not form.id_funcionario.data:
            form.id_funcionario.choices = Funcionario.list_of_functionaries()
            form.process()

        return render_template('user/user_register.html', form=form)

    return redirect('pagina-inicial')
def register():
    form = UserForm()

    if form.validate_on_submit():
        existsUsername = User.query.filter_by(
            username=form.username.data).first()
        if existsUsername:
            flash("Usuário já existente com este username")
            return redirect(url_for("index"))

        existsEmail = User.query.filter_by(email=form.email.data).first()
        if existsEmail:
            flash("Usuário já existente com este e-mail")
            return redirect(url_for("index"))

        token = urlSafeSerializer.dumps(form.email.data, salt='email-confirm')

        user = User(username=form.username.data,
                    password=form.password.data,
                    name=form.name.data,
                    email=form.email.data)
        user.hash_password(password=form.password.data)
        user.set_token(token=token)
        db.session.add(user)
        db.session.commit()

        msg = MSGMAIL('Confirm Email',
                      sender=app.config['MAIL_USERNAME'],
                      recipients=[form.email.data])
        link = url_for('confirm_email', token=token, _external=True)
        msg.body = 'Seu link para validação é {}'.format(link)
        mail.send(msg)

        flash("Usuário criado com sucesso")
        return redirect(url_for("index"))

    return render_template('register.html', form=form)
def profile(id):
    seguindo = False
    form = UserForm()
    usuario = User.query.filter_by(id=id).first()
    posts = Post.query.filter_by(user_id=id).all()
    totalseguindo = Follow.query.filter_by(user_id=usuario.id).count()
    totalseguidores = Follow.query.filter_by(follower_id=usuario.id).count()
    if usuario.id != current_user.id:
        follow = Follow.query.filter_by(follower_id=usuario.id).first()
        if follow:
            seguindo = True
        else:
            seguindo = False

    return render_template("profile.html",
                           usuario=usuario,
                           posts=posts,
                           form=form,
                           seguindo=seguindo,
                           totalseguindo=totalseguindo,
                           totalseguidores=totalseguidores)
def imgprofile(id):
    form = UserForm()
    usuario = User.query.filter_by(id=id).first()
    filename = ''
    file = request.files['file']
    if file and allowed_file(file.filename):
        filename = secure_filename(file.filename)
        file.save(os.path.join(app.config['UPLOAD_FOLDER_PROFILE'], filename))
        if usuario.image:
            os.remove(
                os.path.join(app.config['UPLOAD_FOLDER_PROFILE'],
                             usuario.image))
    else:
        flash('Arquivo não permitido')
        return redirect(url_for("profile", id=usuario.id, form=form))

    usuario.image = filename
    db.session.add(usuario)
    db.session.commit()
    flash("Imagem enviada com sucesso")

    return redirect(url_for("profile", id=usuario.id, form=form))