
    ]*`i                        d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	m
Z
mZmZmZ d dlZd dlZ e	       Zej#                  eg ddd	gd	g
       ej%                  d      defd       Zej%                  d      dedefd       Zy)    )
MethodType)Json)queryDB)CORSMiddleware)FastAPI	WebSocketWebSocketDisconnectRequestResponseN)zhttp://localhost:5173zhttp://192.168.18.55:5173zhttp://192.168.18.55:4173T )allow_originsallow_credentialsallow_methodsallow_headersz/api/checkTokenrequestc                 z    | j                   j                  d      }|t        d|f      v ry|t        d|f      v ryy)N
accesTokenz1select tokens from bannedTokens where tokens = %sbannedCredentialz/select tokens from userTokens where tokens = %svalidCredentialF)cookiesgetr   )r   
credentials     /var/www/CCS/BackEnd/main.pycheckTokenInDbr      sG    ""<0JWPR\Q^__!	wPR\Q^_	_     z/api/loginTokenresponsec                     | j                   }|d   }|d   }t        d|f      }t        d|f      }t        j                  |ddddd	      }|j	                  d
|dddd       y )Nuserpwdz)select password from user where name = %sz#select id from user where name = %si  access)subexptypezzxASqw!"HS256	authTokenTFlax)httponlysecuresamesitemax_age)jsonr   jwtencode
set_cookie)r   r   r   r   r   	hashedPwduserIdtokens           r   setTokenIfCorrectr2      s~    ||J	F	D5CA4'JI8$AFJJ W	E
 E4ue\`ar   )typesr   pydanticr   functionability.functionsr   fastapi.middleware.corsr   fastapir   r   r	   r
   r   bcryptr,   appadd_middlewarepostr   r2    r   r   <module>r=      s      - 2 N N i   c$$   
G   
bt bx b br   