user process
This commit is contained in:
parent
36da53a562
commit
842c127817
2 changed files with 101 additions and 3 deletions
|
|
@ -1,10 +1,12 @@
|
|||
from fastapi import APIRouter, Depends, HTTPException, status
|
||||
from .models import Token, UserPublic, authenticate_user, create_access_token, UserCreate, register_user
|
||||
from fastapi import APIRouter, Depends, HTTPException, status, BackgroundTasks
|
||||
from .models import Token, UserPublic, authenticate_user, create_access_token, UserCreate, find_user_w_email, get_current_user, register_user, send_password_to_email, update_password_w_user
|
||||
from datetime import timedelta
|
||||
from typing import Annotated
|
||||
from ..config import get_session_db
|
||||
from fastapi.security import OAuth2PasswordRequestForm
|
||||
from sqlalchemy.orm import Session
|
||||
from pydantic.networks import EmailStr
|
||||
|
||||
|
||||
router = APIRouter(
|
||||
prefix="/auth",
|
||||
|
|
@ -41,4 +43,33 @@ async def create_user(
|
|||
|
||||
return register_user(session, user)
|
||||
|
||||
@router.post('/password_reset')
|
||||
async def password_reset(
|
||||
session : Annotated[Session, Depends(get_session_db)],
|
||||
email : Annotated[EmailStr, None] = None,
|
||||
task: Annotated[BackgroundTasks, None] = None, # BackgroundTasks, task'ı arka planda çalıştırmak için kullanıyoruz
|
||||
):
|
||||
|
||||
if not find_user_w_email(session, email):
|
||||
return HTTPException(
|
||||
status_code=status.HTTP_404_NOT_FOUND,
|
||||
detail="bad request",
|
||||
)
|
||||
|
||||
task.add_task(send_password_to_email, session, email)
|
||||
|
||||
return {"message": "New password has been sent to your email."}
|
||||
|
||||
@router.post('/update_password')
|
||||
async def update_password(
|
||||
user: Annotated[str, Depends(get_current_user)],
|
||||
session: Annotated[Session, Depends(get_session_db)],
|
||||
new_password: Annotated[str, None] = None,
|
||||
) -> dict:
|
||||
|
||||
update_password_w_user(session, user, new_password)
|
||||
|
||||
return {"message": "Password updated successfully."}
|
||||
|
||||
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue