diff options
author | Torsten Grote <t@grobox.de> | 2021-12-08 15:46:15 -0300 |
---|---|---|
committer | Torsten Grote <t@grobox.de> | 2021-12-08 15:46:15 -0300 |
commit | 5c525667c77d945abb85e5f0b2469fb5af376fce (patch) | |
tree | 4c73e785f64664e1b045be2ce6736dbb299cbc8d /wallet/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt | |
parent | 71be094780464c2b97a4cb6b33dd7f465647c082 (diff) | |
download | taler-android-5c525667c77d945abb85e5f0b2469fb5af376fce.tar.gz taler-android-5c525667c77d945abb85e5f0b2469fb5af376fce.tar.bz2 taler-android-5c525667c77d945abb85e5f0b2469fb5af376fce.zip |
Add a button to cancel manual withdrawal
Diffstat (limited to 'wallet/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt')
-rw-r--r-- | wallet/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/wallet/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt b/wallet/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt index 858d63e..fbb5c18 100644 --- a/wallet/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt +++ b/wallet/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt @@ -63,6 +63,7 @@ sealed class WithdrawStatus { val iban: String, val subject: String, val amountRaw: Amount, + val transactionId: String?, ) : WithdrawStatus() data class Error(val message: String?) : WithdrawStatus() @@ -241,8 +242,7 @@ class WithdrawManager( amount = status.amountRaw, exchangeBaseUrl = status.exchangeBaseUrl, // TODO what if there's more than one or no URI? - uriStr = "payto://iban/ASDQWEASDZXCASDQWE?amount=KUDOS%3A10&message=Taler+Withdrawal+P2T19EXRBY4B145JRNZ8CQTD7TCS03JE9VZRCEVKVWCP930P56WG", // response.exchangePaytoUris[0], - // "payto://x-taler-bank/bank.demo.taler.net/Exchange?amount=KUDOS%3A10&message=Taler+Withdrawal+P2T19EXRBY4B145JRNZ8CQTD7TCS03JE9VZRCEVKVWCP930P56WG" + uriStr = response.exchangePaytoUris[0], ) } } @@ -258,6 +258,7 @@ class WithdrawManager( * Don't call this from ongoing withdrawal processes as it destroys state. */ fun viewManualWithdrawal(status: WithdrawStatus.ManualTransferRequired) { + require(status.transactionId != null) { "No transaction ID given" } withdrawStatus.value = status } @@ -267,6 +268,7 @@ fun createManualTransferRequired( amount: Amount, exchangeBaseUrl: String, uriStr: String, + transactionId: String? = null, ): WithdrawStatus.ManualTransferRequired { val uri = Uri.parse(uriStr) return WithdrawStatus.ManualTransferRequired( @@ -275,5 +277,6 @@ fun createManualTransferRequired( iban = uri.lastPathSegment!!, subject = uri.getQueryParameter("message")!!, amountRaw = amount, + transactionId = transactionId, ) } |