diff options
author | Marcello Stanisci <marcello.stanisci@inria.fr> | 2017-03-23 15:00:13 +0100 |
---|---|---|
committer | Marcello Stanisci <marcello.stanisci@inria.fr> | 2017-03-23 15:00:13 +0100 |
commit | 6f7b1f54caac1415c9dcf79fccab4fa6e8c2c53f (patch) | |
tree | 1ae5e2d866e13460401d80b16287ea16af8d03e8 /talerbank/app | |
parent | 11a7e1ec7db25f5658bd28d26b7f9641b21edf01 (diff) | |
download | bank-6f7b1f54caac1415c9dcf79fccab4fa6e8c2c53f.tar.gz bank-6f7b1f54caac1415c9dcf79fccab4fa6e8c2c53f.tar.bz2 bank-6f7b1f54caac1415c9dcf79fccab4fa6e8c2c53f.zip |
Better creation of initial accounts, logging statements.
Diffstat (limited to 'talerbank/app')
-rw-r--r-- | talerbank/app/management/commands/provide_accounts.py | 13 | ||||
-rw-r--r-- | talerbank/app/views.py | 22 |
2 files changed, 26 insertions, 9 deletions
diff --git a/talerbank/app/management/commands/provide_accounts.py b/talerbank/app/management/commands/provide_accounts.py index 421f896..54d0206 100644 --- a/talerbank/app/management/commands/provide_accounts.py +++ b/talerbank/app/management/commands/provide_accounts.py @@ -40,8 +40,10 @@ def demo_accounts(): def ensure_account(name): + logger.info("ensuring account '{}'".format(name)) + user = None try: - User.objects.get(username=name) + user = User.objects.get(username=name) except (OperationalError, ProgrammingError): logger.error("likely causes: non existent DB or unmigrated project\n" "(try 'taler-bank-manage django migrate' in the latter case)", @@ -49,13 +51,18 @@ def ensure_account(name): exc_info=True) sys.exit(1) except User.DoesNotExist: + logger.info("Creating *user* account '{}'".format(name)) user = User.objects.create_user(username=name, password='') + + try: + BankAccount.objects.get(user=user) + + except BankAccount.DoesNotExist: acc = BankAccount(user=user, currency=settings.TALER_CURRENCY, is_public=True) acc.save() - logger.info("Creating account '%s', with number %s", name, acc.account_no) - + logger.info("Creating *bank* account number '{}' for user '{}'".format(acc.account_no, name)) def basic_accounts(): ensure_account("Bank") diff --git a/talerbank/app/views.py b/talerbank/app/views.py index dfc62d7..8618316 100644 --- a/talerbank/app/views.py +++ b/talerbank/app/views.py @@ -111,6 +111,7 @@ def profile_page(request): just_registered=just_registered, use_js=use_js, ) + logger.info("Profile context: '%s'", json.dumps(context)) if settings.TALER_SUGGESTED_EXCHANGE: context["suggested_exchange"] = settings.TALER_SUGGESTED_EXCHANGE @@ -259,11 +260,14 @@ def register(request): return render(request, "register.html", dict(not_available=True)) with transaction.atomic(): user = User.objects.create_user(username=username, password=password) + logger.info("Registering user using '%s' currency", settings.TALER_CURRENCY) user_account = BankAccount(user=user, currency=settings.TALER_CURRENCY) user_account.save() bank_internal_account = BankAccount.objects.get(account_no=1) amount = dict(value=100, fraction=0, currency=settings.TALER_CURRENCY) try: + logger.info("debit account: '%s', credit account: '%s'" % \ + (bank_internal_account.user.username, user_account.user.username)) wire_transfer(amount, bank_internal_account, user_account, "Joining bonus") except DebtLimitExceededException: logger.info("Debt situation encountered") @@ -397,22 +401,28 @@ def wire_transfer(amount, subject=subject) if debit_account.debit: - debit_account.balance_obj = amounts.amount_add(debit_account.balance_obj, amount) + debit_account.balance_obj = amounts.amount_add(debit_account.balance_obj, + amount) elif -1 == amounts.amount_cmp(debit_account.balance_obj, amount): debit_account.debit = True - debit_account.balance_obj = amounts.amount_sub(amount, debit_account.balance_obj) + debit_account.balance_obj = amounts.amount_sub(amount, + debit_account.balance_obj) else: - debit_account.balance_obj = amounts.amount_sub(debit_account.balance_obj, amount) + debit_account.balance_obj = amounts.amount_sub(debit_account.balance_obj, + amount) if False == credit_account.debit: - credit_account.balance_obj = amounts.amount_add(credit_account.balance_obj, amount) + credit_account.balance_obj = amounts.amount_add(credit_account.balance_obj, + amount) elif 1 == amounts.amount_cmp(amount, credit_account.balance_obj): credit_account.debit = False - credit_account.balance_obj = amounts.amount_sub(amount, credit_account.balance_obj) + credit_account.balance_obj = amounts.amount_sub(amount, + credit_account.balance_obj) else: - credit_account.balance_obj = amounts.amount_sub(credit_account.balance_obj, amount) + credit_account.balance_obj = amounts.amount_sub(credit_account.balance_obj, + amount) # Check here if any account went beyond the allowed # debit threshold. |