summaryrefslogtreecommitdiff
path: root/wallet/src/main/java/net/taler/wallet/MainViewModel.kt
diff options
context:
space:
mode:
authorTorsten Grote <t@grobox.de>2022-10-27 10:37:54 -0300
committerTorsten Grote <t@grobox.de>2022-10-27 10:37:54 -0300
commit431e326b1b3212bdcb975957306e45958e2e98e5 (patch)
treebdbe81c46bb91386a5b86d40d1c19a8759949dff /wallet/src/main/java/net/taler/wallet/MainViewModel.kt
parent725562a48a23ed4d0153f05a5c36f4d17875c90c (diff)
downloadtaler-android-431e326b1b3212bdcb975957306e45958e2e98e5.tar.gz
taler-android-431e326b1b3212bdcb975957306e45958e2e98e5.tar.bz2
taler-android-431e326b1b3212bdcb975957306e45958e2e98e5.zip
[wallet] Check for sufficient balance when sending funds
Diffstat (limited to 'wallet/src/main/java/net/taler/wallet/MainViewModel.kt')
-rw-r--r--wallet/src/main/java/net/taler/wallet/MainViewModel.kt11
1 files changed, 11 insertions, 0 deletions
diff --git a/wallet/src/main/java/net/taler/wallet/MainViewModel.kt b/wallet/src/main/java/net/taler/wallet/MainViewModel.kt
index 50438c4..aa9b0f1 100644
--- a/wallet/src/main/java/net/taler/wallet/MainViewModel.kt
+++ b/wallet/src/main/java/net/taler/wallet/MainViewModel.kt
@@ -26,6 +26,7 @@ import androidx.lifecycle.distinctUntilChanged
import androidx.lifecycle.viewModelScope
import kotlinx.coroutines.Job
import kotlinx.coroutines.launch
+import net.taler.common.Amount
import net.taler.common.Event
import net.taler.common.assertUiThread
import net.taler.common.toEvent
@@ -141,6 +142,16 @@ class MainViewModel(val app: Application) : AndroidViewModel(app) {
}
@UiThread
+ fun hasSufficientBalance(amount: Amount): Boolean {
+ balances.value?.forEach { balanceItem ->
+ if (balanceItem.currency == amount.currency) {
+ return balanceItem.available >= amount
+ }
+ }
+ return false
+ }
+
+ @UiThread
fun dangerouslyReset() {
api.sendRequest("reset")
withdrawManager.testWithdrawalStatus.value = null