From 26f8c035703ea07ecb38be4a96032ff0ed9b9a81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kuba=20Szczodrzy=C5=84ski?= Date: Sun, 19 Apr 2020 22:01:29 +0200 Subject: [PATCH] [UI] Show class name and school year in subname. Fix setting language. --- .../java/pl/szczodrzynski/edziennik/App.kt | 4 ++ .../pl/szczodrzynski/edziennik/Extensions.kt | 3 +- .../edziennik/data/api/models/Data.kt | 7 +++ .../modules/settings/SettingsNewFragment.java | 45 ++++++++++++------- app/src/main/res/values-en/strings.xml | 3 ++ app/src/main/res/values/strings.xml | 2 + 6 files changed, 47 insertions(+), 17 deletions(-) diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/App.kt b/app/src/main/java/pl/szczodrzynski/edziennik/App.kt index 71c06c25..7194aa04 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/App.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/App.kt @@ -167,6 +167,10 @@ class App : MultiDexApplication(), Configuration.Provider, CoroutineScope { db.profileDao().firstId?.let { profileLoadById(it) } } + config.ui.language?.let { + setLanguage(it) + } + devMode = BuildConfig.DEBUG Signing.getCert(this) diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/Extensions.kt b/app/src/main/java/pl/szczodrzynski/edziennik/Extensions.kt index 0383be1e..e95854e7 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/Extensions.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/Extensions.kt @@ -454,7 +454,7 @@ operator fun MatchResult.get(group: Int): String { return groupValues[group] } -fun Activity.setLanguage(language: String) { +fun Context.setLanguage(language: String) { val locale = Locale(language.toLowerCase(Locale.ROOT)) val configuration = resources.configuration Locale.setDefault(locale) @@ -463,7 +463,6 @@ fun Activity.setLanguage(language: String) { } configuration.locale = locale resources.updateConfiguration(configuration, resources.displayMetrics) - baseContext.resources.updateConfiguration(configuration, baseContext.resources.displayMetrics) } /* diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/models/Data.kt b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/models/Data.kt index 5e998425..2f0c88af 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/data/api/models/Data.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/data/api/models/Data.kt @@ -197,6 +197,13 @@ abstract class Data(val app: App, val profile: Profile?, val loginStore: LoginSt profile.userCode = generateUserCode() + // update profile subname with class name, school year and account type + profile.subname = joinNotNullStrings( + " - ", + profile.studentClassName, + "${profile.studentSchoolYearStart}/${profile.studentSchoolYearStart + 1}" + ) + " " + app.getString(if (profile.isParent) R.string.login_summary_account_parent else R.string.login_summary_account_child) + db.profileDao().add(profile) db.loginStoreDao().add(loginStore) diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/settings/SettingsNewFragment.java b/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/settings/SettingsNewFragment.java index cc72c46c..3e3eac0e 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/settings/SettingsNewFragment.java +++ b/app/src/main/java/pl/szczodrzynski/edziennik/ui/modules/settings/SettingsNewFragment.java @@ -55,6 +55,7 @@ import pl.szczodrzynski.edziennik.ui.dialogs.changelog.ChangelogDialog; import pl.szczodrzynski.edziennik.ui.dialogs.settings.GradesConfigDialog; import pl.szczodrzynski.edziennik.ui.dialogs.settings.ProfileRemoveDialog; import pl.szczodrzynski.edziennik.ui.dialogs.sync.NotificationFilterDialog; +import pl.szczodrzynski.edziennik.ui.modules.login.LoginActivity; import pl.szczodrzynski.edziennik.utils.Themes; import pl.szczodrzynski.edziennik.utils.Utils; import pl.szczodrzynski.edziennik.utils.models.Date; @@ -161,7 +162,7 @@ public class SettingsNewFragment extends MaterialAboutFragment { profileCardTitleItem = new MaterialAboutProfileItem( app.getProfile().getName(), - getString(R.string.settings_profile_subtitle_format, app.getProfile().getSubname()), + app.getProfile().getSubname(), getProfileDrawable() ); profileCardTitleItem.setOnClickAction(() -> { @@ -218,6 +219,20 @@ public class SettingsNewFragment extends MaterialAboutFragment { }) );*/ + items.add( + new MaterialAboutActionItem( + getString(R.string.settings_add_student_text), + getString(R.string.settings_add_student_subtext), + new IconicsDrawable(activity) + .icon(CommunityMaterial.Icon.cmd_account_plus_outline) + .size(IconicsSize.dp(iconSizeDp)) + .color(IconicsColor.colorInt(iconColor)) + ) + .setOnClickAction(() -> { + startActivity(new Intent(activity, LoginActivity.class)); + }) + ); + items.add( new MaterialAboutActionItem( getString(R.string.settings_profile_notifications_text), @@ -232,6 +247,20 @@ public class SettingsNewFragment extends MaterialAboutFragment { }) ); + items.add( + new MaterialAboutActionItem( + getString(R.string.settings_profile_remove_text), + getString(R.string.settings_profile_remove_subtext), + new IconicsDrawable(activity) + .icon(SzkolnyFont.Icon.szf_delete_empty_outline) + .size(IconicsSize.dp(iconSizeDp)) + .color(IconicsColor.colorInt(iconColor)) + ) + .setOnClickAction(() -> { + new ProfileRemoveDialog(activity, app.getProfile().getId(), app.getProfile().getName()); + }) + ); + items.add(getMoreItem(() -> addCardItems(CARD_PROFILE, getProfileCard(true)))); } else { @@ -253,20 +282,6 @@ public class SettingsNewFragment extends MaterialAboutFragment { })) ); - items.add( - new MaterialAboutActionItem( - getString(R.string.settings_profile_remove_text), - getString(R.string.settings_profile_remove_subtext), - new IconicsDrawable(activity) - .icon(SzkolnyFont.Icon.szf_delete_empty_outline) - .size(IconicsSize.dp(iconSizeDp)) - .color(IconicsColor.colorInt(iconColor)) - ) - .setOnClickAction(() -> { - new ProfileRemoveDialog(activity, app.getProfile().getId(), app.getProfile().getName()); - }) - ); - } return items; } diff --git a/app/src/main/res/values-en/strings.xml b/app/src/main/res/values-en/strings.xml index 3a16ddf2..50d657db 100644 --- a/app/src/main/res/values-en/strings.xml +++ b/app/src/main/res/values-en/strings.xml @@ -1230,4 +1230,7 @@ yesterday You\'re offline. Try enabling Wi-Fi or mobile data. Internet connection + In order to download the file, you have to grant file storage permission for the application.\n\nClick OK to grant the permission. + You denied the required permissions for the application.\n\nIn order to grant the permission, open the Permissions screen for Szkolny.eu in phone settings.\n\nClick OK to open app settings now. + Required permissions diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 6aa583a9..df773c90 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -1286,4 +1286,6 @@ wczoraj Jesteś offline. Spróbuj włączyć Wi-Fi lub dane komórkowe. Połączenie sieciowe + Dodaj nowego ucznia + Zaloguj konto ucznia/rodzica w aplikacji