|
4 | 4 | import logging
|
5 | 5 | from datetime import datetime
|
6 | 6 | from decimal import Decimal
|
| 7 | +from functools import partial |
7 | 8 | from schwifty import IBAN
|
8 | 9 |
|
9 | 10 | from babel.numbers import format_currency
|
@@ -669,20 +670,16 @@ def request_repayment_confirm():
|
669 | 670 | """
|
670 | 671 |
|
671 | 672 | beneficiary = request.args.get("beneficiary", None)
|
672 |
| - iban = request.args.get("iban", None, lambda x: IBAN(x, validate_bban=True)) |
673 |
| - amount = request.args.get("amount", None, lambda x: Decimal(x)) |
| 673 | + iban = request.args.get("iban", None, partial(IBAN, validate_bban=True)) |
| 674 | + amount = request.args.get("amount", None, Decimal) |
674 | 675 |
|
675 | 676 | form = RequestRepaymentConfirmForm()
|
676 | 677 |
|
677 | 678 | if None not in (beneficiary, iban, amount):
|
678 | 679 | balance = current_user.finance_information.balance.raw_value
|
679 |
| - iban_str = str(iban) |
680 | 680 |
|
681 | 681 | form.beneficiary.data = beneficiary
|
682 |
| - # Insert a space every 4 characters of the IBAN |
683 |
| - form.iban.data = " ".join( |
684 |
| - iban_str[i : i + 4] for i in range(0, len(iban_str), 4) |
685 |
| - ) |
| 682 | + form.iban.data = iban.formatted |
686 | 683 | form.bic.data = str(iban.bic)
|
687 | 684 | form.bank.data = iban.bank_name
|
688 | 685 | form.amount.data = amount
|
|
0 commit comments