26 lines
787 B
Python

from flask_login import UserMixin
from db.SQLiteClient import create_user, get_user, get_user_by_email
class User(UserMixin):
def __init__(self, id: int, name: str, email: str, password: str | None = None):
self.id = id
self.name = name
self.email = email
self.password = password
@staticmethod
def create(name: str, email: str, password: str):
id = create_user(name, email, password)
return User(id, name, email)
@staticmethod
def get(id: int):
user = get_user(id)
return User(user[0], user[1], user[2], user[3]) if user else None
@staticmethod
def get_by_email(email: str):
user = get_user_by_email(email)
return User(user[0], user[1], user[2], user[3]) if user else None