aboutsummaryrefslogtreecommitdiff
path: root/api/util/validate_login_information.py
diff options
context:
space:
mode:
Diffstat (limited to 'api/util/validate_login_information.py')
-rw-r--r--api/util/validate_login_information.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/api/util/validate_login_information.py b/api/util/validate_login_information.py
new file mode 100644
index 0000000..55bbb2e
--- /dev/null
+++ b/api/util/validate_login_information.py
@@ -0,0 +1,20 @@
+import bcrypt
+from fastapi import Depends
+
+from api.util.db_dependency import get_db
+from models import User
+
+"""
+Validate the login information provided by the user
+"""
+
+
+def validate_login_information(
+ username: str, password: str, db=Depends(get_db)
+) -> bool:
+ user = db.query(User).filter(User.username == username).first()
+ if not user:
+ return False
+ if bcrypt.checkpw(password.encode("utf-8"), user.password.encode("utf-8")):
+ return True
+ return False