feat: Update endpoint login

This commit is contained in:
Backend IM Bot 2025-03-18 13:33:20 +00:00
parent f8ac869eb1
commit 7255ab7fcd

View File

@ -1,25 +1,48 @@
from fastapi import APIRouter, Depends, HTTPException from fastapi import APIRouter, Depends, HTTPException
from core.auth import get_current_user_dummy
from core.database import fake_users_db from core.database import fake_users_db
import uuid
import random
import string
router = APIRouter() router = APIRouter()
@router.post("/login") @router.post("/signup-codes")
async def login_demo( async def generate_signup_codes(
username: str = "demo", count: int = 1,
password: str = "password" length: int = 8,
prefix: str = ""
): ):
"""Demo login endpoint""" """Generate unique signup invitation codes"""
user = fake_users_db.get(username) codes = []
if not user or user["password"] != password: existing_codes = [user.get("signup_code") for user in fake_users_db.values()]
raise HTTPException(status_code=400, detail="Invalid credentials")
for _ in range(count):
while True:
code = prefix + ''.join(random.choices(
string.ascii_uppercase + string.digits,
k=length
))
if code not in existing_codes:
codes.append(code)
break
# Store codes in database for future validation
batch_id = str(uuid.uuid4())
for code in codes:
fake_users_db[f"signup_code_{code}"] = {
"code": code,
"batch_id": batch_id,
"used": False,
"created_at": "2024-01-01T00:00:00Z" # Demo timestamp
}
return { return {
"message": "Login successful (demo)", "message": f"Successfully generated {count} signup codes",
"user": username, "batch_id": batch_id,
"token": "dummy_jwt_token_123", "codes": codes,
"features": { "metadata": {
"rate_limit": 100, "prefix": prefix,
"expires_in": 3600 "length": length,
"expires_in": "30 days"
} }
} }