create project and create model and dashboard

This commit is contained in:
2025-12-11 10:16:43 +05:30
parent 2371202ac3
commit 2e62320167
55 changed files with 1072 additions and 0 deletions

31
app/routes/auth.py Normal file
View File

@@ -0,0 +1,31 @@
from flask import Blueprint, request, render_template, redirect, flash, session
from app.services.user_service import UserService
auth_bp = Blueprint("auth", __name__, url_prefix="/auth")
# LOGIN PAGE
@auth_bp.route("/login", methods=["GET", "POST"])
def login():
if request.method == "POST":
user = UserService.validate_login(
request.form["email"],
request.form["password"]
)
if user:
session["user_id"] = user.id
return redirect("/dashboard")
flash("Invalid credentials", "danger")
return render_template("login.html")
# REGISTER API ONLY
@auth_bp.route("/register", methods=["POST"])
def register():
data = request.json
UserService.register_user(data["name"], data["email"], data["password"])
return {"message": "User registered successfully"}, 201
# LOGOUT
@auth_bp.route("/logout")
def logout():
session.clear()
return redirect("/auth/login")