Spaces:
Paused
Paused
Auth: dual password_hash/hashed_password for User model
Browse files
backend/core/auth_endpoints.py
CHANGED
|
@@ -170,15 +170,20 @@ async def register_user(user_data: UserCreate, db: Session = Depends(get_db)):
|
|
| 170 |
if db.query(User).filter(User.email == user_data.email).first():
|
| 171 |
raise HTTPException(status_code=400, detail="Email already registered")
|
| 172 |
|
| 173 |
-
# Create new user
|
| 174 |
-
|
| 175 |
-
|
| 176 |
-
|
| 177 |
-
first_name
|
| 178 |
-
last_name
|
| 179 |
-
role
|
| 180 |
-
status
|
| 181 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 182 |
|
| 183 |
db.add(new_user)
|
| 184 |
db.commit()
|
|
|
|
| 170 |
if db.query(User).filter(User.email == user_data.email).first():
|
| 171 |
raise HTTPException(status_code=400, detail="Email already registered")
|
| 172 |
|
| 173 |
+
# Create new user — support both password_hash and hashed_password column names
|
| 174 |
+
pwd = get_password_hash(user_data.password)
|
| 175 |
+
user_kwargs = {
|
| 176 |
+
"email": user_data.email,
|
| 177 |
+
"first_name": user_data.first_name,
|
| 178 |
+
"last_name": user_data.last_name,
|
| 179 |
+
"role": UserRole.MEMBER.value,
|
| 180 |
+
"status": UserStatus.ACTIVE.value if hasattr(UserStatus.ACTIVE, "value") else UserStatus.ACTIVE,
|
| 181 |
+
}
|
| 182 |
+
if hasattr(User, "password_hash"):
|
| 183 |
+
user_kwargs["password_hash"] = pwd
|
| 184 |
+
if hasattr(User, "hashed_password"):
|
| 185 |
+
user_kwargs["hashed_password"] = pwd
|
| 186 |
+
new_user = User(**user_kwargs)
|
| 187 |
|
| 188 |
db.add(new_user)
|
| 189 |
db.commit()
|