From b1acd03f70a33f069a321c6755943421330d2d8d Mon Sep 17 00:00:00 2001 From: Torsten Grote Date: Wed, 5 Aug 2020 14:31:10 -0300 Subject: [wallet] show more user-friendly error messages for operations --- wallet/src/main/java/net/taler/wallet/Utils.kt | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'wallet/src/main/java/net/taler/wallet/Utils.kt') diff --git a/wallet/src/main/java/net/taler/wallet/Utils.kt b/wallet/src/main/java/net/taler/wallet/Utils.kt index e299245..ea01552 100644 --- a/wallet/src/main/java/net/taler/wallet/Utils.kt +++ b/wallet/src/main/java/net/taler/wallet/Utils.kt @@ -30,6 +30,7 @@ import android.widget.Toast import android.widget.Toast.LENGTH_LONG import androidx.annotation.RequiresApi import com.google.zxing.integration.android.IntentIntegrator +import org.json.JSONObject fun scanQrCode(activity: Activity) { IntentIntegrator(activity).apply { @@ -90,6 +91,22 @@ private fun connectToWifiDeprecated(context: Context, ssid: String) { } } +fun getErrorString(json: JSONObject): String { + return StringBuilder().apply { + append(json.getString("talerErrorCode")) + append(" ") + append(json.getString("message")) + json.optJSONObject("details")?.let { details -> + details.optJSONObject("errorResponse")?.let { errorResponse -> + append("\n\n") + append(errorResponse.optString("code")) + append(" ") + append(errorResponse.optString("hint")) + } + } + }.toString() +} + fun cleanExchange(exchange: String) = exchange.let { if (it.startsWith("https://")) it.substring(8) else it }.trimEnd('/') -- cgit v1.2.3