diff --git a/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/BuyFragment.kt b/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/BuyFragment.kt index eaa84e3e..5da56c5c 100644 --- a/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/BuyFragment.kt +++ b/app/src/main/java/com/futo/platformplayer/fragment/mainactivity/main/BuyFragment.kt @@ -1,8 +1,6 @@ package com.futo.platformplayer.fragment.mainactivity.main import android.os.Bundle -import android.os.Handler -import android.os.Looper import android.view.LayoutInflater import android.view.View import android.view.ViewGroup @@ -16,6 +14,8 @@ import com.futo.futopay.formatMoney import com.futo.platformplayer.BuildConfig import com.futo.platformplayer.R import com.futo.platformplayer.UIDialogs +import com.futo.platformplayer.activities.MainActivity +import com.futo.platformplayer.fragment.mainactivity.main.SettingsFragment import com.futo.platformplayer.logging.Logger import com.futo.platformplayer.states.StatePayment import com.futo.platformplayer.views.overlays.LoaderOverlay @@ -68,8 +68,11 @@ class BuyFragment : MainFragment() { _paymentManager = PaymentManager(StatePayment.instance, fragment, _overlayPaying) { success, _, exception -> if(success) { - UIDialogs.showDialog(context, R.drawable.ic_check, context.getString(R.string.payment_succeeded), context.getString(R.string.thanks_for_your_purchase_a_key_will_be_sent_to_your_email_after_your_payment_has_been_received), null, 0, UIDialogs.Action("Ok", {}, UIDialogs.ActionStyle.PRIMARY)); - _fragment.close(true); + UIDialogs.showDialog(context, R.drawable.ic_check, context.getString(R.string.payment_succeeded), context.getString(R.string.thanks_for_your_purchase_a_key_will_be_sent_to_your_email_after_your_payment_has_been_received), null, 0, + UIDialogs.Action("Ok", { + (fragment.activity as? MainActivity)?.navigate(withHistory = false); + }, UIDialogs.ActionStyle.PRIMARY) + ); } else { UIDialogs.showGeneralErrorDialog(context, context.getString(R.string.payment_failed), exception); @@ -89,16 +92,19 @@ class BuyFragment : MainFragment() { fragment.lifecycleScope.launch(Dispatchers.IO) { //Calling this function will cache first call try { - val currencies = StatePayment.instance.getAvailableCurrencies("grayjay"); - val prices = StatePayment.instance.getAvailableCurrencyPrices("grayjay"); - val country = StatePayment.instance.getPaymentCountryFromIP(true)?.let { c -> PaymentConfigurations.COUNTRIES.find { it.id.equals(c, ignoreCase = true) } }; - val currency = country?.let { c -> PaymentConfigurations.CURRENCIES.find { it.id == c.defaultCurrencyId && (currencies.contains(it.id)) } }; + // TODO: Restore multi-currency support when payment backend supports it + // val currencies = StatePayment.instance.getAvailableCurrencies("grayjay"); + // val prices = StatePayment.instance.getAvailableCurrencyPrices("grayjay"); + // val country = StatePayment.instance.getPaymentCountryFromIP(true)?.let { c -> PaymentConfigurations.COUNTRIES.find { it.id.equals(c, ignoreCase = true) } }; + // val currency = country?.let { c -> PaymentConfigurations.CURRENCIES.find { it.id == c.defaultCurrencyId && (currencies.contains(it.id)) } }; + // if(currency != null && prices.containsKey(currency.id)) { + // val price = prices[currency.id]!!; + // _buttonBuyText.text = formatMoney(country.id, currency.id, price) + context.getString(R.string.plus_tax); + // } - if(currency != null && prices.containsKey(currency.id)) { - val price = prices[currency.id]!!; - withContext(Dispatchers.Main) { - _buttonBuyText.text = formatMoney(country.id, currency.id, price) + context.getString(R.string.plus_tax); - } + val priceCents = StatePayment.instance.getPolarProductPrice(PaymentConfigurations.PolarConfig.PRODUCT_SLUG) + withContext(Dispatchers.Main) { + _buttonBuyText.text = formatMoney("US", "usd", priceCents) + context.getString(R.string.plus_tax) } } catch(ex: Throwable) { @@ -165,4 +171,4 @@ class BuyFragment : MainFragment() { fun newInstance() = BuyFragment().apply {} private val TAG = "BuyFragment" } -} \ No newline at end of file +} diff --git a/app/src/main/java/com/futo/platformplayer/states/StatePayment.kt b/app/src/main/java/com/futo/platformplayer/states/StatePayment.kt index 862121aa..b2bc64b2 100644 --- a/app/src/main/java/com/futo/platformplayer/states/StatePayment.kt +++ b/app/src/main/java/com/futo/platformplayer/states/StatePayment.kt @@ -18,7 +18,14 @@ class StatePayment : PaymentState(if(!isTestingPayment) VERIFICATION_PUBLIC_KEY } companion object { - private val VERIFICATION_PUBLIC_KEY = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzJqqETLa42xw4AfbNOLQolMdMiGgg8DAC4RXEcH4/gytLhaqp1XsjiiMkADi1C7sDtGj6kOuAuQkqXQKpZ2dJSZsO+GPyop6DmgfAM6MQgOgFUpwsb3Lt3SvskJcls8MeOC+jg+GjjcuJI8qOfYevj4/7wAOpqzAwocTYnJivlK5nrC+qNtUC2HZX93OVu69aU5yvA1SQe9GiiU7vBld+CbzHxTcABCK/THu/BpLtGx0M7W3HNMKK1Z79dopCL9ZZWbWdkGDY8Zf39Gn/WVrs5elBvPzU+AfNYty77vx2r+sKgyohlbz4KVYpnw8HfawKcwuRE/GUyD3F2hUcXy8dQIDAQAB"; + private val VERIFICATION_PUBLIC_KEY = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAzJqqETLa42xw4AfbNOLQ" + + "olMdMiGgg8DAC4RXEcH4/gytLhaqp1XsjiiMkADi1C7sDtGj6kOuAuQkqXQKpZ2d" + + "JSZsO+GPyop6DmgfAM6MQgOgFUpwsb3Lt3SvskJcls8MeOC+jg+GjjcuJI8qOfYe" + + "vj4/7wAOpqzAwocTYnJivlK5nrC+qNtUC2HZX93OVu69aU5yvA1SQe9GiiU7vBld" + + "+CbzHxTcABCK/THu/BpLtGx0M7W3HNMKK1Z79dopCL9ZZWbWdkGDY8Zf39Gn/WVr" + + "s5elBvPzU+AfNYty77vx2r+sKgyohlbz4KVYpnw8HfawKcwuRE/GUyD3F2hUcXy8" + + "dQIDAQAB" + private val VERIFICATION_PUBLIC_KEY_TESTING = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqyDuxsRtD5gmBoLCNoZa" + "XSRTwyUxgzcPHzLZkvomXVSQqzD+3aOKngcTKAZ83rm4GvoyMlBukxQMLShannSx" + "k8GQGTCT7VStQKNc4lKVER5ASB6aEaypaFMIYI3rXN1xLF1LqY/j7cu5GgMsvAuU" + @@ -34,4 +41,4 @@ class StatePayment : PaymentState(if(!isTestingPayment) VERIFICATION_PUBLIC_KEY return _instance!!; }; } -} \ No newline at end of file +} diff --git a/app/src/main/java/com/futo/platformplayer/views/overlays/slideup/SlideUpMenuTextInput.kt b/app/src/main/java/com/futo/platformplayer/views/overlays/slideup/SlideUpMenuTextInput.kt index 9a53fe44..80cfc796 100644 --- a/app/src/main/java/com/futo/platformplayer/views/overlays/slideup/SlideUpMenuTextInput.kt +++ b/app/src/main/java/com/futo/platformplayer/views/overlays/slideup/SlideUpMenuTextInput.kt @@ -3,15 +3,10 @@ package com.futo.platformplayer.views.overlays.slideup import android.content.Context import android.util.AttributeSet import android.view.LayoutInflater -import android.view.View import android.view.inputmethod.InputMethodManager import android.widget.EditText -import android.widget.ImageView import android.widget.LinearLayout -import android.widget.RelativeLayout -import android.widget.TextView import com.futo.platformplayer.R -import org.w3c.dom.Text class SlideUpMenuTextInput : LinearLayout { private lateinit var _root: LinearLayout; diff --git a/dep/futopay b/dep/futopay index 6857c8f0..77face99 160000 --- a/dep/futopay +++ b/dep/futopay @@ -1 +1 @@ -Subproject commit 6857c8f0bc9785e29cbbe68b94ea6cc230c4e0ed +Subproject commit 77face99a8edc1c83a6645cb2f15119f5d626267