diff --git a/src/judas_server/web/user.py b/src/judas_server/web/user.py new file mode 100644 index 0000000..d26e40e --- /dev/null +++ b/src/judas_server/web/user.py @@ -0,0 +1,29 @@ +# -*- coding: utf-8 -*- + +from __future__ import annotations + +import flask_login + + +class User(flask_login.UserMixin): + """Represents a user for authentication purposes.""" + + def __init__(self, id: str) -> None: + super().__init__() + self.id = id + + def get_id(self) -> str: + """Return the unique identifier for the user.""" + return self.id + + def __str__(self) -> str: + return f"User(id={self.id})" + + def __repr__(self) -> str: + return f"User(id={self.id})" + + +def load_user(user_id): + if user_id == "admin": + return User("admin") + return None