fix issue with currency

feature/top10
Razmig Sarkissian 7 years ago
parent c5e76f7963
commit 4b8c082996
  1. 7
      app/src/main/java/net/pokeranalytics/android/model/realm/Session.kt
  2. 3
      app/src/main/java/net/pokeranalytics/android/ui/fragment/CurrenciesFragment.kt
  3. 2
      app/src/main/java/net/pokeranalytics/android/ui/fragment/SettingsFragment.kt
  4. 2
      app/src/main/java/net/pokeranalytics/android/ui/view/SessionRowView.kt
  5. 5
      app/src/main/java/net/pokeranalytics/android/ui/view/rowrepresentable/FilterSectionRow.kt
  6. 3
      app/src/main/java/net/pokeranalytics/android/util/extensions/NumbersExtension.kt

@ -37,6 +37,7 @@ import net.pokeranalytics.android.ui.view.rowrepresentable.SeparatorRowRepresent
import net.pokeranalytics.android.ui.view.rowrepresentable.SessionRow
import net.pokeranalytics.android.util.CurrencyUtils
import net.pokeranalytics.android.util.NULL_TEXT
import net.pokeranalytics.android.util.Preferences
import net.pokeranalytics.android.util.extensions.*
import java.util.*
import java.util.Currency
@ -485,9 +486,9 @@ open class Session : RealmObject(), Savable, Editable, StaticRowRepresentableDat
/**
* Return the formatted blinds
*/
fun getBlinds(): String {
fun getBlinds(context: Context): String {
val currencyCode = bankroll?.currency?.code ?: CurrencyUtils.getLocaleCurrency().currencyCode
val currencySymbol = Currency.getInstance(currencyCode).symbol
val currencySymbol = Currency.getInstance(currencyCode).getSymbol(Preferences.getCurrencyLocale(context))
return if (cgSmallBlind == null) NULL_TEXT else "$currencySymbol ${cgSmallBlind?.formatted()}/${cgBigBlind?.round()}"
}
@ -624,7 +625,7 @@ open class Session : RealmObject(), Savable, Editable, StaticRowRepresentableDat
override fun stringForRow(row: RowRepresentable, context: Context): String {
return when (row) {
SessionRow.BANKROLL -> bankroll?.name ?: NULL_TEXT
SessionRow.BLINDS -> getBlinds()
SessionRow.BLINDS -> getBlinds(context)
SessionRow.BREAK_TIME -> if (this.breakDuration > 0.0) this.breakDuration.toMinutes() else NULL_TEXT
SessionRow.BUY_IN -> this.result?.buyin?.toCurrency(CurrencyUtils.getCurrency(bankroll)) ?: NULL_TEXT
SessionRow.CASHED_OUT, SessionRow.PRIZE -> this.result?.cashout?.toCurrency(CurrencyUtils.getCurrency(bankroll)) ?: NULL_TEXT

@ -17,6 +17,7 @@ import net.pokeranalytics.android.ui.fragment.components.PokerAnalyticsFragment
import net.pokeranalytics.android.ui.view.RowRepresentable
import net.pokeranalytics.android.ui.view.RowViewType
import net.pokeranalytics.android.ui.view.rowrepresentable.SeparatorRowRepresentable
import net.pokeranalytics.android.util.Preferences
import java.util.*
class CurrenciesFragment : PokerAnalyticsFragment(), StaticRowRepresentableDataSource, RowRepresentableDelegate {
@ -68,7 +69,7 @@ class CurrenciesFragment : PokerAnalyticsFragment(), StaticRowRepresentableDataS
}
var currencyCode: String = currency.currencyCode
var currencySymbole: String = currency.getSymbol(Locale.getDefault())
var currencySymbole: String = currency.getSymbol(Preferences.currencyLocale)
var currencyCodeAndSymbol: String = "${this.currencyCode} (${this.currencySymbole})"
override val viewType: Int = RowViewType.TITLE_VALUE.ordinal

@ -58,7 +58,7 @@ class SettingsFragment : PokerAnalyticsFragment(), RowRepresentableDelegate, Sta
SettingRow.VERSION -> BuildConfig.VERSION_NAME + if (BuildConfig.DEBUG) " (${BuildConfig.VERSION_CODE}) DEBUG" else ""
SettingRow.CURRENCY -> {
val locale = Preferences.getCurrencyLocale(this.parentActivity)
Currency.getInstance(locale).symbol
Currency.getInstance(locale).getSymbol(locale)
}
else -> ""
}

@ -85,7 +85,7 @@ class SessionRowView : FrameLayout {
}
} else {
if (session.cgSmallBlind != null && session.cgBigBlind != null) {
parameters.add(session.getBlinds())
parameters.add(session.getBlinds(context))
}
session.game?.let {
parameters.add(session.getFormattedGame())

@ -157,15 +157,10 @@ enum class FilterSectionRow(override val resId: Int?) : RowRepresentable {
val distinctBlinds: ArrayList<Session> = ArrayList()
val blindsHashMap: ArrayList<String> = ArrayList()
sessions.forEach {
if (!blindsHashMap.contains(it.getBlinds())) {
blindsHashMap.add(it.getBlinds())
distinctBlinds.add(it)
}
}
distinctBlinds.forEach { session ->
blinds.add(Blind(session.cgSmallBlind, session.cgBigBlind, session.bankroll?.currency?.code))
session.getBlinds()
}
realm.close()

@ -2,6 +2,7 @@ package net.pokeranalytics.android.util.extensions
import android.content.Context
import net.pokeranalytics.android.R
import net.pokeranalytics.android.util.Preferences
import java.text.DecimalFormat
import java.text.NumberFormat
import java.util.*
@ -23,7 +24,7 @@ fun Double.formatted(): String {
fun Double.toCurrency(currency: Currency? = null): String {
val currencyFormatter = NumberFormat.getCurrencyInstance()
val currencyFormatter = NumberFormat.getCurrencyInstance(Preferences.currencyLocale)
currency?.let {
currencyFormatter.currency = currency
}

Loading…
Cancel
Save