Skip to content

Commit

Permalink
catcare. [finish] [build]
Browse files Browse the repository at this point in the history
  • Loading branch information
anwarhakim31 authored Jul 16, 2024
1 parent ea49f8e commit 3d2e517
Show file tree
Hide file tree
Showing 3 changed files with 33 additions and 41 deletions.
60 changes: 24 additions & 36 deletions app/src/main/java/com/example/catcare/Forgot.java
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
import com.google.firebase.database.ValueEventListener;

public class Forgot extends AppCompatActivity {
private EditText etUsername, etEmail, etPassword,confPassword;
private EditText etUsername, etPassword,confPassword;
private TextView ingatakun;
private Button btnGanti;
private boolean mail = false;
Expand All @@ -53,7 +53,7 @@ protected void onCreate(Bundle savedInstanceState) {
});

show_pass_btn = findViewById(R.id.show_pass_btn);
etEmail = findViewById(R.id.etEmail);
etUsername = findViewById(R.id.etUsername);
etPassword = findViewById(R.id.etPassword);
btnGanti = findViewById(R.id.btnGanti);
confPassword = findViewById(R.id.etPasswords);
Expand Down Expand Up @@ -82,49 +82,40 @@ public void onClick(View view) {
etPassword.setSelection(selection);
}
});
etEmail.addTextChangedListener(new TextWatcher() {
etUsername.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
// Method ini dipanggil sebelum teks berubah
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
String email = etEmail.getText().toString().trim();
String username = etUsername.getText().toString().trim();


}
@Override
public void afterTextChanged(Editable s) {
String email = etEmail.getText().toString().trim();
String username = etUsername.getText().toString().trim();

if (!email.contains("@")) {

etEmail.setError("Email harus terdapat karakter '@' ");
mail = false;
return;

}
database = FirebaseDatabase.getInstance().getReference("users");
database.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {

for (DataSnapshot userSnapshot : snapshot.getChildren()) {

String existingEmail = userSnapshot.child("email").getValue(String.class);
String existingUsername = userSnapshot.child("username").getValue(String.class);

Log.d("TAG", existingEmail);
Log.d("TAG", email);
Log.d("TAG", String.valueOf(existingEmail.equals(email)));

if (existingEmail != null && existingEmail.equals(email)) {

etEmail.setError(null);
mail = true; // Mengatur mail menjadi true karena email sudah digunakan
if (existingUsername != null && existingUsername.equals(username)) {
etUsername.setError("Akun tidak terdaftar");
mail = false;

}else{
etEmail.setError("Email tidak valid");
mail = false;
etUsername.setError(null);
mail = true;

}

Expand Down Expand Up @@ -152,7 +143,7 @@ public void onTextChanged(CharSequence s, int start, int before, int count) {}
@Override
public void afterTextChanged(Editable s) {
String password = etPassword.getText().toString().trim();
String email = etEmail.getText().toString().trim();
String username = etUsername.getText().toString().trim();
String passwordRegex = "^(?=.*\\d)[\\w\\W]*$";

if (password.isEmpty()) {
Expand All @@ -167,8 +158,8 @@ public void afterTextChanged(Editable s) {
} else if (!password.matches(passwordRegex)) {
etPassword.setError("Password setidaknya harus mengandung satu angka");
pass = false;
} else if (password.equals(email)) {
etPassword.setError("Password tidak boleh sama dengan email");
} else if (password.equals(username)) {
etPassword.setError("Password tidak boleh sama dengan username");
pass = false;
} else {
etPassword.setError(null);
Expand Down Expand Up @@ -202,15 +193,15 @@ public void afterTextChanged(Editable s) {
@Override
public void onClick(View view) {

final String email = etEmail.getText().toString().trim();
final String username = etUsername.getText().toString().trim();
final String password = etPassword.getText().toString().trim();
final String cpassword = confPassword.getText().toString().trim();




if (TextUtils.isEmpty(email)) {
etEmail.setError("Masukan Email");
if (TextUtils.isEmpty(username)) {
etUsername.setError("Masukan Email");
return;
}
if (TextUtils.isEmpty(password)) {
Expand All @@ -224,10 +215,7 @@ public void onClick(View view) {
return;
}

if (!mail) {
etEmail.setError("Email tidak valid");
return;
}

if (!cpass) {
confPassword.setError("Password tidak sama");
return;
Expand All @@ -239,19 +227,19 @@ public void onClick(View view) {
database.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
boolean emailFound = false;
boolean usernameFound = false;
for (DataSnapshot userSnapshot : snapshot.getChildren()) {

String emails = userSnapshot.child("email").getValue(String.class);
if (emails != null && emails.equals(email)) {
String usernames = userSnapshot.child("username").getValue(String.class);
if (usernames != null && usernames.equals(username)) {
userSnapshot.child("password").getRef().setValue(cpassword);
Toast.makeText(Forgot.this, "Berhasil mengganti password", Toast.LENGTH_SHORT).show();
emailFound = true;
usernameFound = true;
break;
}
}
if (!emailFound) {
Toast.makeText(Forgot.this, "Email tidak ditemukan", Toast.LENGTH_SHORT).show();
if (!usernameFound) {
Toast.makeText(Forgot.this, "Akun tidak terdaftar", Toast.LENGTH_SHORT).show();
} else {
Intent loginIntent = new Intent(Forgot.this, Login.class);
startActivity(loginIntent);
Expand Down
13 changes: 8 additions & 5 deletions app/src/main/res/layout/forgot_catcare.xml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
app:layout_constraintVertical_bias="0.255" />

<EditText
android:id="@+id/etEmail"
android:id="@+id/etUsername"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="32dp"
Expand Down Expand Up @@ -54,10 +54,10 @@
android:layout_height="60dp"
android:layout_marginTop="16dp"

app:layout_constraintEnd_toEndOf="@+id/etEmail"
app:layout_constraintEnd_toEndOf="@+id/etUsername"
app:layout_constraintHorizontal_bias="1.0"
app:layout_constraintStart_toStartOf="@+id/etEmail"
app:layout_constraintTop_toBottomOf="@+id/etEmail">
app:layout_constraintStart_toStartOf="@+id/etUsername"
app:layout_constraintTop_toBottomOf="@+id/etUsername">

<EditText
android:id="@+id/etPassword"
Expand Down Expand Up @@ -130,10 +130,13 @@
android:layout_marginTop="36dp"
android:background="@drawable/btn_bg"
android:text="Ubah Password"
android:textColor="@color/white"
app:layout_constraintEnd_toEndOf="@+id/etPasswords"
app:layout_constraintStart_toStartOf="@+id/etPasswords"
app:layout_constraintTop_toBottomOf="@+id/etPasswords" />



<EditText
android:id="@+id/etPasswords"
android:layout_width="0dp"
Expand All @@ -143,7 +146,7 @@
android:drawablePadding="10dp"
android:ems="10"
android:hint="Konfirmasi Password"
android:inputType="text"
android:inputType="textPassword"
android:paddingLeft="20dp"
android:paddingTop="15dp"
android:paddingRight="10dp"
Expand Down
1 change: 1 addition & 0 deletions app/src/main/res/layout/register_catcare.xml
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,7 @@
android:layout_marginTop="36dp"
android:layout_marginEnd="35dp"
android:background="@drawable/btn_bg"
android:textColor="@color/white"
android:text="Register"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.5"
Expand Down

0 comments on commit 3d2e517

Please sign in to comment.