Demo mode: Add demo account
This commit is contained in:
@@ -1,7 +1,8 @@
|
|||||||
|
import os
|
||||||
from sqlalchemy import create_engine, select
|
from sqlalchemy import create_engine, select
|
||||||
from sqlalchemy.orm import Session, sessionmaker
|
from sqlalchemy.orm import Session, sessionmaker
|
||||||
|
|
||||||
from allmende_payment_system.models import User
|
from allmende_payment_system.models import User, Account, Transaction
|
||||||
|
|
||||||
SQLALCHEMY_DATABASE_URL = "sqlite:///./aps_db.db"
|
SQLALCHEMY_DATABASE_URL = "sqlite:///./aps_db.db"
|
||||||
engine = create_engine(SQLALCHEMY_DATABASE_URL)
|
engine = create_engine(SQLALCHEMY_DATABASE_URL)
|
||||||
@@ -38,4 +39,11 @@ def ensure_user(user_info: dict, session: Session) -> User:
|
|||||||
session.add(user)
|
session.add(user)
|
||||||
session.flush()
|
session.flush()
|
||||||
|
|
||||||
|
if not "APS_PRODUCTION_MODE" in os.environ:
|
||||||
|
# when in demo mode each user gets an account with some starting balance
|
||||||
|
account = Account(name=f"Demokonto für {user.display_name}")
|
||||||
|
account.transactions.append(Transaction(total_amount=100.0, type="deposit"))
|
||||||
|
user.accounts.append(account)
|
||||||
|
session.flush()
|
||||||
|
|
||||||
return user
|
return user
|
||||||
|
|||||||
Reference in New Issue
Block a user