-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathviews_user.py
70 lines (56 loc) · 2.3 KB
/
views_user.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
from jogoteca import app, db
from flask import render_template, request, redirect, session, flash, url_for
from models import Usuarios
from helpers import FormularioUsuario, FormularioCadastro
from flask_bcrypt import check_password_hash, generate_password_hash
# Criando rota para a pagina de login
@app.route('/login')
def login():
if 'usuario_logado' in session and session['usuario_logado'] is not None:
flash('Voce ja esta logado como ' + session['usuario_logado'])
return redirect('/')
proxima = request.args.get('proxima')
form = FormularioUsuario()
return render_template('login.html', proxima=proxima, form=form)
@app.route('/autenticar', methods=['POST', ])
def autenticar():
form = FormularioUsuario(request.form)
usuario = Usuarios.query.filter_by(nickname=form.nickname.data).first()
senha = check_password_hash(usuario.senha, form.senha.data)
if usuario and senha:
session['usuario_logado'] = usuario.nickname
flash(usuario.nickname + ' logado com sucesso!')
return redirect('/')
else:
flash('Usuario nao logado!')
return redirect(url_for('login'))
@app.route('/logout')
def logout():
if session['usuario_logado'] is None:
flash('Usuario nao esta logado!')
return redirect(url_for('index'))
else:
session['usuario_logado'] = None
flash('Usuario deslogado com sucesso!')
return redirect(url_for('index'))
@app.route('/cadastro', methods=['GET', 'POST'])
def cadastro():
form = FormularioCadastro(request.form)
return render_template('cadastro.html', form=form)
@app.route('/cadastrar', methods=['GET', 'POST'])
def cadastrar():
form = FormularioCadastro()
nickname = form.nickname.data
nome = form.nome.data
senha = generate_password_hash(form.senha.data)
name = Usuarios.query.filter_by(nickname=nickname).first()
if name:
flash('Usuario ja existe!')
return redirect('cadastro')
if form.validate_on_submit():
new_user = Usuarios(nickname=nickname, nome=nome, senha=senha)
db.session.add(new_user)
db.session.commit()
flash('Conta criada com sucesso')
return redirect('/')
return render_template('cadastro.html', form=form)