From 0af524781b92fe69574cdabdef88e314bad194b3 Mon Sep 17 00:00:00 2001 From: Basler182 Date: Sat, 22 Jun 2024 22:01:37 +0200 Subject: [PATCH] refactored register button enabled form validation into view model Signed-off-by: Basler182 --- .../module/account/register/RegisterFormValidator.kt | 8 -------- .../module/account/register/RegisterViewModel.kt | 12 ++++++++++-- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/modules/account/src/main/kotlin/edu/stanford/spezi/module/account/register/RegisterFormValidator.kt b/modules/account/src/main/kotlin/edu/stanford/spezi/module/account/register/RegisterFormValidator.kt index 21085f49c..336af2574 100644 --- a/modules/account/src/main/kotlin/edu/stanford/spezi/module/account/register/RegisterFormValidator.kt +++ b/modules/account/src/main/kotlin/edu/stanford/spezi/module/account/register/RegisterFormValidator.kt @@ -45,12 +45,4 @@ internal class RegisterFormValidator @Inject constructor() : FormValidator() { birthdayResult(uiState.dateOfBirth).isValid && passwordConditionSatisfied() } - - fun isRegisterButtonEnabled(uiState: RegisterUiState): Boolean { - return uiState.email.value.isNotEmpty() && - uiState.firstName.value.isNotEmpty() && - uiState.lastName.value.isNotEmpty() && - uiState.selectedGender.value.isNotEmpty() && - uiState.dateOfBirth != null - } } diff --git a/modules/account/src/main/kotlin/edu/stanford/spezi/module/account/register/RegisterViewModel.kt b/modules/account/src/main/kotlin/edu/stanford/spezi/module/account/register/RegisterViewModel.kt index 1ec0f4207..d6b9120d7 100644 --- a/modules/account/src/main/kotlin/edu/stanford/spezi/module/account/register/RegisterViewModel.kt +++ b/modules/account/src/main/kotlin/edu/stanford/spezi/module/account/register/RegisterViewModel.kt @@ -50,7 +50,7 @@ class RegisterViewModel @Inject internal constructor( } updatedUiState.copy( isFormValid = validator.isFormValid(updatedUiState), - isRegisterButtonEnabled = validator.isRegisterButtonEnabled(updatedUiState) + isRegisterButtonEnabled = isRegisterButtonEnabled(updatedUiState) ) } @@ -62,7 +62,7 @@ class RegisterViewModel @Inject internal constructor( ) updatedUiState.copy( isFormValid = validator.isFormValid(updatedUiState), - isRegisterButtonEnabled = validator.isRegisterButtonEnabled(updatedUiState) + isRegisterButtonEnabled = isRegisterButtonEnabled(updatedUiState) ) } @@ -174,4 +174,12 @@ class RegisterViewModel @Inject internal constructor( ) } } + + private fun isRegisterButtonEnabled(uiState: RegisterUiState): Boolean { + return uiState.email.value.isNotEmpty() && + uiState.firstName.value.isNotEmpty() && + uiState.lastName.value.isNotEmpty() && + uiState.selectedGender.value.isNotEmpty() && + uiState.dateOfBirth != null + } }