flare / controllers /auth_controller.py
ciyidogan's picture
Update controllers/auth_controller.py
1cf29f5 verified
raw
history blame
1.68 kB
from fastapi import APIRouter, Request
from log import log
import hashlib
router = APIRouter()
mock_users = {"admin": hashlib.sha256("password123".encode()).hexdigest()}
@router.post("/login")
async def login(request: Request):
data = await request.json()
username = data.get("username")
password = data.get("password")
if not username or not password:
return {"error": "Username and password required."}
hashed_pw = hashlib.sha256(password.encode()).hexdigest()
stored_pw = mock_users.get(username)
if stored_pw and stored_pw == hashed_pw:
log(f"πŸ” User {username} logged in successfully.")
return {"message": f"User {username} logged in."}
else:
log(f"❌ Login failed for user {username}.")
return {"error": "Invalid username or password."}
@router.post("/add_user")
async def add_user(request: Request):
data = await request.json()
username = data.get("username")
password = data.get("password")
if not username or not password:
return {"error": "Username and password required."}
if username in mock_users:
return {"error": "User already exists."}
mock_users[username] = hashlib.sha256(password.encode()).hexdigest()
log(f"πŸ‘€ Added new user: {username}")
return {"message": f"User {username} added."}
@router.post("/delete_user")
async def delete_user(request: Request):
data = await request.json()
username = data.get("username")
if username not in mock_users:
return {"error": "User not found."}
del mock_users[username]
log(f"πŸ—‘οΈ Deleted user: {username}")
return {"message": f"User {username} deleted."}