From 9dfd6c4a9b16218fc6fd89360aa3998e7712aff3 Mon Sep 17 00:00:00 2001 From: Serafim_Pankin Date: Thu, 20 Feb 2025 14:11:35 +0300 Subject: [PATCH] Fixed authorized screen and new error validation from the server --- .../displaynone/acss/ui/auth/AuthFragment.kt | 18 +++++++++++++----- app/src/main/res/values-en/strings-en.xml | 9 ++++++--- app/src/main/res/values-ru/strings-ru.xml | 11 ++++++++++- app/src/main/res/values/strings.xml | 13 +++++++++---- 4 files changed, 38 insertions(+), 13 deletions(-) diff --git a/app/src/main/java/com/displaynone/acss/ui/auth/AuthFragment.kt b/app/src/main/java/com/displaynone/acss/ui/auth/AuthFragment.kt index a708b51..71433a5 100644 --- a/app/src/main/java/com/displaynone/acss/ui/auth/AuthFragment.kt +++ b/app/src/main/java/com/displaynone/acss/ui/auth/AuthFragment.kt @@ -1,11 +1,7 @@ package com.displaynone.acss.ui.auth import android.annotation.SuppressLint -import android.graphics.drawable.TransitionDrawable import android.os.Bundle -import android.text.Editable -import android.text.TextWatcher -import android.util.Log import android.view.View import android.widget.Toast import androidx.core.content.ContextCompat @@ -37,7 +33,10 @@ class AuthFragment: Fragment(R.layout.fragment_auth) { viewModel.errorState.collectWithLifecycle(this) { errorStatus -> errorStatus?.let { Toast.makeText(requireContext(), it, Toast.LENGTH_SHORT).show() - binding.errorTitle.text = errorStatus + val errorDescription = getErrorDescription(errorStatus.toString()) + binding.errorTitle.text = errorDescription + + binding.errorTitle.text = errorDescription binding.errorTitle.visibility = View.VISIBLE } } @@ -45,6 +44,15 @@ class AuthFragment: Fragment(R.layout.fragment_auth) { onLoginButtonClicked(view) } } + @SuppressLint("StringFormatMatches") + private fun getErrorDescription(errorCode: String): String { + return when (errorCode) { + 401.toString()+' ' -> getString(R.string.error_401) + 404.toString()+' ' -> getString(R.string.error_404) + 500.toString()+' ' -> getString(R.string.error_500) + else -> getString(R.string.error_unknown, errorCode) + } + } private fun blockLoginButton() { binding.next.isEnabled = false } diff --git a/app/src/main/res/values-en/strings-en.xml b/app/src/main/res/values-en/strings-en.xml index 45ef3fa..72cf469 100644 --- a/app/src/main/res/values-en/strings-en.xml +++ b/app/src/main/res/values-en/strings-en.xml @@ -11,7 +11,6 @@ The entrance was cancelled Successful Somethings wrong - The login does not work or is incorrect ОК Error Enter the username @@ -27,10 +26,14 @@ Server is unavailable Checking the session employee The password must contain at least 8 characters - The password must contain at least one uppercase letter - The password must contain at least one digit + The username cannot be empty Login must contain at least 3 characters Login cannot start with a digit Login can contain only letters, numbers, and underscores + Authorization error: Invalid login or password + Error: Requested resource not found + Server error: Try again later + Неизвестная ошибка (%s) + \ No newline at end of file diff --git a/app/src/main/res/values-ru/strings-ru.xml b/app/src/main/res/values-ru/strings-ru.xml index 60f25fa..bfb8dc1 100644 --- a/app/src/main/res/values-ru/strings-ru.xml +++ b/app/src/main/res/values-ru/strings-ru.xml @@ -12,7 +12,6 @@ Вход был отменён Успешно Что-то пошло не так - Логина не существует или неверный ОК Ошибка Введите логин пользователя @@ -27,6 +26,16 @@ Проверка сотрудника Нет связи с интернетом Сервер недоступен + Ошибка авторизации: Неверные учетные данные + Ошибка: Запрашиваемый ресурс не найден + Ошибка сервера: Попробуйте позже + Неизвестная ошибка (%s) + Пароль должен содержать не менее 8 символов + + Имя пользователя не может быть пустым + Логин должен содержать не менее 3 символов + Логин в систему не может начинаться с цифры + Логин может содержать только буквы, цифры и символы подчеркивания diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index e7ff264..b0a0697 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -11,7 +11,7 @@ The entrance was cancelled Successful Somethings wrong - The login does not work or is incorrect + Authorization error: Invalid login or password ОК Error Enter the username @@ -26,11 +26,16 @@ Scan result Profile The password must contain at least 8 characters - The password must contain at least one uppercase letter - The password must contain at least one digit - Checking the session employee + The username cannot be empty Login must contain at least 3 characters Login cannot start with a digit Login can contain only letters, numbers, and underscores + + Checking the session employee + + + Error: Requested resource not found + Server error: Try again later + Неизвестная ошибка (%s) \ No newline at end of file