Rafiul Islam
08/24/2021, 8:23 AMRafiul Islam
08/24/2021, 8:32 AMvar username by mutableStateOf("")
private set
var password by mutableStateOf("")
private set
var usernameError by mutableStateOf("")
private set
var passwordError by mutableStateOf("")
private set
fun onUsernameChange(name: String) {
username = name
if (name.isNotEmpty()) {
usernameError = ""
}
}
fun login() {
if (username.isEmpty()) {
usernameError = "Username field is empty!"
return
}
if (password.isEmpty()) {
passwordError = "Password field is empty!"
return
}
viewModelScope.launch {
val response = repository.login(LoginRequest(username, password))
response.let {
when (response) {
is Resource.Success -> {
response.value.errors?.username?.let {
if (it == "no_value") {
usernameError = "Username can't be empty!"
} else if (it == "no_user") {
usernameError =
"There is no user with this username!"
}
}
is Resource.Failure -> {
isNetworkError = true
}
}
}
}
Rafiul Islam
08/24/2021, 8:38 AMval (username, onUsernameChange) = remember { mutableStateOf("") }