Advertisement
hilman99

UbahKataSandi

May 1st, 2017
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.46 KB | None | 0 0
  1. package com.utomoardy.bejajan2.Penjual;
  2.  
  3. import android.os.Bundle;
  4. import android.support.annotation.NonNull;
  5. import android.support.v7.app.AppCompatActivity;
  6. import android.text.TextUtils;
  7. import android.view.View;
  8. import android.widget.Button;
  9. import android.widget.EditText;
  10. import android.widget.Toast;
  11.  
  12. import com.google.android.gms.tasks.OnCompleteListener;
  13. import com.google.android.gms.tasks.Task;
  14. import com.google.firebase.auth.AuthResult;
  15. import com.google.firebase.auth.FirebaseAuth;
  16. import com.google.firebase.database.DataSnapshot;
  17. import com.google.firebase.database.DatabaseError;
  18. import com.google.firebase.database.DatabaseReference;
  19. import com.google.firebase.database.FirebaseDatabase;
  20. import com.google.firebase.database.ValueEventListener;
  21. import com.utomoardy.bejajan2.Java.User;
  22. import com.utomoardy.bejajan2.R;
  23.  
  24. public class UbahKataSandi extends AppCompatActivity {
  25.     FirebaseAuth mAuth;
  26.     FirebaseDatabase mDatabase;
  27.     DatabaseReference mRootRef, mUserRef;
  28.     EditText sandiLamaEdit, sandiBaruEdit, ulangiSandiEdit;
  29.     Button simpanSandiEdit;
  30.     String TAG = "UbahKataSandi";
  31.     @Override
  32.     protected void onCreate(Bundle savedInstanceState) {
  33.         super.onCreate(savedInstanceState);
  34.         setContentView(R.layout.activity_ubah_kata_sandi);
  35.         mAuth = FirebaseAuth.getInstance();
  36.         mDatabase = FirebaseDatabase.getInstance();
  37.         mRootRef = mDatabase.getReference();
  38.         mUserRef = mRootRef.child("users");
  39.  
  40.         sandiLamaEdit = (EditText) findViewById(R.id.sandiLama);
  41.         sandiBaruEdit = (EditText) findViewById(R.id.sandiBaru);
  42.         ulangiSandiEdit = (EditText) findViewById(R.id.ulangSandi);
  43.         simpanSandiEdit = (Button) findViewById(R.id.simpanSandi);
  44.  
  45.         simpanSandiEdit.setOnClickListener(new View.OnClickListener() {
  46.             @Override
  47.             public void onClick(View v) {
  48.                ubahPassword();
  49.  
  50.             }
  51.         });
  52.  
  53.     }
  54.  
  55.     private void ubahPassword() {
  56.         final String passwordLama = sandiLamaEdit.getText().toString();
  57.         final String passwordBaru = sandiBaruEdit.getText().toString();
  58.         final String ulangpass = ulangiSandiEdit.getText().toString();
  59.  
  60.         mUserRef.child(mAuth.getCurrentUser().getUid()).addListenerForSingleValueEvent(new ValueEventListener() {
  61.             @Override
  62.             public void onDataChange(DataSnapshot dataSnapshot) {
  63.                 final User user = dataSnapshot.getValue(User.class);
  64.                 String email = user.email;
  65.                 String password = user.password;
  66.                 if (TextUtils.isEmpty(passwordBaru)){
  67.                     sandiBaruEdit.setError("Kata sandi baru harus di isi");
  68.                 }else if (!TextUtils.equals(passwordBaru, ulangpass)){
  69.                     ulangiSandiEdit.setError("Ulangi kata sandi dengan benar");
  70.                 }else {
  71.                     if (password.equals(passwordLama) && passwordBaru.equals(ulangpass)){
  72.                         mAuth.signInWithEmailAndPassword(email, password).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
  73.                             @Override
  74.                             public void onComplete(@NonNull Task<AuthResult> task) {
  75.                                 if (task.isSuccessful()){
  76.                                     mAuth.getCurrentUser().updatePassword(passwordBaru).addOnCompleteListener(new OnCompleteListener<Void>() {
  77.                                         @Override
  78.                                         public void onComplete(@NonNull Task<Void> task) {
  79.                                             if (task.isSuccessful()){
  80.                                                 mUserRef.child(mAuth.getCurrentUser().getUid()).child("password").setValue(passwordBaru);
  81.                                                 Toast.makeText(getApplicationContext(), "Kata Sandi berhasil di ubah", Toast.LENGTH_SHORT).show();
  82.                                                 finish();
  83.                                             }
  84.                                         }
  85.                                     });
  86.                                 }
  87.                             }
  88.                         });
  89.                     }else {
  90.                         sandiLamaEdit.setError("Kata Sandi lama tidak sesuai !");
  91.                     }
  92.                 }
  93.             }
  94.  
  95.             @Override
  96.             public void onCancelled(DatabaseError databaseError) {
  97.  
  98.             }
  99.         });
  100.     }
  101. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement