Graduation / Logic /Login.py
Mohammedallyl's picture
Upload 27 files
c4dc0b3 verified
raw
history blame
2.06 kB
from fastapi import APIRouter,Form
from passlib.context import CryptContext
from pydantic import BaseModel
import sqlite3
class DataType(BaseModel):
AdminEmail:str=Form(...)
AdminPassword:str=Form(...)
LogInRouter=APIRouter()
@LogInRouter.post("/Login")
def adduser(AdminEmail:str=Form(...),AdminPassword:str=Form(...),Type:str=Form(...)):
try:
# #mohammed*123#
pwd_context=CryptContext(schemes=["bcrypt"],deprecated="auto")
if Type=="Admin":
AdminPasswordq="$2b$12$33H14GFBvtomzLrEaM6Tqu7Jr621eHlXL9TVtdPU6YCljxc4eug2a"
if AdminEmail =="Mhammed@Admin.com":
if pwd_context.verify( AdminPassword,AdminPasswordq):
return {"Status":True,
"Data":{"AdminEmail":"Mhammed@Admin.com",
"AdminPassword":AdminPasswordq
}}
else:
return {"Status":False,"Message":" Admin Email or Password is not correct "}
else:
return {"Status":False,"Message":" Admin Email or Password is not correct "}
else:
connect=sqlite3.connect("DataBase/DataBase.bd")
State=False
cursor=connect.execute(f'''
SELECT UserId,Password FROM Users where Email='{AdminEmail}'
''')
Data=cursor.fetchall()
if len(Data) !=0 :
if Data[0][0]==None:
return {"Status":False,"Message":"User Is Not Defined Before"}
HasedPassword=Data[0][1]
UserId=Data[0][0]
State=pwd_context.verify( AdminPassword,HasedPassword)
if State:
return {"Status":True,
"Data":{"Email":AdminEmail,
"Password":HasedPassword,
"UserId":UserId
}}
except Exception as e :
return {"Status":False,"Message":e}