From 6b9f1083da2322495daa29e099920cf3d771ad83 Mon Sep 17 00:00:00 2001 From: Backend IM Bot Date: Mon, 24 Mar 2025 21:08:42 +0000 Subject: [PATCH] Update code in endpoints/signup.post.py --- endpoints/signup.post.py | 71 ++++++++++++++++++---------------------- 1 file changed, 31 insertions(+), 40 deletions(-) diff --git a/endpoints/signup.post.py b/endpoints/signup.post.py index 77e4d09..6d25ce6 100644 --- a/endpoints/signup.post.py +++ b/endpoints/signup.post.py @@ -1,50 +1,41 @@ -from fastapi import APIRouter, HTTPException, Depends -from sqlalchemy.orm import Session -from pydantic import BaseModel -from core.database import get_db -from core.auth import get_password_hash, create_access_token +from fastapi import APIRouter, HTTPException import uuid -from models.user import User + +# In-memory storage +users = [] +posts = [] router = APIRouter() -class UserCreate(BaseModel): - username: str - email: str - password: str - @router.post("/signup") -async def signup( - user_data: UserCreate, - db: Session = Depends(get_db) +async def signup_user( + username: str, + email: str, + password: str ): - """User registration endpoint""" - # Check existing user - db_user = db.query(User).filter( - (User.username == user_data.username) | - (User.email == user_data.email) - ).first() - - if db_user: - raise HTTPException( - status_code=400, - detail="Username or email already exists" - ) + """Create new user account""" + if any(u["username"] == username for u in users): + raise HTTPException(status_code=400, detail="Username already exists") + + if any(u["email"] == email for u in users): + raise HTTPException(status_code=400, detail="Email already registered") - # Create new user - new_user = User( - id=str(uuid.uuid4()), - username=user_data.username, - email=user_data.email, - hashed_password=get_password_hash(user_data.password) - ) - - db.add(new_user) - db.commit() + user_id = str(uuid.uuid4()) + user = { + "id": user_id, + "username": username, + "email": email, + "password": password, + "disabled": False + } + users.append(user) - # Return token directly after registration return { "message": "User created successfully", - "access_token": create_access_token({"sub": new_user.id}), - "token_type": "bearer" - } + "user_id": user_id, + "username": username, + "next_steps": [ + "Verify your email", + "Complete profile setup" + ] + } \ No newline at end of file