poc-mvc-ocr/app/routes/login_form.py
2025-04-14 21:13:40 -03:00

31 lines
1009 B
Python

from flask import Blueprint, render_template, request, redirect, url_for, flash, session
from app.controllers.auth_controller import authenticate_user
login_bp = Blueprint("login_form", __name__, template_folder="templates")
@login_bp.route("/", methods=["GET", "POST"])
def login():
"""Rota de login"""
if request.method == "POST":
email = request.form.get("email")
password = request.form.get("password")
user, token = authenticate_user(email, password)
if user:
session["user_id"] = user.id
session["user_email"] = user.email
flash("Login bem-sucedido!", "success")
return redirect(url_for("dashboard.dashboard"))
flash("Credenciais inválidas!", "danger")
return render_template("login.html")
@login_bp.route("/logout")
def logout():
"""Rota de logout"""
session.clear()
flash("Você saiu da conta.", "info")
return redirect(url_for("login_form.login"))