Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@
import com.google.android.material.dialog.MaterialAlertDialogBuilder;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.google.android.material.tabs.TabLayout;
import com.jaredrummler.android.colorpicker.BuildConfig;
import com.jaredrummler.android.colorpicker.ColorPickerDialog;
import com.jaredrummler.android.colorpicker.ColorPickerDialogListener;
import com.yalantis.ucrop.UCrop;
Expand Down Expand Up @@ -91,6 +92,7 @@
import protect.card_locker.async.TaskHandler;
import protect.card_locker.databinding.LayoutChipChoiceBinding;
import protect.card_locker.databinding.LoyaltyCardEditActivityBinding;
import protect.card_locker.preferences.Settings;
import protect.card_locker.viewmodels.LoyaltyCardEditActivityViewModel;

public class LoyaltyCardEditActivity extends CatimaAppCompatActivity implements BarcodeImageWriterResultCallback, ColorPickerDialogListener {
Expand Down Expand Up @@ -1014,7 +1016,12 @@ protected static void formatDateField(Context context, EditText textField, Date

private void formatBalanceCurrencyField(Currency balanceType) {
if (balanceType == null) {
balanceCurrencyField.setText(getString(R.string.points));
Currency defaultCurrency = new Settings(getApplicationContext()).getCurrency();
if(defaultCurrency != null && storeFieldEdit.getText().toString().isEmpty()){
balanceCurrencyField.setText(getCurrencySymbol(defaultCurrency));
} else {
balanceCurrencyField.setText(getString(R.string.points));
}
} else {
balanceCurrencyField.setText(getCurrencySymbol(balanceType));
}
Expand Down
12 changes: 12 additions & 0 deletions app/src/main/java/protect/card_locker/preferences/Settings.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
import androidx.appcompat.app.AppCompatDelegate;
import androidx.preference.PreferenceManager;

import java.util.Currency;
import java.util.Locale;

import protect.card_locker.R;
Expand Down Expand Up @@ -58,6 +59,17 @@ public Locale getLocale() {
return Utils.stringToLocale(value);
}

public Currency getCurrency() {
String points = getResString(R.string.points);
String value = getString(R.string.settings_key_default_currency, points);

if(value.equals(points)){
return null;
}

return Currency.getInstance(value);
}

public int getTheme() {
String value = getString(R.string.settings_key_theme, getResString(R.string.settings_key_system_theme));

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package protect.card_locker.preferences

import android.app.Activity
import android.content.Intent
import android.os.Build
import android.os.Bundle
Expand All @@ -17,6 +16,15 @@ import protect.card_locker.MainActivity
import protect.card_locker.R
import protect.card_locker.Utils
import protect.card_locker.databinding.SettingsActivityBinding
import java.util.Collections
import java.util.Currency
import kotlin.Any
import kotlin.Boolean
import kotlin.CharSequence
import kotlin.Comparator
import kotlin.String
import kotlin.toString


class SettingsActivity : CatimaAppCompatActivity() {

Expand Down Expand Up @@ -102,6 +110,39 @@ class SettingsActivity : CatimaAppCompatActivity() {
true
}

// setting up currency preferences options
val currencyPreference = findPreference<ListPreference>(getString(R.string.settings_key_default_currency))!!

val currencies = Currency.getAvailableCurrencies().stream().sorted { a, b ->
val aIsSymbol = a.symbol.matches("^[^a-zA-Z]*$".toRegex())
val bIsSymbol = b.symbol.matches("^[^a-zA-Z]*$".toRegex())
when {
!aIsSymbol && bIsSymbol -> 1
aIsSymbol && !bIsSymbol -> -1
else -> a.symbol.compareTo(b.symbol)
}
}.toList()

val symbols = mutableListOf<String>()
val codes = mutableListOf<String?>()

for(currency in currencies){
symbols.add(currency.symbol)
codes.add(currency.currencyCode)
}

val points = getString(R.string.points)

symbols.add(0, points)
codes.add(0, points)

val entries = symbols.map { it as CharSequence }.toTypedArray()
val entryValues = codes.map { it as CharSequence }.toTypedArray()

// set the currencies options
currencyPreference.entryValues = entryValues
currencyPreference.entries = entries

val oledDarkPreference = findPreference<Preference>(getString(R.string.settings_key_oled_dark))
oledDarkPreference!!.setOnPreferenceChangeListener { _, _ ->
refreshActivity(true)
Expand Down
1 change: 1 addition & 0 deletions app/src/main/res/values-ar/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -325,4 +325,5 @@
<string name="back">رجوع</string>
<string name="pref_enable_acra">إخطار بإرسال تقارير الأخطاء</string>
<string name="pref_enable_acra_summary">عند التفعيل, سيتم سؤالك للابلاغ بالاعطال عندما تحدث. لا ولن يتم الابلاغ بالاعطال تلفائيا.</string>
<string name="settings_default_currency">العملة الافتراضية</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-be/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -308,4 +308,5 @@
<string name="card_list_widget_empty">Пасля таго, як вы дадасце некалькі картак лаяльнасці ў Catima, яны з\'явяцца тут. Калі ў вас ёсць карты, пераканайцеся, што яны не ўсе заархіваваны.</string>
<string name="acra_catima_has_crashed">Прабачце, але ў праграме <xliff:g id="app_name">%s</xliff:g> адбыўся збой. Калі ласка, дапамажыце нам выправіць гэту праблему, даслаўшы нам справаздачу аб памылцы.</string>
<string name="back">Назад</string>
<string name="settings_default_currency">Валюта па змаўчанні</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-bg/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -301,4 +301,5 @@
<string name="nothing_to_copy">Няма стойност</string>
<string name="back">Назад</string>
<string name="barcodeEncoding">Кодиране на щрихкода</string>
<string name="settings_default_currency">Валута по подразбиране</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-cs/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -307,4 +307,5 @@
<string name="nothing_to_copy">Nenalezena žádná hodnota</string>
<string name="barcodeEncoding">Kódování čárového kódu</string>
<string name="back">Zpět</string>
<string name="settings_default_currency">Výchozí měna</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-de/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -301,4 +301,5 @@
<string name="nothing_to_copy">Keinen Betrag gefunden</string>
<string name="barcodeEncoding">Barcode-Kodierung</string>
<string name="back">Zurück</string>
<string name="settings_default_currency">Standardwährung</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-el-rGR/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -301,4 +301,5 @@
<string name="nothing_to_copy">Δεν βρέθηκε τιμή</string>
<string name="barcodeEncoding">Κωδικοποίηση γραμμωτού κώδικα</string>
<string name="back">Πίσω</string>
<string name="settings_default_currency">Προεπιλεγμένο νόμισμα</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-es/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -307,4 +307,5 @@
<string name="nothing_to_copy">Ningún valor encontrado</string>
<string name="barcodeEncoding">Codificación de barra de código</string>
<string name="back">Atrás</string>
<string name="settings_default_currency">Moneda Predeterminada</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-et/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -301,4 +301,5 @@
<string name="nothing_to_copy">Ühtegi väärtust ei leidu</string>
<string name="barcodeEncoding">Triipkoodi kodeerimine</string>
<string name="back">Tagasi</string>
<string name="settings_default_currency">Vaikevaluuta</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-fi/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -292,4 +292,5 @@
<string name="setBarcodeWidth">Aseta viivakoodin leveys</string>
<string name="card_list_widget_name">Korttiluettelo</string>
<string name="card_list_widget_empty">Kun olet lisännyt kanta-asiakaskortteja Catimaan, ne näkyvät täällä. Jos sinulla on kortteja, varmista, etteivät ne kaikki ole arkistoituja.</string>
<string name="settings_default_currency">Oletusvaluutta</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-fr/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -307,4 +307,5 @@
<string name="nothing_to_copy">Aucune valeur trouvée</string>
<string name="barcodeEncoding">Encodage du code-barres</string>
<string name="back">Retour</string>
<string name="settings_default_currency">Devise par défaut</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-gl/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -300,4 +300,5 @@
<string name="nothing_to_copy">Non hai ningún valor</string>
<string name="barcodeEncoding">Códificación do código de barras</string>
<string name="back">Volver</string>
<string name="settings_default_currency">Moeda Predeterminada</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-hr/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -302,4 +302,5 @@
<string name="acra_crash_email_subject">Izvještaj o prekidu rada aplikacije <xliff:g id="app_name">%s</xliff:g></string>
<string name="pref_enable_acra">Pitaj da li poslati izvještaj o prekidu rada aplikacije</string>
<string name="pref_enable_acra_summary">Kada je uključeno, zamolit ćemo te da prijaviš prekid rada aplikacije kada se dogodi. Izvještaji o prekidu rada se nikada ne šalju automatski.</string>
<string name="settings_default_currency">Zadana valuta</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-in-rID/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -292,4 +292,5 @@
<string name="pref_enable_acra_summary">Ketika diaktifkan, Anda akan diminta untuk melaporkan crash saat terjadi. Laporan crash tidak pernah dikirim secara otomatis.</string>
<string name="copy_value">Salin nilai</string>
<string name="copied_to_clipboard">Disalin ke papan klip</string>
<string name="settings_default_currency">Mata Uang Default</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-it/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -305,6 +305,7 @@
<string name="copy_value">Copia valore</string>
<string name="copied_to_clipboard">Copiato negli appunti</string>
<string name="nothing_to_copy">Nessun valore trovato</string>
<string name="settings_default_currency">Valuta Predefinita</string>
<string name="barcodeEncoding">Codifica codici a barre</string>
<string name="back">Indietro</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-ja/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -294,4 +294,5 @@
<string name="nothing_to_copy">値が見つかりません</string>
<string name="barcodeEncoding">バーコードの符号化</string>
<string name="back">戻る</string>
<string name="settings_default_currency">デフォルトの通貨</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-nl/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -299,4 +299,5 @@
<string name="nothing_to_copy">Geen waarde gevonden</string>
<string name="copied_to_clipboard">Gekopieerd naar klembord</string>
<string name="copy_value">Kopieer waarde</string>
<string name="barcodeEncoding">Standaardvaluta</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-pl/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -311,4 +311,5 @@
<string name="copy_value">Kopiuj wartość</string>
<string name="copied_to_clipboard">Skopiowano do schowka</string>
<string name="nothing_to_copy">Nie znaleziono wartości</string>
<string name="settings_default_currency">Domyślna waluta</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-pt-rBR/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -305,4 +305,5 @@
<string name="copy_value">Copiar valor</string>
<string name="copied_to_clipboard">Copiado para a área de transferência</string>
<string name="nothing_to_copy">Nenhum valor encontrado</string>
<string name="settings_default_currency">Moeda Padrão</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-pt-rPT/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -305,4 +305,5 @@
<string name="copy_value">Copiar valor</string>
<string name="copied_to_clipboard">Copiado para a área de transferência</string>
<string name="nothing_to_copy">Nenhum valor encontrado</string>
<string name="settings_default_currency">Moeda Padrão</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-pt/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -304,4 +304,5 @@
<string name="copy_value">Copiar valor</string>
<string name="copied_to_clipboard">Copiado para a área de transferência</string>
<string name="nothing_to_copy">Nenhum valor encontrado</string>
<string name="settings_default_currency">Moeda Padrão</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-ru/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -313,4 +313,5 @@
<string name="nothing_to_copy">Значение не найдено</string>
<string name="barcodeEncoding">Кодировка штрих-кода</string>
<string name="back">Назад</string>
<string name="settings_default_currency">Валюта по умолчанию</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-sk/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -305,4 +305,5 @@
<string name="copy_value">Kopírovať hodnotu</string>
<string name="copied_to_clipboard">Skopírované do schránky</string>
<string name="nothing_to_copy">Nenašla sa žiadna hodnota</string>
<string name="settings_default_currency">Predvolená Mena</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-sl/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -312,4 +312,5 @@
<string name="nothing_to_copy">Nobena vrednost ni najdena</string>
<string name="barcodeEncoding">Kodiranje črtne kode</string>
<string name="back">Nazaj</string>
<string name="settings_default_currency">Privzeta Valuta</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-tr/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -299,4 +299,5 @@
<string name="copy_value">Değeri kopyala</string>
<string name="copied_to_clipboard">Panoya kopyalandı</string>
<string name="nothing_to_copy">Değer bulunamadı</string>
<string name="settings_default_currency">Varsayılan Para Birimi</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-uk/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -313,4 +313,5 @@
<string name="nothing_to_copy">Значення не знайдено</string>
<string name="barcodeEncoding">Кодування штрих-кодів</string>
<string name="back">Назад</string>
<string name="settings_default_currency">Валюта за умовчанням</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-zh-rCN/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -295,4 +295,5 @@
<string name="nothing_to_copy">没找到值</string>
<string name="barcodeEncoding">条形码编码</string>
<string name="back">返回</string>
<string name="settings_default_currency">預設貨幣</string>
</resources>
1 change: 1 addition & 0 deletions app/src/main/res/values-zh-rTW/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -294,4 +294,5 @@
<string name="nothing_to_copy">未找到值</string>
<string name="barcodeEncoding">條碼編碼</string>
<string name="back">返回</string>
<string name="settings_default_currency">預設貨幣</string>
</resources>
2 changes: 2 additions & 0 deletions app/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -345,4 +345,6 @@
<string name="nothing_to_copy">No value found</string>
<string name="barcodeEncoding">Barcode encoding</string>
<string name="back">Back</string>
<string name="settings_default_currency">Default Currency</string>
<string name="settings_key_default_currency" translatable="false">pref_currency</string>
</resources>
8 changes: 8 additions & 0 deletions app/src/main/res/xml/preferences.xml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,14 @@
app:singleLineTitle="false"
app:useSimpleSummaryProvider="true" />

<ListPreference
android:defaultValue=""
android:key="@string/settings_key_default_currency"
android:title="@string/settings_default_currency"
app:iconSpaceReserved="false"
app:singleLineTitle="false"
app:useSimpleSummaryProvider="true" />

<SwitchPreferenceCompat
android:widgetLayout="@layout/preference_material_switch"
android:defaultValue="true"
Expand Down