gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-cashier-terminal-android] 03/06: Get and save currency when doing


From: gnunet
Subject: [taler-cashier-terminal-android] 03/06: Get and save currency when doing configuration
Date: Wed, 19 Feb 2020 21:31:57 +0100

This is an automated email from the git hooks/post-receive script.

torsten-grote pushed a commit to branch master
in repository cashier-terminal-android.

commit fc353cfdd6479ed772351f181fc66918634c93cc
Author: Torsten Grote <address@hidden>
AuthorDate: Mon Feb 10 15:34:36 2020 -0300

    Get and save currency when doing configuration
---
 app/src/main/java/net/taler/cashier/MainViewModel.kt | 20 +++++++++++++-------
 1 file changed, 13 insertions(+), 7 deletions(-)

diff --git a/app/src/main/java/net/taler/cashier/MainViewModel.kt 
b/app/src/main/java/net/taler/cashier/MainViewModel.kt
index bb94e45..9218122 100644
--- a/app/src/main/java/net/taler/cashier/MainViewModel.kt
+++ b/app/src/main/java/net/taler/cashier/MainViewModel.kt
@@ -27,6 +27,7 @@ private const val PREF_NAME = "net.taler.cashier.prefs"
 private const val PREF_KEY_BANK_URL = "bankUrl"
 private const val PREF_KEY_USERNAME = "username"
 private const val PREF_KEY_PASSWORD = "password"
+private const val PREF_KEY_CURRENCY = "currency"
 
 class MainViewModel(private val app: Application) : AndroidViewModel(app) {
 
@@ -43,12 +44,11 @@ class MainViewModel(private val app: Application) : 
AndroidViewModel(app) {
         password = prefs.getString(PREF_KEY_PASSWORD, "")!!
     )
 
+    private var currency: String = prefs.getString(PREF_KEY_PASSWORD, 
"TESTKUDOS")!!
+
     private val mConfigResult = MutableLiveData<ConfigResult>()
     val configResult: LiveData<ConfigResult> = mConfigResult
 
-    // TODO get real currency
-    private val currency = "KUDOS"
-
     private val mBalance = MutableLiveData<String>()
     val balance: LiveData<String> = mBalance
 
@@ -71,7 +71,7 @@ class MainViewModel(private val app: Application) : 
AndroidViewModel(app) {
         mConfigResult.value = null
         viewModelScope.launch(Dispatchers.IO) {
             // TODO use to-be-done final URL
-            val url = "${config.bankUrl}/history?delta=50&direction=both"
+            val url = "${config.bankUrl}/history?delta=1&direction=both"
             Log.d(TAG, "Checking config: $url")
             val response = try {
                 makeJsonGetRequest(url, config)
@@ -80,11 +80,17 @@ class MainViewModel(private val app: Application) : 
AndroidViewModel(app) {
                 mConfigResult.postValue(ConfigResult(false))
                 return@launch
             }
-            if (response.code() == 200) {
+            if (response.code() == 200 && response.body() != null) {
+                // get and save currency
+                val json = JSONObject(response.body()!!.string())
+                val history = json.getJSONArray("data")
+                val amount = history.getJSONObject(0).getString("amount")
+                currency = Amount.fromString(amount).currency
+                prefs.edit().putString(PREF_KEY_CURRENCY, currency).apply()
+
+                // save config
                 saveConfig(config)
                 mConfigResult.postValue(ConfigResult(true))
-                // TODO get and save currency here
-                Log.e(TAG, "body: ${response.body()?.string()}")
             } else {
                 Log.e(TAG, "Error fetching $url - Response: 
${response.code()}")
                 val authError = false

-- 
To stop receiving notification emails like this one, please contact
address@hidden.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]