summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorstilbruch <stilbruch@protonail.com>2022-03-21 18:41:08 -0500
committerstilbruch <stilbruch@protonail.com>2022-03-21 18:41:08 -0500
commit428ee3f0350d9149af4e9205001c7a836a5944a5 (patch)
treee5b21c55d0f95310d3dd3f04bc3d968cf393dc8c
parentf44fb2e0a73124ee743ebec6acdfab89dd8e1df4 (diff)
downloadStrengthy-428ee3f0350d9149af4e9205001c7a836a5944a5.tar.xz
Strengthy-428ee3f0350d9149af4e9205001c7a836a5944a5.zip
Update login code
-rw-r--r--.gitignore2
-rw-r--r--app/.gitignore1
-rw-r--r--app/login.py37
3 files changed, 38 insertions, 2 deletions
diff --git a/.gitignore b/.gitignore
index 98e6ef6..c18dd8d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1 @@
-*.db
+__pycache__/
diff --git a/app/.gitignore b/app/.gitignore
deleted file mode 100644
index c18dd8d..0000000
--- a/app/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-__pycache__/
diff --git a/app/login.py b/app/login.py
index e69de29..7e441b2 100644
--- a/app/login.py
+++ b/app/login.py
@@ -0,0 +1,37 @@
+from app import app
+from database import database_get
+from flask_login import LoginManager, UserMixin, current_user
+
+class User(UserMixin):
+ def __init__(self, id, email, password_hash):
+ self.id = unicode(id)
+ self.email = email
+ self.password_hash = password_hash
+ self.authenticated = False
+
+ def is_authenticated(self):
+ return self.authenticated
+
+ def is_active(self):
+ return True
+
+ def is_anonymous(self):
+ return False
+
+ def get_id(self):
+ return self.id
+
+login_manager = LoginManager()
+login_manager.init_app(app)
+
+@login_manager.user_loader
+def load_user(uid):
+ conn = database_get()
+ curs = conn.cursor()
+ curs.execute("SELECT * FROM users WHERE id = (?)", [uid])
+ row = curs.fetchone()
+
+ if row is None:
+ return None
+ else:
+ return User(int(row[0]), row[1], row[2])