From b791c490b7895608a25cb766fab9adfb6369f8d8 Mon Sep 17 00:00:00 2001 From: Niklas Meinzer Date: Sat, 14 Feb 2026 14:15:51 +0100 Subject: [PATCH] Demo mode: Add demo account --- src/allmende_payment_system/database.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/allmende_payment_system/database.py b/src/allmende_payment_system/database.py index 5bff15b..9365dae 100644 --- a/src/allmende_payment_system/database.py +++ b/src/allmende_payment_system/database.py @@ -1,7 +1,8 @@ +import os from sqlalchemy import create_engine, select 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" engine = create_engine(SQLALCHEMY_DATABASE_URL) @@ -38,4 +39,11 @@ def ensure_user(user_info: dict, session: Session) -> User: session.add(user) 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