diff options
author | Iván Ávalos <avalos@disroot.org> | 2023-11-01 17:52:26 -0600 |
---|---|---|
committer | Torsten Grote <t@grobox.de> | 2023-11-07 11:07:40 -0300 |
commit | 8372c75bbb59c295f25c830fbdc08006e97c2e4c (patch) | |
tree | c7c358c39593768c407e001b57cf694f4833daad /wallet/src/main/java/net/taler/wallet/transactions/ActionButtonComposable.kt | |
parent | 4aaf6600edc8ee82c53685a023d93807202b494b (diff) | |
download | taler-android-8372c75bbb59c295f25c830fbdc08006e97c2e4c.tar.gz taler-android-8372c75bbb59c295f25c830fbdc08006e97c2e4c.tar.bz2 taler-android-8372c75bbb59c295f25c830fbdc08006e97c2e4c.zip |
[wallet] Upgrade KYC to new API
Diffstat (limited to 'wallet/src/main/java/net/taler/wallet/transactions/ActionButtonComposable.kt')
-rw-r--r-- | wallet/src/main/java/net/taler/wallet/transactions/ActionButtonComposable.kt | 29 |
1 files changed, 10 insertions, 19 deletions
diff --git a/wallet/src/main/java/net/taler/wallet/transactions/ActionButtonComposable.kt b/wallet/src/main/java/net/taler/wallet/transactions/ActionButtonComposable.kt index d4c12aa..778b985 100644 --- a/wallet/src/main/java/net/taler/wallet/transactions/ActionButtonComposable.kt +++ b/wallet/src/main/java/net/taler/wallet/transactions/ActionButtonComposable.kt @@ -28,9 +28,10 @@ import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.res.stringResource import net.taler.wallet.R -import net.taler.wallet.backend.TalerErrorCode +import net.taler.wallet.transactions.TransactionMajorState.Pending +import net.taler.wallet.transactions.TransactionMinorState.BankConfirmTransfer +import net.taler.wallet.transactions.TransactionMinorState.KycRequired import net.taler.wallet.transactions.WithdrawalDetails.ManualTransfer -import net.taler.wallet.transactions.WithdrawalDetails.TalerBankIntegrationApi interface ActionListener { enum class Type { @@ -48,25 +49,15 @@ fun ActionButton( tx: TransactionWithdrawal, listener: ActionListener, ) { - if (tx.error != null) { - // There is an error! - when (tx.error.code) { - TalerErrorCode.WALLET_WITHDRAWAL_KYC_REQUIRED -> { - KycButton(modifier, tx, listener) - } + // TODO: translate manual transfer to DD37 equivalent + if (tx.error == null && !tx.confirmed && tx.withdrawalDetails is ManualTransfer) { + ConfirmManualButton(modifier, tx, listener) + } else if (tx.txState.major == Pending) { + when (tx.txState.minor) { + KycRequired -> KycButton(modifier, tx, listener) + BankConfirmTransfer -> ConfirmBankButton(modifier, tx, listener) else -> {} } - } else if (!tx.confirmed) { - // There is a transaction! - if (tx.withdrawalDetails is TalerBankIntegrationApi && - tx.withdrawalDetails.bankConfirmationUrl != null - ) { - // The transaction can be completed with a link! - ConfirmBankButton(modifier, tx, listener) - } else if (tx.withdrawalDetails is ManualTransfer) { - // The transaction must be completed manually! - ConfirmManualButton(modifier, tx, listener) - } } } |