У меня есть действие под названием SettingsActivity. Это действие используется для изменения пароля для входа в систему.
У меня проблемы с лестницей. Когда я нажимаю кнопку «Отправить», одновременно с изменением пароля появляется тост «Неверный старый пароль» и «Пароль для входа в систему».
LoginRef.child(currentUserId).addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
if(dataSnapshot.exists()){
String oldpassword = dataSnapshot.child("password").getValue().toString();
String oldPassword = LoginOldPassword.getText().toString();
String newPassword = LoginNewPassword.getText().toString();
String confirmNewPassword = LoginConfirmNewPassword.getText().toString();
if(!newPassword.equals(confirmNewPassword)){
Toast.makeText(SettingsActivity.this,"Passwords Not Matching!",Toast.LENGTH_SHORT).show();
}
else if(!oldPassword.equals(oldpassword)){
Toast.makeText(SettingsActivity.this,"Incorrect Old Password!",Toast.LENGTH_SHORT).show();
}
else if(newPassword.equals(oldPassword)){
Toast.makeText(SettingsActivity.this,"Old Password and New Password Cannot Be Same!",Toast.LENGTH_SHORT).show();
}
else {
HashMap loginmap = new HashMap();
loginmap.put("password",newPassword);
LoginRef.child(currentUserId).updateChildren(loginmap).addOnCompleteListener(new OnCompleteListener() {
@Override
public void onComplete(@NonNull Task task) {
Toast.makeText(SettingsActivity.this,"Login Password Changed",Toast.LENGTH_SHORT).show();
}
});
}
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
Я не хочу, чтобы тост «Неверный старый пароль» был тостом одновременно с тостом «Логин пароль изменен».