From 92484ff1d54ac1d96768f2a200a5252fc3023316 Mon Sep 17 00:00:00 2001
From: Nezumi <123229563+Nez27@users.noreply.github.com>
Date: Wed, 15 Mar 2023 12:04:19 +0700
Subject: [PATCH] Add validator data on sign up screen
---
app/src/main/AndroidManifest.xml | 3 +-
.../com/capstone/foodify/API/FoodApi.java | 16 +-
.../capstone/foodify/API/FoodApiToken.java | 3 +-
.../Activity/AddressManagerActivity.java | 4 +-
.../foodify/Activity/FoodDetailActivity.java | 9 +-
.../foodify/Activity/MainActivity.java | 7 -
.../foodify/Activity/OrderDetailActivity.java | 2 +-
.../foodify/Activity/ShopDetailActivity.java | 7 +-
.../foodify/Activity/SignUpActivity.java | 224 +++++--
.../Activity/VerifyAccountActivity.java | 4 +
.../foodify/Adapter/AddressAdapter.java | 2 +-
.../foodify/Adapter/BasketAdapter.java | 2 +-
.../capstone/foodify/Adapter/FoodAdapter.java | 2 +-
.../foodify/Adapter/FoodFavoriteAdapter.java | 3 +-
.../foodify/Adapter/FoodSearchAdapter.java | 5 +-
.../foodify/Adapter/FoodShopAdapter.java | 4 +-
.../capstone/foodify/Adapter/MenuAdapter.java | 2 +-
.../foodify/Adapter/OrderAdapter.java | 2 +-
.../foodify/Adapter/OrderDetailAdapter.java | 2 +-
.../foodify/Adapter/ReviewAdapter.java | 2 +-
.../capstone/foodify/Adapter/ShopAdapter.java | 3 +-
.../java/com/capstone/foodify/Common.java | 4 +-
.../foodify/Fragment/BasketFragment.java | 2 +-
.../foodify/Fragment/FavoriteFragment.java | 13 +-
.../foodify/Fragment/HomeFragment.java | 11 +-
.../Fragment/Order/CompleteOrderFragment.java | 2 +-
.../Fragment/Order/PreparingFragment.java | 2 +-
.../Fragment/Order/ProcessOderFragment.java | 2 +-
.../Fragment/Order/ShipOrderFragment.java | 2 +-
.../foodify/Fragment/SearchFragment.java | 6 +-
.../foodify/Model/{Address => }/Address.java | 2 +-
.../foodify/Model/{Basket => }/Basket.java | 2 +-
.../Model/{Category => }/Category.java | 2 +-
.../DistrictWardResponse.java | 2 +-
.../foodify/Model/{Food => }/Food.java | 6 +-
.../foodify/Model/{Image => }/Image.java | 2 +-
.../foodify/Model/{Menu => }/Menu.java | 4 +-
.../foodify/Model/{Order => }/Order.java | 3 +-
.../Model/{Order => }/OrderDetail.java | 2 +-
.../foodify/Model/Response/Foods.java | 2 +-
.../Model/{Image => Response}/Images.java | 3 +-
.../foodify/Model/Response/Shops.java | 2 +-
.../foodify/Model/{Review => }/Review.java | 2 +-
.../foodify/Model/{Shop => }/Shop.java | 2 +-
.../foodify/Model/{Slider => }/Slider.java | 2 +-
.../java/com/capstone/foodify/Model/User.java | 87 +++
app/src/main/res/layout/activity_sign_up.xml | 612 +++++++++---------
app/src/main/res/values/colors.xml | 1 -
48 files changed, 653 insertions(+), 437 deletions(-)
rename app/src/main/java/com/capstone/foodify/Model/{Address => }/Address.java (95%)
rename app/src/main/java/com/capstone/foodify/Model/{Basket => }/Basket.java (97%)
rename app/src/main/java/com/capstone/foodify/Model/{Category => }/Category.java (91%)
rename app/src/main/java/com/capstone/foodify/Model/{DistrictWard => }/DistrictWardResponse.java (87%)
rename app/src/main/java/com/capstone/foodify/Model/{Food => }/Food.java (94%)
rename app/src/main/java/com/capstone/foodify/Model/{Image => }/Image.java (92%)
rename app/src/main/java/com/capstone/foodify/Model/{Menu => }/Menu.java (85%)
rename app/src/main/java/com/capstone/foodify/Model/{Order => }/Order.java (97%)
rename app/src/main/java/com/capstone/foodify/Model/{Order => }/OrderDetail.java (95%)
rename app/src/main/java/com/capstone/foodify/Model/{Image => Response}/Images.java (83%)
rename app/src/main/java/com/capstone/foodify/Model/{Review => }/Review.java (94%)
rename app/src/main/java/com/capstone/foodify/Model/{Shop => }/Shop.java (96%)
rename app/src/main/java/com/capstone/foodify/Model/{Slider => }/Slider.java (88%)
create mode 100644 app/src/main/java/com/capstone/foodify/Model/User.java
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index ca43e57..d2b4a2a 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -58,8 +58,7 @@
android:noHistory="true" />
+ android:exported="false" />
> listSlider();
+
+ @POST("api/auth/signup")
+ Call register(User user);
}
diff --git a/app/src/main/java/com/capstone/foodify/API/FoodApiToken.java b/app/src/main/java/com/capstone/foodify/API/FoodApiToken.java
index d6e8962..6492a4a 100644
--- a/app/src/main/java/com/capstone/foodify/API/FoodApiToken.java
+++ b/app/src/main/java/com/capstone/foodify/API/FoodApiToken.java
@@ -4,7 +4,7 @@ import static com.capstone.foodify.Common.TOKEN;
import androidx.annotation.NonNull;
-import com.capstone.foodify.Model.Food.Food;
+import com.capstone.foodify.Model.Food;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
@@ -18,7 +18,6 @@ import okhttp3.Response;
import retrofit2.Call;
import retrofit2.Retrofit;
import retrofit2.converter.gson.GsonConverterFactory;
-import retrofit2.http.Body;
import retrofit2.http.DELETE;
import retrofit2.http.GET;
import retrofit2.http.POST;
diff --git a/app/src/main/java/com/capstone/foodify/Activity/AddressManagerActivity.java b/app/src/main/java/com/capstone/foodify/Activity/AddressManagerActivity.java
index e8348de..646649f 100644
--- a/app/src/main/java/com/capstone/foodify/Activity/AddressManagerActivity.java
+++ b/app/src/main/java/com/capstone/foodify/Activity/AddressManagerActivity.java
@@ -20,9 +20,9 @@ import android.widget.Toast;
import com.capstone.foodify.API.FoodApi;
import com.capstone.foodify.Common;
-import com.capstone.foodify.Model.Address.Address;
+import com.capstone.foodify.Model.Address;
import com.capstone.foodify.Adapter.AddressAdapter;
-import com.capstone.foodify.Model.DistrictWard.DistrictWardResponse;
+import com.capstone.foodify.Model.DistrictWardResponse;
import com.capstone.foodify.R;
import com.google.android.material.textfield.TextInputLayout;
import com.sjapps.library.customdialog.CustomViewDialog;
diff --git a/app/src/main/java/com/capstone/foodify/Activity/FoodDetailActivity.java b/app/src/main/java/com/capstone/foodify/Activity/FoodDetailActivity.java
index bf40ce3..fd9bbd2 100644
--- a/app/src/main/java/com/capstone/foodify/Activity/FoodDetailActivity.java
+++ b/app/src/main/java/com/capstone/foodify/Activity/FoodDetailActivity.java
@@ -6,7 +6,6 @@ import android.content.Intent;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.os.Bundle;
-import android.util.Log;
import android.view.Gravity;
import android.view.View;
import android.view.Window;
@@ -24,10 +23,10 @@ import androidx.recyclerview.widget.RecyclerView;
import com.capstone.foodify.API.FoodApi;
import com.capstone.foodify.Common;
-import com.capstone.foodify.Model.Basket.Basket;
-import com.capstone.foodify.Model.Food.Food;
-import com.capstone.foodify.Model.Image.Image;
-import com.capstone.foodify.Model.Review.Review;
+import com.capstone.foodify.Model.Basket;
+import com.capstone.foodify.Model.Food;
+import com.capstone.foodify.Model.Image;
+import com.capstone.foodify.Model.Review;
import com.capstone.foodify.Adapter.ReviewAdapter;
import com.capstone.foodify.R;
import com.denzcoskun.imageslider.ImageSlider;
diff --git a/app/src/main/java/com/capstone/foodify/Activity/MainActivity.java b/app/src/main/java/com/capstone/foodify/Activity/MainActivity.java
index 0943ae7..a656bc4 100644
--- a/app/src/main/java/com/capstone/foodify/Activity/MainActivity.java
+++ b/app/src/main/java/com/capstone/foodify/Activity/MainActivity.java
@@ -13,25 +13,18 @@ import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.viewpager2.widget.ViewPager2;
-import com.capstone.foodify.API.FoodApi;
import com.capstone.foodify.Common;
-import com.capstone.foodify.Model.Image.Images;
import com.capstone.foodify.R;
import com.capstone.foodify.ViewPagerAdapter;
import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.Task;
import com.google.android.material.bottomnavigation.BottomNavigationView;
import com.google.android.material.navigation.NavigationBarView;
-import com.google.firebase.FirebaseApp;
import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.auth.FirebaseUser;
import com.google.firebase.auth.GetTokenResult;
-import com.saadahmedsoft.popupdialog.PopupDialog;
import io.paperdb.Paper;
-import retrofit2.Call;
-import retrofit2.Callback;
-import retrofit2.Response;
public class MainActivity extends AppCompatActivity {
diff --git a/app/src/main/java/com/capstone/foodify/Activity/OrderDetailActivity.java b/app/src/main/java/com/capstone/foodify/Activity/OrderDetailActivity.java
index 43c6b6e..b330423 100644
--- a/app/src/main/java/com/capstone/foodify/Activity/OrderDetailActivity.java
+++ b/app/src/main/java/com/capstone/foodify/Activity/OrderDetailActivity.java
@@ -9,7 +9,7 @@ import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
-import com.capstone.foodify.Model.Order.OrderDetail;
+import com.capstone.foodify.Model.OrderDetail;
import com.capstone.foodify.Adapter.OrderDetailAdapter;
import com.capstone.foodify.R;
diff --git a/app/src/main/java/com/capstone/foodify/Activity/ShopDetailActivity.java b/app/src/main/java/com/capstone/foodify/Activity/ShopDetailActivity.java
index e9511a5..ad723f0 100644
--- a/app/src/main/java/com/capstone/foodify/Activity/ShopDetailActivity.java
+++ b/app/src/main/java/com/capstone/foodify/Activity/ShopDetailActivity.java
@@ -1,6 +1,5 @@
package com.capstone.foodify.Activity;
-import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
@@ -18,13 +17,11 @@ import androidx.recyclerview.widget.RecyclerView;
import com.capstone.foodify.API.FoodApi;
import com.capstone.foodify.Adapter.FoodShopAdapter;
import com.capstone.foodify.Common;
-import com.capstone.foodify.Model.Food.Food;
+import com.capstone.foodify.Model.Food;
import com.capstone.foodify.Model.Response.Foods;
-import com.capstone.foodify.Model.Shop.Shop;
+import com.capstone.foodify.Model.Shop;
import com.capstone.foodify.R;
import com.google.android.material.appbar.CollapsingToolbarLayout;
-import com.saadahmedsoft.popupdialog.PopupDialog;
-import com.saadahmedsoft.popupdialog.Styles;
import com.squareup.picasso.Picasso;
import java.util.ArrayList;
diff --git a/app/src/main/java/com/capstone/foodify/Activity/SignUpActivity.java b/app/src/main/java/com/capstone/foodify/Activity/SignUpActivity.java
index 8cd8678..1f4a5bf 100644
--- a/app/src/main/java/com/capstone/foodify/Activity/SignUpActivity.java
+++ b/app/src/main/java/com/capstone/foodify/Activity/SignUpActivity.java
@@ -9,6 +9,8 @@ import android.content.Context;
import android.content.Intent;
import android.graphics.Typeface;
import android.os.Bundle;
+import android.text.Editable;
+import android.text.TextWatcher;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
@@ -22,7 +24,8 @@ import android.widget.Toast;
import com.capstone.foodify.API.FoodApi;
import com.capstone.foodify.Common;
-import com.capstone.foodify.Model.DistrictWard.DistrictWardResponse;
+import com.capstone.foodify.Model.DistrictWardResponse;
+import com.capstone.foodify.Model.User;
import com.capstone.foodify.R;
import com.google.android.material.button.MaterialButton;
import com.google.android.material.textfield.TextInputLayout;
@@ -31,15 +34,18 @@ import com.google.firebase.auth.FirebaseAuth;
import com.google.firebase.auth.PhoneAuthCredential;
import com.google.firebase.auth.PhoneAuthOptions;
import com.google.firebase.auth.PhoneAuthProvider;
-import com.saadahmedsoft.popupdialog.PopupDialog;
-import com.saadahmedsoft.popupdialog.Styles;
import java.text.SimpleDateFormat;
+import java.time.LocalDate;
+import java.time.Period;
+import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
import java.util.Locale;
import java.util.concurrent.TimeUnit;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
import retrofit2.Call;
import retrofit2.Callback;
@@ -48,19 +54,56 @@ import retrofit2.Response;
public class SignUpActivity extends AppCompatActivity {
private static final String PHONE_CODE = "+84";
- TextInputLayout textInput_email, textInput_password, textInput_phone,
- textInput_address, textInput_repeatPassword, textInput_fullName, textInput_birthDay;
+ private final String PASSWORD_PATTERN = "^(?=.*[0-9])(?=.*[A-Z])(?=.*[@#$%^&+=!_])(?=\\S+$).{4,}$";
+ private final String PHONE_PATTERN = "^0[98753]{1}\\d{8}$";
+ public static final String VALID_EMAIL_ADDRESS_REGEX = "^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\.[A-Z]{2,6}$";
+ public static final String FORMAT_DATE="dd/MM/yyyy";
+ TextInputLayout textInput_password, textInput_phone, textInput_email,
+ textInput_address, textInput_confirmPassword, textInput_fullName, textInput_birthDay;
final Calendar myCalendar= Calendar.getInstance();
- EditText edt_birthday, edt_phone;
- TextView signIn_textView, errorText;
- Spinner wardSpinner, districtSpinner;
- ImageView back_image;
- MaterialButton signUpButton;
- ConstraintLayout progressLayout;
+ private EditText edt_birthday, edt_phone, edt_passWord, edt_confirmPassword, edt_fullName, edt_address, edt_email;
+ private TextView signIn_textView, errorText, errorTextDistrictWard;
+ private Spinner wardSpinner, districtSpinner;
+ private ImageView back_image;
+ private MaterialButton signUpButton;
+ private ConstraintLayout progressLayout;
+ private String email, phone, name, dateOfBirth, address, district, ward, password = null;
private static final ArrayList wardList = new ArrayList<>();
private static final ArrayList districtList = new ArrayList<>();
+ private void initComponent() {
+ textInput_password = (TextInputLayout) findViewById(R.id.textInput_password);
+ textInput_phone = (TextInputLayout) findViewById(R.id.textInput_phone);
+ textInput_address = (TextInputLayout) findViewById(R.id.textInput_address);
+ textInput_confirmPassword = (TextInputLayout) findViewById(R.id.textInput_confirmPassword);
+ textInput_fullName = (TextInputLayout) findViewById(R.id.textInput_fullName);
+ textInput_birthDay = (TextInputLayout) findViewById(R.id.textInput_birthDay);
+ textInput_email = findViewById(R.id.textInput_email);
+
+ signUpButton = findViewById(R.id.sign_up_button);
+
+ edt_birthday = (EditText) findViewById(R.id.edt_birthDay);
+ edt_phone = findViewById(R.id.edt_phone);
+ edt_confirmPassword = findViewById(R.id.edt_confirmPassword);
+ edt_passWord = findViewById(R.id.edt_password);
+ edt_fullName = findViewById(R.id.edt_fullName);
+ edt_address = findViewById(R.id.edt_address);
+ edt_email = findViewById(R.id.edt_email);
+
+ districtSpinner = (Spinner) findViewById(R.id.district);
+ wardSpinner = (Spinner) findViewById(R.id.ward);
+
+ signIn_textView = (TextView) findViewById(R.id.signIn_textView);
+ errorText = findViewById(R.id.errorText);
+ errorTextDistrictWard = findViewById(R.id.errorTextDistrictWard);
+
+ back_image = (ImageView) findViewById(R.id.back_image);
+
+ progressLayout = findViewById(R.id.progress_layout);
+
+ }
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -71,12 +114,17 @@ public class SignUpActivity extends AppCompatActivity {
setFontUI();
chooseDateOfBirth();
+ //Get list district
if(districtList.size() == 0){
getListDistrict();
} else {
setAdapter(districtList, "---Quận", districtSpinner);
}
+
+ //Get list ward
getListWard(0);
+
+ //Add event when click on sign in button
signIn_textView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
@@ -84,6 +132,7 @@ public class SignUpActivity extends AppCompatActivity {
}
});
+ //Add event when click on back image
back_image.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
@@ -91,6 +140,7 @@ public class SignUpActivity extends AppCompatActivity {
}
});
+ //Add event for district spinner
districtSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView> adapterView, View view, int i, long l) {
@@ -107,12 +157,124 @@ public class SignUpActivity extends AppCompatActivity {
signUpButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- loading();
- signUp();
+ if(validateData()){
+ loading();
+ signUp();
+ }
}
});
}
+ private boolean validateData(){
+ boolean dataHasValidate = true;
+
+ getDataFromForm();
+
+ //Check email valid
+ Pattern patternEmail = Pattern.compile(VALID_EMAIL_ADDRESS_REGEX, Pattern.CASE_INSENSITIVE);
+ Matcher matcherEmail = patternEmail.matcher(email);
+ if(!matcherEmail.matches()){
+ textInput_email.setError("Địa chỉ email không đúng định dạng. Xin vui lòng kiểm tra lại!");
+ dataHasValidate = false;
+ } else {
+ textInput_email.setErrorEnabled(false);
+ }
+
+ //Check phone number
+ Pattern patternPhone = Pattern.compile(PHONE_PATTERN);
+ Matcher matcherPhone = patternPhone.matcher(phone);
+ if(!matcherPhone.find()){
+ textInput_phone.setError("Số điện thoại không đúng định dạng. Vui lòng kiểm tra lại!");
+ dataHasValidate = false;
+ } else {
+ textInput_phone.setErrorEnabled(false);
+ }
+
+ //Check full name
+ if(name.length() < 8){
+ textInput_fullName.setError("Tên của bạn cần phải có 8 ký tự trở lên!");
+ dataHasValidate = false;
+ } else {
+ textInput_fullName.setErrorEnabled(false);
+ }
+
+ //Check birthday
+ if(dateOfBirth.isEmpty()){
+ textInput_birthDay.setError("Ngày tháng năm sinh của bạn còn trống!");
+ dataHasValidate = false;
+
+ } else {
+ //Calculate user age
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern(FORMAT_DATE);
+ LocalDate birthday = LocalDate.parse(edt_birthday.getText().toString(), formatter);
+ if(calculateAge(birthday, LocalDate.now()) < 16){
+ textInput_birthDay.setError("Xin lỗi, bạn chưa đủ tuổi đề dùng app này!");
+ dataHasValidate = false;
+ } else {
+ textInput_birthDay.setErrorEnabled(false);
+ }
+ }
+
+ //Check address
+ if(address.length() < 8) {
+ textInput_address.setError("Trường địa chỉ của bạn tối thiếu từ 8 ký tự trở lên");
+ dataHasValidate = false;
+ } else {
+ textInput_address.setErrorEnabled(false);
+ }
+
+ //Check district
+ if(district.equals("---Quận") || ward.equals("---Phường")){
+ errorTextDistrictWard.setVisibility(View.VISIBLE);
+
+ dataHasValidate = false;
+ } else {
+ errorTextDistrictWard.setVisibility(View.GONE);
+ }
+
+
+
+ //Check password
+ Pattern patternPassword = Pattern.compile(PASSWORD_PATTERN);
+ Matcher matcherPassword = patternPassword.matcher(edt_passWord.getText().toString());
+
+ if(!matcherPassword.matches() || edt_passWord.getText().toString().length() < 8) {
+ textInput_password.setError("Mật khẩu của bạn cần tối thiểu có 8 ký tự, 1 ký tự viết hoa, 1 số và 1 ký tự đặc biệt!");
+ dataHasValidate = false;
+ } else {
+ textInput_password.setErrorEnabled(false);
+ }
+
+ if(!edt_passWord.getText().toString().equals(edt_confirmPassword.getText().toString())){
+ textInput_confirmPassword.setError("Mật khẩu không giống nhau. Vui lòng kiểm tra lại!");
+ dataHasValidate = false;
+ } else {
+ textInput_confirmPassword.setErrorEnabled(false);
+ }
+
+ return dataHasValidate;
+ }
+
+ private void getDataFromForm(){
+ email = edt_email.getText().toString();
+ phone = edt_phone.getText().toString();
+ name = edt_fullName.getText().toString();
+ dateOfBirth = edt_birthday.getText().toString();
+ address = edt_address.getText().toString();
+ district = districtSpinner.getSelectedItem().toString();
+ ward = wardSpinner.getSelectedItem().toString();
+ password = edt_confirmPassword.getText().toString();
+ }
+
+
+ public static int calculateAge(LocalDate birthDate, LocalDate currentDate) {
+ if ((birthDate != null) && (currentDate != null)) {
+ return Period.between(birthDate, currentDate).getYears();
+ } else {
+ return 0;
+ }
+ }
+
private void signUp(){
FirebaseAuth auth = FirebaseAuth.getInstance();
PhoneAuthOptions options = PhoneAuthOptions.newBuilder(auth)
@@ -125,6 +287,8 @@ public class SignUpActivity extends AppCompatActivity {
@NonNull PhoneAuthProvider.ForceResendingToken forceResendingToken) {
loadCompleted();
+ //Create user object
+
Intent intent = new Intent(SignUpActivity.this, VerifyAccountActivity.class);
intent.putExtra("phone", edt_phone.getText().toString());
intent.putExtra("verificationId", verificationId);
@@ -159,35 +323,10 @@ public class SignUpActivity extends AppCompatActivity {
signUpButton.setEnabled(false);
}
- private void loadCompleted(){
+ private void loadCompleted() {
progressLayout.setVisibility(View.GONE);
signUpButton.setEnabled(true);
}
- private void initComponent() {
- textInput_email= (TextInputLayout) findViewById(R.id.textInput_email);
- textInput_password = (TextInputLayout) findViewById(R.id.textInput_password);
- textInput_phone = (TextInputLayout) findViewById(R.id.textInput_phone);
- textInput_address = (TextInputLayout) findViewById(R.id.textInput_address);
- textInput_repeatPassword = (TextInputLayout) findViewById(R.id.textInput_confirmPassword);
- textInput_fullName = (TextInputLayout) findViewById(R.id.textInput_fullName);
- textInput_birthDay = (TextInputLayout) findViewById(R.id.textInput_birthDay);
-
- signUpButton = findViewById(R.id.sign_up_button);
-
- edt_birthday = (EditText) findViewById(R.id.edt_birthDay);
- edt_phone = findViewById(R.id.edt_phone);
-
- districtSpinner = (Spinner) findViewById(R.id.district);
- wardSpinner = (Spinner) findViewById(R.id.ward);
-
- signIn_textView = (TextView) findViewById(R.id.signIn_textView);
- errorText = findViewById(R.id.errorText);
-
- back_image = (ImageView) findViewById(R.id.back_image);
-
- progressLayout = findViewById(R.id.progress_layout);
-
- }
private void getListDistrict() {
@@ -309,19 +448,18 @@ public class SignUpActivity extends AppCompatActivity {
}
private void updateLabel(){
- String myFormat="dd/MM/yyyy";
- SimpleDateFormat dateFormat=new SimpleDateFormat(myFormat, Locale.US);
+ SimpleDateFormat dateFormat=new SimpleDateFormat(FORMAT_DATE, Locale.US);
edt_birthday.setText(dateFormat.format(myCalendar.getTime()));
}
private void setFontUI() {
- textInput_email.setTypeface(Common.setFontBebas(getAssets()));
textInput_password.setTypeface(Common.setFontBebas(getAssets()));
textInput_phone.setTypeface(Common.setFontBebas(getAssets()));
textInput_address.setTypeface(Common.setFontBebas(getAssets()));
- textInput_repeatPassword.setTypeface(Common.setFontBebas(getAssets()));
+ textInput_confirmPassword.setTypeface(Common.setFontBebas(getAssets()));
textInput_fullName.setTypeface(Common.setFontBebas(getAssets()));
textInput_birthDay.setTypeface(Common.setFontBebas(getAssets()));
+ textInput_email.setTypeface(Common.setFontBebas(getAssets()));
edt_birthday.setTypeface(Common.setFontBebas(getAssets()));
}
diff --git a/app/src/main/java/com/capstone/foodify/Activity/VerifyAccountActivity.java b/app/src/main/java/com/capstone/foodify/Activity/VerifyAccountActivity.java
index 61bdcde..f71ceeb 100644
--- a/app/src/main/java/com/capstone/foodify/Activity/VerifyAccountActivity.java
+++ b/app/src/main/java/com/capstone/foodify/Activity/VerifyAccountActivity.java
@@ -16,6 +16,7 @@ import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
+import com.capstone.foodify.API.FoodApi;
import com.capstone.foodify.R;
import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.Task;
@@ -174,6 +175,9 @@ public class VerifyAccountActivity extends AppCompatActivity {
if(task.isSuccessful()) {
+ //Add information user to server
+// FoodApi.apiService.register()
+
Toast.makeText(VerifyAccountActivity.this, "Tạo tài khoản thành công!", Toast.LENGTH_SHORT).show();
startActivity(new Intent(VerifyAccountActivity.this, SignInActivity.class));
} else {
diff --git a/app/src/main/java/com/capstone/foodify/Adapter/AddressAdapter.java b/app/src/main/java/com/capstone/foodify/Adapter/AddressAdapter.java
index 20b9c6c..fe9ea9e 100644
--- a/app/src/main/java/com/capstone/foodify/Adapter/AddressAdapter.java
+++ b/app/src/main/java/com/capstone/foodify/Adapter/AddressAdapter.java
@@ -9,7 +9,7 @@ import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
-import com.capstone.foodify.Model.Address.Address;
+import com.capstone.foodify.Model.Address;
import com.capstone.foodify.R;
import java.util.List;
diff --git a/app/src/main/java/com/capstone/foodify/Adapter/BasketAdapter.java b/app/src/main/java/com/capstone/foodify/Adapter/BasketAdapter.java
index 57ca176..48bab9a 100644
--- a/app/src/main/java/com/capstone/foodify/Adapter/BasketAdapter.java
+++ b/app/src/main/java/com/capstone/foodify/Adapter/BasketAdapter.java
@@ -14,7 +14,7 @@ import androidx.recyclerview.widget.RecyclerView;
import com.capstone.foodify.Common;
import com.capstone.foodify.Fragment.BasketFragment;
-import com.capstone.foodify.Model.Basket.Basket;
+import com.capstone.foodify.Model.Basket;
import com.capstone.foodify.R;
import com.cepheuen.elegantnumberbutton.view.ElegantNumberButton;
import com.squareup.picasso.Picasso;
diff --git a/app/src/main/java/com/capstone/foodify/Adapter/FoodAdapter.java b/app/src/main/java/com/capstone/foodify/Adapter/FoodAdapter.java
index baac9aa..cfd026f 100644
--- a/app/src/main/java/com/capstone/foodify/Adapter/FoodAdapter.java
+++ b/app/src/main/java/com/capstone/foodify/Adapter/FoodAdapter.java
@@ -13,7 +13,7 @@ import androidx.recyclerview.widget.RecyclerView;
import com.capstone.foodify.Activity.FoodDetailActivity;
import com.capstone.foodify.Common;
-import com.capstone.foodify.Model.Food.Food;
+import com.capstone.foodify.Model.Food;
import com.capstone.foodify.R;
import com.squareup.picasso.Picasso;
diff --git a/app/src/main/java/com/capstone/foodify/Adapter/FoodFavoriteAdapter.java b/app/src/main/java/com/capstone/foodify/Adapter/FoodFavoriteAdapter.java
index 90c8c7c..1336d4e 100644
--- a/app/src/main/java/com/capstone/foodify/Adapter/FoodFavoriteAdapter.java
+++ b/app/src/main/java/com/capstone/foodify/Adapter/FoodFavoriteAdapter.java
@@ -12,9 +12,8 @@ import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
-import com.capstone.foodify.API.FoodApi;
import com.capstone.foodify.API.FoodApiToken;
-import com.capstone.foodify.Model.Food.Food;
+import com.capstone.foodify.Model.Food;
import com.capstone.foodify.R;
import java.util.List;
diff --git a/app/src/main/java/com/capstone/foodify/Adapter/FoodSearchAdapter.java b/app/src/main/java/com/capstone/foodify/Adapter/FoodSearchAdapter.java
index 619c46b..e65f064 100644
--- a/app/src/main/java/com/capstone/foodify/Adapter/FoodSearchAdapter.java
+++ b/app/src/main/java/com/capstone/foodify/Adapter/FoodSearchAdapter.java
@@ -13,10 +13,9 @@ import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import com.capstone.foodify.Activity.FoodDetailActivity;
-import com.capstone.foodify.Activity.MainActivity;
import com.capstone.foodify.Common;
-import com.capstone.foodify.Model.Basket.Basket;
-import com.capstone.foodify.Model.Food.Food;
+import com.capstone.foodify.Model.Basket;
+import com.capstone.foodify.Model.Food;
import com.capstone.foodify.R;
import com.squareup.picasso.Picasso;
diff --git a/app/src/main/java/com/capstone/foodify/Adapter/FoodShopAdapter.java b/app/src/main/java/com/capstone/foodify/Adapter/FoodShopAdapter.java
index 7d117f1..253ecca 100644
--- a/app/src/main/java/com/capstone/foodify/Adapter/FoodShopAdapter.java
+++ b/app/src/main/java/com/capstone/foodify/Adapter/FoodShopAdapter.java
@@ -14,8 +14,8 @@ import androidx.recyclerview.widget.RecyclerView;
import com.capstone.foodify.Activity.FoodDetailActivity;
import com.capstone.foodify.Common;
-import com.capstone.foodify.Model.Basket.Basket;
-import com.capstone.foodify.Model.Food.Food;
+import com.capstone.foodify.Model.Basket;
+import com.capstone.foodify.Model.Food;
import com.capstone.foodify.R;
import com.squareup.picasso.Picasso;
diff --git a/app/src/main/java/com/capstone/foodify/Adapter/MenuAdapter.java b/app/src/main/java/com/capstone/foodify/Adapter/MenuAdapter.java
index cd9c676..6dc923b 100644
--- a/app/src/main/java/com/capstone/foodify/Adapter/MenuAdapter.java
+++ b/app/src/main/java/com/capstone/foodify/Adapter/MenuAdapter.java
@@ -10,7 +10,7 @@ import androidx.annotation.NonNull;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
-import com.capstone.foodify.Model.Menu.Menu;
+import com.capstone.foodify.Model.Menu;
import com.capstone.foodify.R;
import java.util.List;
diff --git a/app/src/main/java/com/capstone/foodify/Adapter/OrderAdapter.java b/app/src/main/java/com/capstone/foodify/Adapter/OrderAdapter.java
index cec49d0..b367a7e 100644
--- a/app/src/main/java/com/capstone/foodify/Adapter/OrderAdapter.java
+++ b/app/src/main/java/com/capstone/foodify/Adapter/OrderAdapter.java
@@ -11,7 +11,7 @@ import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import com.capstone.foodify.Activity.OrderDetailActivity;
-import com.capstone.foodify.Model.Order.Order;
+import com.capstone.foodify.Model.Order;
import com.capstone.foodify.R;
import java.time.LocalDateTime;
diff --git a/app/src/main/java/com/capstone/foodify/Adapter/OrderDetailAdapter.java b/app/src/main/java/com/capstone/foodify/Adapter/OrderDetailAdapter.java
index 6409db4..b7990af 100644
--- a/app/src/main/java/com/capstone/foodify/Adapter/OrderDetailAdapter.java
+++ b/app/src/main/java/com/capstone/foodify/Adapter/OrderDetailAdapter.java
@@ -9,7 +9,7 @@ import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
-import com.capstone.foodify.Model.Order.OrderDetail;
+import com.capstone.foodify.Model.OrderDetail;
import com.capstone.foodify.R;
import com.squareup.picasso.Picasso;
diff --git a/app/src/main/java/com/capstone/foodify/Adapter/ReviewAdapter.java b/app/src/main/java/com/capstone/foodify/Adapter/ReviewAdapter.java
index 6f58460..0ccb10c 100644
--- a/app/src/main/java/com/capstone/foodify/Adapter/ReviewAdapter.java
+++ b/app/src/main/java/com/capstone/foodify/Adapter/ReviewAdapter.java
@@ -9,7 +9,7 @@ import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
-import com.capstone.foodify.Model.Review.Review;
+import com.capstone.foodify.Model.Review;
import com.capstone.foodify.R;
import com.willy.ratingbar.ScaleRatingBar;
diff --git a/app/src/main/java/com/capstone/foodify/Adapter/ShopAdapter.java b/app/src/main/java/com/capstone/foodify/Adapter/ShopAdapter.java
index 3064db1..111c94a 100644
--- a/app/src/main/java/com/capstone/foodify/Adapter/ShopAdapter.java
+++ b/app/src/main/java/com/capstone/foodify/Adapter/ShopAdapter.java
@@ -11,9 +11,8 @@ import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
-import com.capstone.foodify.Activity.FoodDetailActivity;
import com.capstone.foodify.Activity.ShopDetailActivity;
-import com.capstone.foodify.Model.Shop.Shop;
+import com.capstone.foodify.Model.Shop;
import com.capstone.foodify.R;
import com.squareup.picasso.Picasso;
diff --git a/app/src/main/java/com/capstone/foodify/Common.java b/app/src/main/java/com/capstone/foodify/Common.java
index 67ecc57..59ec245 100644
--- a/app/src/main/java/com/capstone/foodify/Common.java
+++ b/app/src/main/java/com/capstone/foodify/Common.java
@@ -6,16 +6,14 @@ import android.content.Context;
import android.content.res.AssetManager;
import android.graphics.Typeface;
import android.net.ConnectivityManager;
-import android.net.Network;
import android.net.NetworkCapabilities;
import android.net.NetworkInfo;
import android.os.Build;
-import android.widget.Toast;
import androidx.annotation.IntRange;
import androidx.annotation.NonNull;
-import com.capstone.foodify.Model.Basket.Basket;
+import com.capstone.foodify.Model.Basket;
import com.saadahmedsoft.popupdialog.PopupDialog;
import com.saadahmedsoft.popupdialog.Styles;
import com.saadahmedsoft.popupdialog.listener.OnDialogButtonClickListener;
diff --git a/app/src/main/java/com/capstone/foodify/Fragment/BasketFragment.java b/app/src/main/java/com/capstone/foodify/Fragment/BasketFragment.java
index 7eea699..b4c2e0e 100644
--- a/app/src/main/java/com/capstone/foodify/Fragment/BasketFragment.java
+++ b/app/src/main/java/com/capstone/foodify/Fragment/BasketFragment.java
@@ -17,7 +17,7 @@ import androidx.recyclerview.widget.RecyclerView;
import com.capstone.foodify.Common;
import com.capstone.foodify.ItemTouchHelperListener;
-import com.capstone.foodify.Model.Basket.Basket;
+import com.capstone.foodify.Model.Basket;
import com.capstone.foodify.Adapter.BasketAdapter;
import com.capstone.foodify.Adapter.RecyclerViewItemTouchHelperBasketFood;
import com.capstone.foodify.R;
diff --git a/app/src/main/java/com/capstone/foodify/Fragment/FavoriteFragment.java b/app/src/main/java/com/capstone/foodify/Fragment/FavoriteFragment.java
index 630f6f8..8f03808 100644
--- a/app/src/main/java/com/capstone/foodify/Fragment/FavoriteFragment.java
+++ b/app/src/main/java/com/capstone/foodify/Fragment/FavoriteFragment.java
@@ -3,7 +3,6 @@ package com.capstone.foodify.Fragment;
import android.graphics.Color;
import android.os.Bundle;
-import androidx.annotation.NonNull;
import androidx.core.widget.NestedScrollView;
import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.DividerItemDecoration;
@@ -11,30 +10,20 @@ import androidx.recyclerview.widget.ItemTouchHelper;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
-import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
-import android.widget.Toast;
-import com.capstone.foodify.API.FoodApi;
-import com.capstone.foodify.API.FoodApiToken;
-import com.capstone.foodify.Common;
import com.capstone.foodify.ItemTouchHelperListener;
-import com.capstone.foodify.Model.Food.Food;
+import com.capstone.foodify.Model.Food;
import com.capstone.foodify.Adapter.FoodFavoriteAdapter;
import com.capstone.foodify.R;
import com.capstone.foodify.Adapter.RecyclerViewItemTouchHelperFavoriteFood;
import com.google.android.material.snackbar.Snackbar;
import java.util.ArrayList;
-import java.util.Collections;
import java.util.List;
-import retrofit2.Call;
-import retrofit2.Callback;
-import retrofit2.Response;
-
public class FavoriteFragment extends Fragment implements ItemTouchHelperListener {
private RecyclerView recyclerView_favorite_food;
diff --git a/app/src/main/java/com/capstone/foodify/Fragment/HomeFragment.java b/app/src/main/java/com/capstone/foodify/Fragment/HomeFragment.java
index 7ff6161..4dc608b 100644
--- a/app/src/main/java/com/capstone/foodify/Fragment/HomeFragment.java
+++ b/app/src/main/java/com/capstone/foodify/Fragment/HomeFragment.java
@@ -1,27 +1,24 @@
package com.capstone.foodify.Fragment;
import android.os.Bundle;
-import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
-import android.widget.Toast;
import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.capstone.foodify.API.FoodApi;
-import com.capstone.foodify.Activity.MainActivity;
import com.capstone.foodify.Common;
-import com.capstone.foodify.Model.Food.Food;
-import com.capstone.foodify.Model.Menu.Menu;
+import com.capstone.foodify.Model.Food;
+import com.capstone.foodify.Model.Menu;
import com.capstone.foodify.Adapter.MenuAdapter;
import com.capstone.foodify.Model.Response.Foods;
import com.capstone.foodify.Model.Response.Shops;
-import com.capstone.foodify.Model.Shop.Shop;
+import com.capstone.foodify.Model.Shop;
import com.capstone.foodify.Adapter.ShopAdapter;
-import com.capstone.foodify.Model.Slider.Slider;
+import com.capstone.foodify.Model.Slider;
import com.capstone.foodify.R;
import com.denzcoskun.imageslider.ImageSlider;
import com.denzcoskun.imageslider.constants.ScaleTypes;
diff --git a/app/src/main/java/com/capstone/foodify/Fragment/Order/CompleteOrderFragment.java b/app/src/main/java/com/capstone/foodify/Fragment/Order/CompleteOrderFragment.java
index 7b45504..f873f2b 100644
--- a/app/src/main/java/com/capstone/foodify/Fragment/Order/CompleteOrderFragment.java
+++ b/app/src/main/java/com/capstone/foodify/Fragment/Order/CompleteOrderFragment.java
@@ -10,7 +10,7 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
-import com.capstone.foodify.Model.Order.Order;
+import com.capstone.foodify.Model.Order;
import com.capstone.foodify.Adapter.OrderAdapter;
import com.capstone.foodify.R;
diff --git a/app/src/main/java/com/capstone/foodify/Fragment/Order/PreparingFragment.java b/app/src/main/java/com/capstone/foodify/Fragment/Order/PreparingFragment.java
index 0d1d7ac..efe420f 100644
--- a/app/src/main/java/com/capstone/foodify/Fragment/Order/PreparingFragment.java
+++ b/app/src/main/java/com/capstone/foodify/Fragment/Order/PreparingFragment.java
@@ -10,7 +10,7 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
-import com.capstone.foodify.Model.Order.Order;
+import com.capstone.foodify.Model.Order;
import com.capstone.foodify.Adapter.OrderAdapter;
import com.capstone.foodify.R;
diff --git a/app/src/main/java/com/capstone/foodify/Fragment/Order/ProcessOderFragment.java b/app/src/main/java/com/capstone/foodify/Fragment/Order/ProcessOderFragment.java
index 76baf68..cc7d699 100644
--- a/app/src/main/java/com/capstone/foodify/Fragment/Order/ProcessOderFragment.java
+++ b/app/src/main/java/com/capstone/foodify/Fragment/Order/ProcessOderFragment.java
@@ -10,7 +10,7 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
-import com.capstone.foodify.Model.Order.Order;
+import com.capstone.foodify.Model.Order;
import com.capstone.foodify.Adapter.OrderAdapter;
import com.capstone.foodify.R;
diff --git a/app/src/main/java/com/capstone/foodify/Fragment/Order/ShipOrderFragment.java b/app/src/main/java/com/capstone/foodify/Fragment/Order/ShipOrderFragment.java
index 64c9f1f..35e076a 100644
--- a/app/src/main/java/com/capstone/foodify/Fragment/Order/ShipOrderFragment.java
+++ b/app/src/main/java/com/capstone/foodify/Fragment/Order/ShipOrderFragment.java
@@ -10,7 +10,7 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
-import com.capstone.foodify.Model.Order.Order;
+import com.capstone.foodify.Model.Order;
import com.capstone.foodify.Adapter.OrderAdapter;
import com.capstone.foodify.R;
diff --git a/app/src/main/java/com/capstone/foodify/Fragment/SearchFragment.java b/app/src/main/java/com/capstone/foodify/Fragment/SearchFragment.java
index 3bbd81f..fe5bd2f 100644
--- a/app/src/main/java/com/capstone/foodify/Fragment/SearchFragment.java
+++ b/app/src/main/java/com/capstone/foodify/Fragment/SearchFragment.java
@@ -1,7 +1,6 @@
package com.capstone.foodify.Fragment;
import android.os.Bundle;
-import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -9,7 +8,6 @@ import android.widget.CompoundButton;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.TextView;
-import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.appcompat.widget.SearchView;
@@ -21,8 +19,8 @@ import androidx.recyclerview.widget.RecyclerView;
import com.capstone.foodify.API.FoodApi;
import com.capstone.foodify.Common;
-import com.capstone.foodify.Model.Category.Category;
-import com.capstone.foodify.Model.Food.Food;
+import com.capstone.foodify.Model.Category;
+import com.capstone.foodify.Model.Food;
import com.capstone.foodify.Adapter.FoodSearchAdapter;
import com.capstone.foodify.Model.Response.Foods;
import com.capstone.foodify.R;
diff --git a/app/src/main/java/com/capstone/foodify/Model/Address/Address.java b/app/src/main/java/com/capstone/foodify/Model/Address.java
similarity index 95%
rename from app/src/main/java/com/capstone/foodify/Model/Address/Address.java
rename to app/src/main/java/com/capstone/foodify/Model/Address.java
index 9b5c658..f9a85c4 100644
--- a/app/src/main/java/com/capstone/foodify/Model/Address/Address.java
+++ b/app/src/main/java/com/capstone/foodify/Model/Address.java
@@ -1,4 +1,4 @@
-package com.capstone.foodify.Model.Address;
+package com.capstone.foodify.Model;
public class Address {
private int id;
diff --git a/app/src/main/java/com/capstone/foodify/Model/Basket/Basket.java b/app/src/main/java/com/capstone/foodify/Model/Basket.java
similarity index 97%
rename from app/src/main/java/com/capstone/foodify/Model/Basket/Basket.java
rename to app/src/main/java/com/capstone/foodify/Model/Basket.java
index 1267b72..20da5d8 100644
--- a/app/src/main/java/com/capstone/foodify/Model/Basket/Basket.java
+++ b/app/src/main/java/com/capstone/foodify/Model/Basket.java
@@ -1,4 +1,4 @@
-package com.capstone.foodify.Model.Basket;
+package com.capstone.foodify.Model;
public class Basket {
private String id;
diff --git a/app/src/main/java/com/capstone/foodify/Model/Category/Category.java b/app/src/main/java/com/capstone/foodify/Model/Category.java
similarity index 91%
rename from app/src/main/java/com/capstone/foodify/Model/Category/Category.java
rename to app/src/main/java/com/capstone/foodify/Model/Category.java
index 3235f34..d9f55b3 100644
--- a/app/src/main/java/com/capstone/foodify/Model/Category/Category.java
+++ b/app/src/main/java/com/capstone/foodify/Model/Category.java
@@ -1,4 +1,4 @@
-package com.capstone.foodify.Model.Category;
+package com.capstone.foodify.Model;
public class Category {
private String id;
diff --git a/app/src/main/java/com/capstone/foodify/Model/DistrictWard/DistrictWardResponse.java b/app/src/main/java/com/capstone/foodify/Model/DistrictWardResponse.java
similarity index 87%
rename from app/src/main/java/com/capstone/foodify/Model/DistrictWard/DistrictWardResponse.java
rename to app/src/main/java/com/capstone/foodify/Model/DistrictWardResponse.java
index 1b64fb3..ef418f8 100644
--- a/app/src/main/java/com/capstone/foodify/Model/DistrictWard/DistrictWardResponse.java
+++ b/app/src/main/java/com/capstone/foodify/Model/DistrictWardResponse.java
@@ -1,4 +1,4 @@
-package com.capstone.foodify.Model.DistrictWard;
+package com.capstone.foodify.Model;
public class DistrictWardResponse {
private String id;
diff --git a/app/src/main/java/com/capstone/foodify/Model/Food/Food.java b/app/src/main/java/com/capstone/foodify/Model/Food.java
similarity index 94%
rename from app/src/main/java/com/capstone/foodify/Model/Food/Food.java
rename to app/src/main/java/com/capstone/foodify/Model/Food.java
index 5f88bb1..97a1267 100644
--- a/app/src/main/java/com/capstone/foodify/Model/Food/Food.java
+++ b/app/src/main/java/com/capstone/foodify/Model/Food.java
@@ -1,8 +1,4 @@
-package com.capstone.foodify.Model.Food;
-
-import com.capstone.foodify.Model.Category.Category;
-import com.capstone.foodify.Model.Image.Image;
-import com.capstone.foodify.Model.Shop.Shop;
+package com.capstone.foodify.Model;
import java.util.List;
diff --git a/app/src/main/java/com/capstone/foodify/Model/Image/Image.java b/app/src/main/java/com/capstone/foodify/Model/Image.java
similarity index 92%
rename from app/src/main/java/com/capstone/foodify/Model/Image/Image.java
rename to app/src/main/java/com/capstone/foodify/Model/Image.java
index 936dbf3..ea8efbe 100644
--- a/app/src/main/java/com/capstone/foodify/Model/Image/Image.java
+++ b/app/src/main/java/com/capstone/foodify/Model/Image.java
@@ -1,4 +1,4 @@
-package com.capstone.foodify.Model.Image;
+package com.capstone.foodify.Model;
public class Image {
private int id;
diff --git a/app/src/main/java/com/capstone/foodify/Model/Menu/Menu.java b/app/src/main/java/com/capstone/foodify/Model/Menu.java
similarity index 85%
rename from app/src/main/java/com/capstone/foodify/Model/Menu/Menu.java
rename to app/src/main/java/com/capstone/foodify/Model/Menu.java
index f7f3903..6d21c86 100644
--- a/app/src/main/java/com/capstone/foodify/Model/Menu/Menu.java
+++ b/app/src/main/java/com/capstone/foodify/Model/Menu.java
@@ -1,6 +1,4 @@
-package com.capstone.foodify.Model.Menu;
-
-import com.capstone.foodify.Model.Food.Food;
+package com.capstone.foodify.Model;
import java.util.List;
diff --git a/app/src/main/java/com/capstone/foodify/Model/Order/Order.java b/app/src/main/java/com/capstone/foodify/Model/Order.java
similarity index 97%
rename from app/src/main/java/com/capstone/foodify/Model/Order/Order.java
rename to app/src/main/java/com/capstone/foodify/Model/Order.java
index 5ee5428..63c65d7 100644
--- a/app/src/main/java/com/capstone/foodify/Model/Order/Order.java
+++ b/app/src/main/java/com/capstone/foodify/Model/Order.java
@@ -1,6 +1,5 @@
-package com.capstone.foodify.Model.Order;
+package com.capstone.foodify.Model;
-import java.util.Date;
import java.util.List;
public class Order {
diff --git a/app/src/main/java/com/capstone/foodify/Model/Order/OrderDetail.java b/app/src/main/java/com/capstone/foodify/Model/OrderDetail.java
similarity index 95%
rename from app/src/main/java/com/capstone/foodify/Model/Order/OrderDetail.java
rename to app/src/main/java/com/capstone/foodify/Model/OrderDetail.java
index 199fcd4..7e07aec 100644
--- a/app/src/main/java/com/capstone/foodify/Model/Order/OrderDetail.java
+++ b/app/src/main/java/com/capstone/foodify/Model/OrderDetail.java
@@ -1,4 +1,4 @@
-package com.capstone.foodify.Model.Order;
+package com.capstone.foodify.Model;
public class OrderDetail {
private int id;
diff --git a/app/src/main/java/com/capstone/foodify/Model/Response/Foods.java b/app/src/main/java/com/capstone/foodify/Model/Response/Foods.java
index 074b516..959df6d 100644
--- a/app/src/main/java/com/capstone/foodify/Model/Response/Foods.java
+++ b/app/src/main/java/com/capstone/foodify/Model/Response/Foods.java
@@ -1,6 +1,6 @@
package com.capstone.foodify.Model.Response;
-import com.capstone.foodify.Model.Food.Food;
+import com.capstone.foodify.Model.Food;
import com.capstone.foodify.Model.Page;
import java.util.List;
diff --git a/app/src/main/java/com/capstone/foodify/Model/Image/Images.java b/app/src/main/java/com/capstone/foodify/Model/Response/Images.java
similarity index 83%
rename from app/src/main/java/com/capstone/foodify/Model/Image/Images.java
rename to app/src/main/java/com/capstone/foodify/Model/Response/Images.java
index f4f2599..83f3983 100644
--- a/app/src/main/java/com/capstone/foodify/Model/Image/Images.java
+++ b/app/src/main/java/com/capstone/foodify/Model/Response/Images.java
@@ -1,5 +1,6 @@
-package com.capstone.foodify.Model.Image;
+package com.capstone.foodify.Model.Response;
+import com.capstone.foodify.Model.Image;
import com.capstone.foodify.Model.Page;
import java.util.List;
diff --git a/app/src/main/java/com/capstone/foodify/Model/Response/Shops.java b/app/src/main/java/com/capstone/foodify/Model/Response/Shops.java
index 9836411..11bfeff 100644
--- a/app/src/main/java/com/capstone/foodify/Model/Response/Shops.java
+++ b/app/src/main/java/com/capstone/foodify/Model/Response/Shops.java
@@ -1,7 +1,7 @@
package com.capstone.foodify.Model.Response;
import com.capstone.foodify.Model.Page;
-import com.capstone.foodify.Model.Shop.Shop;
+import com.capstone.foodify.Model.Shop;
import java.util.List;
diff --git a/app/src/main/java/com/capstone/foodify/Model/Review/Review.java b/app/src/main/java/com/capstone/foodify/Model/Review.java
similarity index 94%
rename from app/src/main/java/com/capstone/foodify/Model/Review/Review.java
rename to app/src/main/java/com/capstone/foodify/Model/Review.java
index eff7788..5bd702a 100644
--- a/app/src/main/java/com/capstone/foodify/Model/Review/Review.java
+++ b/app/src/main/java/com/capstone/foodify/Model/Review.java
@@ -1,4 +1,4 @@
-package com.capstone.foodify.Model.Review;
+package com.capstone.foodify.Model;
public class Review {
private String name;
diff --git a/app/src/main/java/com/capstone/foodify/Model/Shop/Shop.java b/app/src/main/java/com/capstone/foodify/Model/Shop.java
similarity index 96%
rename from app/src/main/java/com/capstone/foodify/Model/Shop/Shop.java
rename to app/src/main/java/com/capstone/foodify/Model/Shop.java
index 1f39d89..156228e 100644
--- a/app/src/main/java/com/capstone/foodify/Model/Shop/Shop.java
+++ b/app/src/main/java/com/capstone/foodify/Model/Shop.java
@@ -1,4 +1,4 @@
-package com.capstone.foodify.Model.Shop;
+package com.capstone.foodify.Model;
public class Shop {
private int id;
diff --git a/app/src/main/java/com/capstone/foodify/Model/Slider/Slider.java b/app/src/main/java/com/capstone/foodify/Model/Slider.java
similarity index 88%
rename from app/src/main/java/com/capstone/foodify/Model/Slider/Slider.java
rename to app/src/main/java/com/capstone/foodify/Model/Slider.java
index c318341..d40594f 100644
--- a/app/src/main/java/com/capstone/foodify/Model/Slider/Slider.java
+++ b/app/src/main/java/com/capstone/foodify/Model/Slider.java
@@ -1,4 +1,4 @@
-package com.capstone.foodify.Model.Slider;
+package com.capstone.foodify.Model;
public class Slider {
private int id;
diff --git a/app/src/main/java/com/capstone/foodify/Model/User.java b/app/src/main/java/com/capstone/foodify/Model/User.java
new file mode 100644
index 0000000..5d2247b
--- /dev/null
+++ b/app/src/main/java/com/capstone/foodify/Model/User.java
@@ -0,0 +1,87 @@
+package com.capstone.foodify.Model;
+
+public class User {
+ private String dateOfBirth;
+ private String email;
+ private String fullName;
+ private String identifiedCode;
+ private String imageUrl;
+ private String isLocked;
+ private String phoneNumber;
+ private String roleName;
+
+ public User(String dateOfBirth, String email, String fullName, String identifiedCode, String imageUrl, String isLocked, String phoneNumber, String roleName) {
+ this.dateOfBirth = dateOfBirth;
+ this.email = email;
+ this.fullName = fullName;
+ this.identifiedCode = identifiedCode;
+ this.imageUrl = imageUrl;
+ this.isLocked = isLocked;
+ this.phoneNumber = phoneNumber;
+ this.roleName = roleName;
+ }
+
+ public String getDateOfBirth() {
+ return dateOfBirth;
+ }
+
+ public void setDateOfBirth(String dateOfBirth) {
+ this.dateOfBirth = dateOfBirth;
+ }
+
+ public String getEmail() {
+ return email;
+ }
+
+ public void setEmail(String email) {
+ this.email = email;
+ }
+
+ public String getFullName() {
+ return fullName;
+ }
+
+ public void setFullName(String fullName) {
+ this.fullName = fullName;
+ }
+
+ public String getIdentifiedCode() {
+ return identifiedCode;
+ }
+
+ public void setIdentifiedCode(String identifiedCode) {
+ this.identifiedCode = identifiedCode;
+ }
+
+ public String getImageUrl() {
+ return imageUrl;
+ }
+
+ public void setImageUrl(String imageUrl) {
+ this.imageUrl = imageUrl;
+ }
+
+ public String getIsLocked() {
+ return isLocked;
+ }
+
+ public void setIsLocked(String isLocked) {
+ this.isLocked = isLocked;
+ }
+
+ public String getPhoneNumber() {
+ return phoneNumber;
+ }
+
+ public void setPhoneNumber(String phoneNumber) {
+ this.phoneNumber = phoneNumber;
+ }
+
+ public String getRoleName() {
+ return roleName;
+ }
+
+ public void setRoleName(String roleName) {
+ this.roleName = roleName;
+ }
+}
diff --git a/app/src/main/res/layout/activity_sign_up.xml b/app/src/main/res/layout/activity_sign_up.xml
index 49314c3..a029e9a 100644
--- a/app/src/main/res/layout/activity_sign_up.xml
+++ b/app/src/main/res/layout/activity_sign_up.xml
@@ -1,5 +1,5 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ android:layout_height="wrap_content">
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index e24f3ad..553e811 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -9,7 +9,6 @@
#F99928
#ACA5A5
#FF0000
- #1EAE94
#A9d440
#004d40
#FFEB3B