Spaces:
Sleeping
Sleeping
| from flask import Flask, render_template, request, redirect, url_for, session | |
| app = Flask(__name__) | |
| app.secret_key = "supersecretkey" # replace with env var in production | |
| # Simple in-memory user store (replace with DB in production) | |
| users = {"admin": "password123"} | |
| def login(): | |
| if request.method == "POST": | |
| username = request.form["username"] | |
| password = request.form["password"] | |
| if username in users and users[username] == password: | |
| session["user"] = username | |
| return redirect(url_for("dashboard")) | |
| else: | |
| return render_template("login.html", error="Invalid credentials") | |
| return render_template("login.html") | |
| def signup(): | |
| if request.method == "POST": | |
| username = request.form["username"] | |
| password = request.form["password"] | |
| if username in users: | |
| return render_template("signup.html", error="User already exists") | |
| else: | |
| users[username] = password | |
| session["user"] = username | |
| return redirect(url_for("dashboard")) | |
| return render_template("signup.html") | |
| def dashboard(): | |
| if "user" not in session: | |
| return redirect(url_for("login")) | |
| return render_template("dashboard.html", user=session["user"]) | |
| def logout(): | |
| session.pop("user", None) | |
| return redirect(url_for("login")) | |
| if __name__ == "__main__": | |
| app.run(host="0.0.0.0", port=7860) | |