Skip to content
This repository has been archived by the owner on Mar 8, 2024. It is now read-only.

Commit

Permalink
πŸ”€ :: (#85) νšŒμ›κ°€μž… ν”Όλ“œλ°± 반영
Browse files Browse the repository at this point in the history
πŸ”€ :: (#85) νšŒμ›κ°€μž… ν”Όλ“œλ°± 반영
  • Loading branch information
Tmdhoon2 authored Nov 14, 2023
2 parents 8379b17 + fec0e00 commit 31f934c
Show file tree
Hide file tree
Showing 4 changed files with 29 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ data class SignUpState(
val nameError: Boolean,
val birth: String,
val phone: String,
val phoneError: Boolean,
val gender: Gender,
val accountId: String,
val accountIdError: Boolean,
Expand All @@ -22,6 +23,7 @@ data class SignUpState(
nameError = false,
birth = "",
phone = "",
phoneError = false,
accountId = "",
accountIdError = false,
gender = Gender.MAN,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -89,8 +89,9 @@ internal fun SignUpUser(
showDialog = { isShowDialog = !isShowDialog },
name = { state.name },
nameError = { state.nameError },
birth = { state.birth.toString() },
birth = { state.birth },
phoneNumber = { state.phone },
phoneError = { state.phoneError },
gender = { state.gender },
onNameChange = signUpViewModel::setName,
onPhoneNumberChange = signUpViewModel::setPhone,
Expand Down Expand Up @@ -127,6 +128,7 @@ private fun SignUpInputs(
nameError: () -> Boolean,
birth: () -> String,
phoneNumber: () -> String,
phoneError: () -> Boolean,
gender: () -> Gender,
onNameChange: (String) -> Unit,
onPhoneNumberChange: (String) -> Unit,
Expand Down Expand Up @@ -208,6 +210,8 @@ private fun SignUpInputs(
hint = stringResource(id = R.string.sign_up_hint_phone_number),
title = stringResource(id = R.string.phone_number),
keyboardType = KeyboardType.NumberPassword,
error = phoneError(),
description = stringResource(id = R.string.sign_up_phone_error),
)
Spacer(modifier = Modifier.height(14.dp))
Column(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package com.signal.signal_android.feature.signup

import android.telephony.PhoneNumberUtils
import androidx.lifecycle.viewModelScope
import com.signal.domain.enums.Gender
import com.signal.domain.usecase.users.SignUpUseCase
Expand Down Expand Up @@ -29,7 +30,12 @@ class SignUpViewModel(
}

fun setPhone(phone: String) {
setState(state.value.copy(phone = phone))
setState(
state.value.copy(
phone = phone,
phoneError = phone.length != 11,
)
)
setButtonEnabledUser()
}

Expand Down Expand Up @@ -76,8 +82,9 @@ class SignUpViewModel(

private fun setButtonEnabledUser() {
with(state.value) {
val isError = nameError || phoneError
val isBlank = name.isBlank() || phone.isBlank()
setState(copy(buttonEnabled = !isBlank && !nameError))
setState(copy(buttonEnabled = !isBlank && !isError))
}
}

Expand All @@ -92,10 +99,11 @@ class SignUpViewModel(
fun signUp() {
viewModelScope.launch(Dispatchers.IO) {
with(state.value) {
PhoneNumberUtils.formatNumber(phone, "")
signUpUseCase(
name = name,
birth = birth,
phone = phone,
phone = phone.toPhoneNumber(),
accountId = accountId,
password = password,
gender = gender,
Expand All @@ -106,3 +114,13 @@ class SignUpViewModel(
}
}
}

private fun String.toPhoneNumber() = StringBuilder().apply {
with(this@toPhoneNumber) {
append(substring(0..2))
append('-')
append(substring(3..6))
append('-')
append(substring(7..10))
}
}.toString()
1 change: 1 addition & 0 deletions presentation/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@
<string name="sign_up_hint_password_confirm">λΉ„λ°€λ²ˆν˜Έλ₯Ό λ‹€μ‹œ μž…λ ₯ν•˜μ„Έμš”</string>

<string name="sign_up_name_error">2~20κΈ€μžλ‘œ μž…λ ₯ν•΄μ£Όμ„Έμš”</string>
<string name="sign_up_phone_error">μ˜¬λ°”λ₯Έ ν˜•μ‹μ˜ μ „ν™”λ²ˆν˜Έλ₯Ό μž…λ ₯ν•΄μ£Όμ„Έμš”</string>
<string name="sign_up_account_id_error">5~12κΈ€μžλ‘œ μž…λ ₯ν•΄μ£Όμ„Έμš”</string>
<string name="sign_up_password_error">8κΈ€μž 이상 12κΈ€μž μ΄ν•˜λ‘œ 문자, 숫자, 특수문자λ₯Ό ν¬ν•¨ν•΄μ£Όμ„Έμš”</string>
<string name="sign_up_repeat_password_error">λΉ„λ°€λ²ˆν˜Έκ°€ μΌμΉ˜ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€</string>
Expand Down

0 comments on commit 31f934c

Please sign in to comment.