diff --git a/.gradle/7.3/executionHistory/executionHistory.bin b/.gradle/7.3/executionHistory/executionHistory.bin
index ef2d1cf..4b779d9 100644
Binary files a/.gradle/7.3/executionHistory/executionHistory.bin and b/.gradle/7.3/executionHistory/executionHistory.bin differ
diff --git a/.gradle/7.3/executionHistory/executionHistory.lock b/.gradle/7.3/executionHistory/executionHistory.lock
index ea803fd..1a29de4 100644
Binary files a/.gradle/7.3/executionHistory/executionHistory.lock and b/.gradle/7.3/executionHistory/executionHistory.lock differ
diff --git a/.gradle/7.3/fileHashes/fileHashes.bin b/.gradle/7.3/fileHashes/fileHashes.bin
index f828d2f..2842cbc 100644
Binary files a/.gradle/7.3/fileHashes/fileHashes.bin and b/.gradle/7.3/fileHashes/fileHashes.bin differ
diff --git a/.gradle/7.3/fileHashes/fileHashes.lock b/.gradle/7.3/fileHashes/fileHashes.lock
index a6631f2..078045f 100644
Binary files a/.gradle/7.3/fileHashes/fileHashes.lock and b/.gradle/7.3/fileHashes/fileHashes.lock differ
diff --git a/.gradle/7.3/fileHashes/resourceHashesCache.bin b/.gradle/7.3/fileHashes/resourceHashesCache.bin
index 5853239..e9b4984 100644
Binary files a/.gradle/7.3/fileHashes/resourceHashesCache.bin and b/.gradle/7.3/fileHashes/resourceHashesCache.bin differ
diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock
index bdb023a..e063cec 100644
Binary files a/.gradle/buildOutputCleanup/buildOutputCleanup.lock and b/.gradle/buildOutputCleanup/buildOutputCleanup.lock differ
diff --git a/.idea/misc.xml b/.idea/misc.xml
index 1cbfbf1..37235f5 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -120,6 +120,8 @@
+
+
diff --git a/app/src/main/java/com/nuryadincjr/merdekabelanja/adminacitvity/AddStaffsActivity.java b/app/src/main/java/com/nuryadincjr/merdekabelanja/adminacitvity/AddStaffsActivity.java
index c50e647..4d5ac5e 100644
--- a/app/src/main/java/com/nuryadincjr/merdekabelanja/adminacitvity/AddStaffsActivity.java
+++ b/app/src/main/java/com/nuryadincjr/merdekabelanja/adminacitvity/AddStaffsActivity.java
@@ -36,7 +36,6 @@
import com.nuryadincjr.merdekabelanja.databinding.ActivityAddStafsBinding;
import com.nuryadincjr.merdekabelanja.interfaces.ItemClickListener;
import com.nuryadincjr.merdekabelanja.models.Staffs;
-import com.nuryadincjr.merdekabelanja.models.Users;
import com.nuryadincjr.merdekabelanja.pojo.ImagesPreference;
import com.nuryadincjr.merdekabelanja.viewmodel.MainViewModel;
@@ -53,6 +52,7 @@ public class AddStaffsActivity extends AppCompatActivity {
private Staffs staffs;
private boolean isEdit;
private String imageOld;
+ private String emailOld;
private List uriImageList;
@Override
@@ -89,6 +89,7 @@ private String getEdited(String titleBar) {
if(isEdit) {
staffs = getIntent().getParcelableExtra(NAME_DATA);
imageOld = staffs.getPhoto();
+ emailOld = staffs.getEmail();
onDataSet(staffs);
binding.btnRegister.setText("Save Data");
titleBar = "Edit Staff";
@@ -170,18 +171,20 @@ private void getInputValidations() {
String address = valueOf(binding.etAddress.getText());
String division = valueOf(binding.actDevisions.getText());
- if(!fullName.isEmpty() && !phone.isEmpty() && !email.isEmpty() &&
- !password.isEmpty() && !confpassword.isEmpty() && !division.isEmpty()) {
- if(password.length() > 7) {
- if(password.equals(confpassword)){
- Staffs staffs = new Staffs(id, fullName, phone, email, photo, address, email,
- password, time(), "register", division);
+ if(phone.contains("+")){
+ if(!fullName.isEmpty() && !phone.isEmpty() && !email.isEmpty() &&
+ !password.isEmpty() && !confpassword.isEmpty() && !division.isEmpty()) {
+ if(password.length() > 7) {
+ if(password.equals(confpassword)){
+ Staffs staffs = new Staffs(id, fullName, phone, email, photo, address, email,
+ password, time(), "register", division);
- onRegister(staffs);
+ onRegister(staffs);
- } else binding.etPassword.setError("Password cannot equals!");
- } else binding.etConfPassword.setError("Password too short!");
- } else Toast.makeText(this,"Empty credentials!", Toast.LENGTH_SHORT).show();
+ } else binding.etPassword.setError("Password cannot equals!");
+ } else binding.etConfPassword.setError("Password too short!");
+ } else Toast.makeText(this,"Empty credentials!", Toast.LENGTH_SHORT).show();
+ }else binding.etPhone.setError("Please used the country code!");
}
private void onRegister(Staffs staffs) {
@@ -255,6 +258,22 @@ private void onDataUpdated(Staffs staffs) {
}
private void startDataUpdated(Staffs staffs) {
+ MainViewModel mainViewModel = new ViewModelProvider(this).get(MainViewModel.class);
+ mainViewModel.getUsername(staffs.getUsername()).observe(this, user -> {
+ if(user.size() ==0){
+ getDataUpdated(staffs);
+ }else {
+ if(user.get(0).getUsername().equals(emailOld)){
+ getDataUpdated(staffs);
+ }else {
+ dialog.dismiss();
+ binding.etEmail.setError("The email for the login session with this username already exists!");
+ }
+ }
+ });
+ }
+
+ private void getDataUpdated(Staffs staffs) {
new StaffsRepository().updateStaffs(staffs).addOnSuccessListener(documentReference -> {
Log.d(TAG, "DocumentSnapshot added with ID: " + documentReference);
dialog.dismiss();
diff --git a/app/src/main/res/layout/activity_add_stafs.xml b/app/src/main/res/layout/activity_add_stafs.xml
index 590ef9a..48647b2 100644
--- a/app/src/main/res/layout/activity_add_stafs.xml
+++ b/app/src/main/res/layout/activity_add_stafs.xml
@@ -56,6 +56,7 @@
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:hint="@string/str_phone_number"
+ app:helperText="ex: +62xxxxxxxx"
style="@style/Widget.MaterialComponents.TextInputLayout.OutlinedBox">