Skip to content
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
adjusts backend
  • Loading branch information
otitamario committed Nov 21, 2022
commit 9c2563e75c17ce9eabc4b693107d8c162f34b4e4
2 changes: 1 addition & 1 deletion backend/app/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

app.include_router(auth.router, tags=['Auth'], prefix='/api/auth')
app.include_router(user.router, tags=['Users'], prefix='/api/users')
app.include_router(project.router, tags=['Posts'], prefix='/api/projects')
app.include_router(project.router, tags=['Projects'], prefix='/api/projects')


@app.get('/api/healthchecker')
Expand Down
6 changes: 3 additions & 3 deletions backend/app/oauth2.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,8 @@ class UserNotFound(Exception):
def require_user(db: Session = Depends(get_db), Authorize: AuthJWT = Depends()):
try:
Authorize.jwt_required()
user_id = Authorize.get_jwt_subject()
user = db.query(models.User).filter(models.User.id == user_id).first()
username = Authorize.get_jwt_subject()
user = db.query(models.User).filter(models.User.username== username).first()

if not user:
raise UserNotFound('User no longer exist')
Expand All @@ -56,4 +56,4 @@ def require_user(db: Session = Depends(get_db), Authorize: AuthJWT = Depends()):
status_code=status.HTTP_401_UNAUTHORIZED, detail='User no longer exist')
raise HTTPException(
status_code=status.HTTP_401_UNAUTHORIZED, detail='Token is invalid or has expired')
return user_id
return username
4 changes: 2 additions & 2 deletions backend/app/routers/auth.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,11 +58,11 @@ def login(payload: schemas.LoginUserSchema, response: Response, db: Session = De

# Create access token
access_token = Authorize.create_access_token(
subject=str(user.id), expires_time=int(time.time()+ACCESS_TOKEN_EXPIRES_IN))
subject=str(user.username), expires_time=int(time.time()+ACCESS_TOKEN_EXPIRES_IN))

# Create refresh token
refresh_token = Authorize.create_refresh_token(
subject=str(user.id), expires_time=int(time.time()+REFRESH_TOKEN_EXPIRES_IN))
subject=str(user.username), expires_time=int(time.time()+REFRESH_TOKEN_EXPIRES_IN))

token_response={'status': 'success','user':user.username ,'token':{'access_token':access_token,'refresh_token':refresh_token}}

Expand Down
3 changes: 2 additions & 1 deletion backend/app/routers/project.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@


@router.get('/', response_model=schemas.ListProjectResponse)
def get_projects(db: Session = Depends(get_db), limit: int = 10, page: int = 1, search: str = '', user_id: str = Depends(require_user)):
def get_projects(db: Session = Depends(get_db), limit: int = 10, page: int = 1, search: str = '', username: str = Depends(require_user)):
skip = (page - 1) * limit

projects = db.query(models.Project).group_by(models.Project.id).filter(
Expand All @@ -19,6 +19,7 @@ def get_projects(db: Session = Depends(get_db), limit: int = 10, page: int = 1,

@router.post('/', status_code=status.HTTP_201_CREATED, response_model=schemas.ProjectResponse)
def create_project(project: schemas.CreateProjectSchema, db: Session = Depends(get_db), owner_username: str = Depends(require_user)):
print(owner_username)
project.username = owner_username
new_project = models.Project(**project.dict())
db.add(new_project)
Expand Down
4 changes: 2 additions & 2 deletions backend/app/routers/user.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,6 @@


@router.get('/me', response_model=schemas.UserResponse)
def get_me(db: Session = Depends(get_db), user_id: str = Depends(oauth2.require_user)):
user = db.query(models.User).filter(models.User.id == user_id).first()
def get_me(db: Session = Depends(get_db), username: str = Depends(oauth2.require_user)):
user = db.query(models.User).filter(models.User.username == username).first()
return user