forked from Anteros-Code-Mentoria/poc-mvc-ocr
50 lines
1.5 KiB
Python
50 lines
1.5 KiB
Python
from flask import Flask, render_template, request, redirect, url_for, session, flash
|
|
import os
|
|
|
|
app = Flask(__name__)
|
|
app.secret_key = 'segredo-super-seguro'
|
|
|
|
# Rota de login
|
|
@app.route('/', methods=['GET', 'POST'])
|
|
@app.route('/login', methods=['GET', 'POST'])
|
|
def login():
|
|
if request.method == 'POST':
|
|
email = request.form['email']
|
|
password = request.form['password']
|
|
if email == 'admin@admin.com' and password == '123456':
|
|
session['user'] = 'Admin'
|
|
return redirect(url_for('dashboard'))
|
|
else:
|
|
flash('Credenciais inválidas.', 'danger')
|
|
return render_template('login.html')
|
|
|
|
# Rota protegida
|
|
@app.route('/dashboard')
|
|
def dashboard():
|
|
if 'user' not in session:
|
|
return redirect(url_for('login'))
|
|
return render_template('dashboard.html', user_name=session['user'])
|
|
|
|
# Rota de upload
|
|
@app.route('/upload', methods=['GET', 'POST'])
|
|
def upload():
|
|
if 'user' not in session:
|
|
return redirect(url_for('login'))
|
|
if request.method == 'POST':
|
|
file = request.files['file']
|
|
if file:
|
|
filepath = os.path.join('uploads', file.filename)
|
|
os.makedirs('uploads', exist_ok=True)
|
|
file.save(filepath)
|
|
flash('Arquivo enviado com sucesso!', 'success')
|
|
return render_template('upload.html')
|
|
|
|
# Logout
|
|
@app.route('/logout')
|
|
def logout():
|
|
session.clear()
|
|
return redirect(url_for('login'))
|
|
|
|
if __name__ == '__main__':
|
|
app.run(debug=True, port=5003)
|