diff options
author | Torsten Grote <t@grobox.de> | 2020-03-05 13:43:38 -0300 |
---|---|---|
committer | Torsten Grote <t@grobox.de> | 2020-03-05 13:43:38 -0300 |
commit | b666242c18173344d64724496cad213e58760ef7 (patch) | |
tree | cdb78ce78423f21038b5c2a9448d600bceaad9f0 /app/src/main/java/net/taler/wallet/withdraw | |
parent | 9c7f53f6fccf55d4aa67063ab806f22c871c20e1 (diff) | |
download | wallet-android-b666242c18173344d64724496cad213e58760ef7.tar.gz wallet-android-b666242c18173344d64724496cad213e58760ef7.tar.bz2 wallet-android-b666242c18173344d64724496cad213e58760ef7.zip |
Don't restart withdrawal process after accepting ToS
Diffstat (limited to 'app/src/main/java/net/taler/wallet/withdraw')
-rw-r--r-- | app/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/app/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt b/app/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt index dec03af..8179d8d 100644 --- a/app/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt +++ b/app/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt @@ -30,7 +30,9 @@ sealed class WithdrawStatus { val talerWithdrawUri: String, val exchangeBaseUrl: String, val tosText: String, - val tosEtag: String + val tosEtag: String, + val amount: Amount, + val suggestedExchange: String ) : WithdrawStatus() object Success : WithdrawStatus() @@ -115,8 +117,13 @@ class WithdrawManager(private val walletBackendApi: WalletBackendApi) { Log.v(TAG, "ignoring withdrawal info result, not loading.") return@sendRequest } + val wi = result.getJSONObject("bankWithdrawDetails") + val suggestedExchange = wi.getString("suggestedExchange") + val amount = Amount.fromJson(wi.getJSONObject("amount")) + val ei = result.getJSONObject("exchangeWithdrawDetails") val termsOfServiceAccepted = ei.getBoolean("termsOfServiceAccepted") + if (!termsOfServiceAccepted) { val exchange = ei.getJSONObject("exchangeInfo") val tosText = exchange.getString("termsOfServiceText") @@ -126,13 +133,12 @@ class WithdrawManager(private val walletBackendApi: WalletBackendApi) { status.talerWithdrawUri, selectedExchange, tosText, - tosEtag + tosEtag, + amount, + suggestedExchange ) ) } else { - val wi = result.getJSONObject("bankWithdrawDetails") - val suggestedExchange = wi.getString("suggestedExchange") - val amount = Amount.fromJson(wi.getJSONObject("amount")) withdrawStatus.postValue( WithdrawStatus.ReceivedDetails( status.talerWithdrawUri, @@ -178,8 +184,13 @@ class WithdrawManager(private val walletBackendApi: WalletBackendApi) { if (isError) { return@sendRequest } - // Try withdrawing again with accepted ToS - getWithdrawalInfo(s.talerWithdrawUri) + withdrawStatus.postValue( + WithdrawStatus.ReceivedDetails( + s.talerWithdrawUri, + s.amount, + s.suggestedExchange + ) + ) } } } |