37 lines
994 B
Python
37 lines
994 B
Python
from sqlalchemy import Column, ForeignKey, Integer, Table
|
|
from sqlalchemy.orm import relationship
|
|
from main import db
|
|
|
|
def create_new_session(user: User) -> Session:
|
|
return
|
|
|
|
class User(db.Model):
|
|
|
|
__tablename__ = "users"
|
|
|
|
user_id = db.Column(db.Integer, primary_key=True)
|
|
password_hash = db.Column(db.Text)
|
|
user_name = db.Column(db.Text, unique=True)
|
|
sessions = relationship("Session", back_populates="user")
|
|
|
|
def set_password(self, newPassword: str):
|
|
self.password_hash = "testing"
|
|
|
|
def test_password(self, password: str) -> bool:
|
|
return True
|
|
|
|
def to_dict(self):
|
|
return {"username": self.user_name}
|
|
|
|
class Session(db.Model):
|
|
|
|
__tableanme__ = "sessions"
|
|
|
|
session_id = db.Column(db.Text, primary_key=True)
|
|
parent_id = db.Column(db.Integer, ForeignKey("users.user_id"))
|
|
issue_timestamp = db.Column(db.Integer)
|
|
user = relationship("User", back_populates="sessions")
|
|
|
|
def session_active(self):
|
|
return True
|