From 6f261ebb0334af26b7e5638524053c1e00a45532 Mon Sep 17 00:00:00 2001 From: A1pha Date: Wed, 27 Nov 2024 15:07:56 +0300 Subject: [PATCH] Added translation --- .../work/ui/login/LoginFragment.java | 4 +++- .../work/ui/profile/UserFragment.java | 24 +++++++++++++++---- .../work/ui/qr/result/QrResultFragment.java | 8 +++---- .../work/ui/qr/scan/QrScanFragment.kt | 1 - app/src/main/res/layout/fragment_login.xml | 13 +++++----- .../main/res/layout/fragment_qr_result.xml | 4 ---- app/src/main/res/layout/fragment_user.xml | 3 +-- app/src/main/res/navigation/nav_graph.xml | 15 +++++++++--- app/src/main/res/values-en-rUS/strings.xml | 15 ++++++++++++ app/src/main/res/values/strings.xml | 7 +++--- 10 files changed, 65 insertions(+), 29 deletions(-) create mode 100644 app/src/main/res/values-en-rUS/strings.xml diff --git a/app/src/main/java/ru/myitschool/work/ui/login/LoginFragment.java b/app/src/main/java/ru/myitschool/work/ui/login/LoginFragment.java index d1fb5f8..c715527 100644 --- a/app/src/main/java/ru/myitschool/work/ui/login/LoginFragment.java +++ b/app/src/main/java/ru/myitschool/work/ui/login/LoginFragment.java @@ -17,6 +17,7 @@ import androidx.navigation.Navigation; import ru.myitschool.work.R; import ru.myitschool.work.databinding.FragmentLoginBinding; import ru.myitschool.work.utils.OnChangeText; +import ru.myitschool.work.utils.Utils; public class LoginFragment extends Fragment { private FragmentLoginBinding binding; @@ -55,7 +56,8 @@ public class LoginFragment extends Fragment { private void subscribe(LoginViewModel viewModel) { viewModel.errorLiveData.observe(getViewLifecycleOwner(), error -> { - Toast.makeText(getContext(), error, Toast.LENGTH_SHORT).show(); + binding.error.setVisibility(Utils.visibleOrGone(error != null)); + binding.error.setText(error); }); viewModel.stateLiveData.observe(getViewLifecycleOwner(), state -> { binding.login.setClickable(state.isButtonActive()); diff --git a/app/src/main/java/ru/myitschool/work/ui/profile/UserFragment.java b/app/src/main/java/ru/myitschool/work/ui/profile/UserFragment.java index ce46168..689ab1d 100644 --- a/app/src/main/java/ru/myitschool/work/ui/profile/UserFragment.java +++ b/app/src/main/java/ru/myitschool/work/ui/profile/UserFragment.java @@ -3,7 +3,6 @@ package ru.myitschool.work.ui.profile; import android.content.Context; import android.content.SharedPreferences; import android.os.Bundle; -import android.util.Log; import android.view.View; import androidx.annotation.NonNull; @@ -40,6 +39,12 @@ public class UserFragment extends Fragment { UserEntity entity = state.getItem(); if (entity == null) { return; + } else if (state.getErrorMessage() != null) { + binding.error.setVisibility(View.VISIBLE); + binding.error.setText(state.getErrorMessage()); + + binding.logout.setVisibility(View.GONE); + binding.scan.setVisibility(View.GONE); } else { binding.photo.setVisibility(Utils.visibleOrGone(entity.getPhotoUrl() != null)); binding.position.setVisibility(Utils.visibleOrGone(entity.getPosition() != null)); @@ -61,6 +66,14 @@ public class UserFragment extends Fragment { viewModel.update(preferences.getString("login", "")); } + binding.refresh.setOnClickListener(v -> { + if (getContext() != null) { + SharedPreferences preferences = getContext().getSharedPreferences( + "login", Context.MODE_PRIVATE); + viewModel.update(preferences.getString("login", "")); + } + }); + binding.scan.setOnClickListener(v -> { Navigation.findNavController(getView()).navigate( R.id.action_userFragment_to_qrScanFragment); @@ -82,10 +95,11 @@ public class UserFragment extends Fragment { getParentFragmentManager().setFragmentResultListener(QrScanDestination.REQUEST_KEY, this, new FragmentResultListener() { @Override public void onFragmentResult(@NonNull String requestKey, @NonNull Bundle result) { - Log.d("result1", QrScanDestination.INSTANCE.getDataIfExist(result)); - getParentFragmentManager().setFragmentResult("requestKey", result); - Navigation.findNavController(getView()).navigate( - R.id.action_userFragment_to_qrResultFragment); + if (QrScanDestination.INSTANCE.getDataIfExist(result) != null) { + getParentFragmentManager().setFragmentResult("requestKey", result); + Navigation.findNavController(getView()).navigate( + R.id.action_userFragment_to_qrResultFragment); + } } }); diff --git a/app/src/main/java/ru/myitschool/work/ui/qr/result/QrResultFragment.java b/app/src/main/java/ru/myitschool/work/ui/qr/result/QrResultFragment.java index d6bac8b..dbc130c 100644 --- a/app/src/main/java/ru/myitschool/work/ui/qr/result/QrResultFragment.java +++ b/app/src/main/java/ru/myitschool/work/ui/qr/result/QrResultFragment.java @@ -39,15 +39,15 @@ public class QrResultFragment extends Fragment { public void onFragmentResult(@NonNull String requestKey, @NonNull Bundle result) { resultQr = QrScanDestination.INSTANCE.getDataIfExist(result); + if (resultQr == null) { + binding.result.setText(R.string.door_closed); + } + viewModel.stateLiveData.observe(getViewLifecycleOwner(), state -> { if (state.getErrorMessage() == null && state.isOpened()) { binding.result.setText(R.string.door_opened); } else if (state.getErrorMessage() != null) { binding.result.setText(R.string.error); - Toast.makeText(getContext(), state.getErrorMessage(), Toast.LENGTH_SHORT).show(); - } else { - binding.result.setText(R.string.error); - Toast.makeText(getContext(), "error", Toast.LENGTH_SHORT).show(); } }); diff --git a/app/src/main/java/ru/myitschool/work/ui/qr/scan/QrScanFragment.kt b/app/src/main/java/ru/myitschool/work/ui/qr/scan/QrScanFragment.kt index 49a4bc7..de438a8 100644 --- a/app/src/main/java/ru/myitschool/work/ui/qr/scan/QrScanFragment.kt +++ b/app/src/main/java/ru/myitschool/work/ui/qr/scan/QrScanFragment.kt @@ -66,7 +66,6 @@ class QrScanFragment : Fragment(R.layout.fragment_qr_scan) { goBack() } is QrScanViewModel.Action.CloseWithResult -> { - Log.d("result", action.result) sendResult(QrScanDestination.packToBundle(action.result)) goBack() } diff --git a/app/src/main/res/layout/fragment_login.xml b/app/src/main/res/layout/fragment_login.xml index 7e5a48a..a030b1c 100644 --- a/app/src/main/res/layout/fragment_login.xml +++ b/app/src/main/res/layout/fragment_login.xml @@ -1,7 +1,6 @@ @@ -15,7 +14,7 @@ app:flow_verticalGap="24dp" app:layout_constraintBottom_toBottomOf="parent" android:orientation="vertical" - app:constraint_referenced_ids="title, username, login" /> + app:constraint_referenced_ids="title, username, login, error" /> + + + - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_qr_result.xml b/app/src/main/res/layout/fragment_qr_result.xml index 41a0884..ffa6578 100644 --- a/app/src/main/res/layout/fragment_qr_result.xml +++ b/app/src/main/res/layout/fragment_qr_result.xml @@ -9,7 +9,6 @@ android:id="@+id/result" android:layout_width="wrap_content" android:layout_height="wrap_content" - tools:text="OK" android:textSize="50dp" />