Don't login if pin is not entered

This commit is contained in:
Luna712 2023-11-04 12:39:19 -06:00
parent 3536da6166
commit a9f3f7bdf8
2 changed files with 13 additions and 3 deletions

View file

@ -60,7 +60,12 @@ class AccountSelectActivity : AppCompatActivity() {
// Handle the selected account
accountSelectCallback = {
viewModel.handleAccountSelect(it,this@AccountSelectActivity)
navigateToMainActivity()
observe(viewModel.isAllowedLogin) { isAllowedLogin ->
if (isAllowedLogin) {
// We are allowed to continue to MainActivity
navigateToMainActivity()
}
}
},
accountCreateCallback = { viewModel.handleAccountUpdate(it, this@AccountSelectActivity) },
accountEditCallback = {

View file

@ -16,6 +16,9 @@ class AccountViewModel : ViewModel() {
private val _isEditing = MutableLiveData(false)
val isEditing: LiveData<Boolean> = _isEditing
private val _isAllowedLogin = MutableLiveData(false)
val isAllowedLogin: LiveData<Boolean> = _isAllowedLogin
fun handleAccountUpdate(context: Context) {
_accounts.postValue(getAccounts(context))
}
@ -63,11 +66,13 @@ class AccountViewModel : ViewModel() {
false
) { pin ->
if (pin == null) return@showPinInputDialog
// Pin is correct, proceed to main activity
// Pin is correct, proceed
_isAllowedLogin.postValue(true)
setAccount(account, true)
}
} else {
// No PIN set for the selected account, proceed to main activity
// No PIN set for the selected account, proceed
_isAllowedLogin.postValue(true)
setAccount(account, true)
}
}