17 lines
549 B
Python
17 lines
549 B
Python
import jwt
|
|
from fastapi import Cookie, Depends
|
|
from functions.admin.models import token, database
|
|
|
|
|
|
def is_logged_in(access_token: str = Cookie(None), db=Depends(database.get_db)):
|
|
if not access_token:
|
|
return False
|
|
response = db.query(token.Token).filter(token.Token.access_token == access_token).first()
|
|
if not response or not response.is_active:
|
|
return False
|
|
try:
|
|
jwt.decode(access_token, "secret", algorithms=["HS256"])
|
|
except jwt.exceptions.ExpiredSignatureError:
|
|
return False
|
|
return True
|