mirror of
https://github.com/Nezumi-2711/Foodify.git
synced 2026-09-22 13:38:41 +00:00
Change UI app
This commit is contained in:
+5
-5
@@ -48,11 +48,11 @@ android {
|
||||
classpath 'com.google.gms:google-services:4.3.15'
|
||||
}
|
||||
}
|
||||
|
||||
buildFeatures {
|
||||
viewBinding true
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
dependencies {
|
||||
@@ -92,10 +92,7 @@ dependencies {
|
||||
implementation 'com.squareup.picasso:picasso:2.71828'
|
||||
implementation 'com.github.ome450901:SimpleRatingBar:1.5.1'
|
||||
implementation 'com.cepheuen.elegant-number-button:lib:1.0.2'
|
||||
implementation 'com.github.slavce14:SJ-Dialog:1.6'
|
||||
implementation 'com.saadahmedev.popup-dialog:popup-dialog:1.0.2'
|
||||
implementation 'com.github.gabriel-TheCode:AestheticDialogs:1.3.6'
|
||||
implementation 'io.github.pilgr:paperdb:2.7.2'
|
||||
implementation 'com.github.techinessoverloaded:progress-dialog:1.5.1'
|
||||
|
||||
implementation 'androidx.browser:browser:1.5.0'
|
||||
@@ -110,4 +107,7 @@ dependencies {
|
||||
// ADD the API-only library to all variants
|
||||
implementation 'com.google.firebase:firebase-appdistribution:16.0.0-beta08'
|
||||
|
||||
}
|
||||
implementation(project(':aestheticdialogs'))
|
||||
implementation(project(':SJDialog'))
|
||||
|
||||
}
|
||||
|
||||
@@ -54,7 +54,6 @@ import java.text.SimpleDateFormat;
|
||||
import java.util.Calendar;
|
||||
import java.util.Locale;
|
||||
|
||||
import io.paperdb.Paper;
|
||||
import retrofit2.Call;
|
||||
import retrofit2.Callback;
|
||||
import retrofit2.Response;
|
||||
@@ -108,9 +107,6 @@ public class AccountAndProfileActivity extends AppCompatActivity {
|
||||
//Initialize Firebase Auth
|
||||
mAuth = FirebaseAuth.getInstance();
|
||||
|
||||
//Paper Init
|
||||
Paper.init(this);
|
||||
|
||||
//Show notification about email verify for user
|
||||
showNotificationEmailVerify();
|
||||
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package com.capstone.foodify.Activity;
|
||||
|
||||
import android.annotation.SuppressLint;
|
||||
import android.app.Activity;
|
||||
import android.app.Dialog;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
@@ -39,11 +38,11 @@ import com.capstone.foodify.Adapter.CommentAdapter;
|
||||
import com.capstone.foodify.Common;
|
||||
import com.capstone.foodify.Model.Basket;
|
||||
import com.capstone.foodify.Model.Category;
|
||||
import com.capstone.foodify.Model.Comment;
|
||||
import com.capstone.foodify.Model.Food;
|
||||
import com.capstone.foodify.Model.Image;
|
||||
import com.capstone.foodify.Model.Response.Comments;
|
||||
import com.capstone.foodify.Model.Response.CustomResponse;
|
||||
import com.capstone.foodify.Model.Comment;
|
||||
import com.capstone.foodify.R;
|
||||
import com.denzcoskun.imageslider.ImageSlider;
|
||||
import com.denzcoskun.imageslider.constants.ScaleTypes;
|
||||
@@ -54,10 +53,7 @@ import com.mcdev.quantitizerlibrary.AnimationStyle;
|
||||
import com.mcdev.quantitizerlibrary.HorizontalQuantitizer;
|
||||
import com.mcdev.quantitizerlibrary.QuantitizerListener;
|
||||
import com.sjapps.library.customdialog.BasicDialog;
|
||||
import com.sjapps.library.customdialog.DialogButtonEvent;
|
||||
import com.sjapps.library.customdialog.DialogButtonEvents;
|
||||
import com.thecode.aestheticdialogs.AestheticDialog;
|
||||
import com.thecode.aestheticdialogs.DialogAnimation;
|
||||
import com.thecode.aestheticdialogs.DialogStyle;
|
||||
import com.thecode.aestheticdialogs.DialogType;
|
||||
import com.willy.ratingbar.RotationRatingBar;
|
||||
|
||||
@@ -6,7 +6,6 @@ import android.app.job.JobInfo;
|
||||
import android.app.job.JobScheduler;
|
||||
import android.content.ComponentName;
|
||||
import android.content.Context;
|
||||
import android.content.DialogInterface;
|
||||
import android.content.Intent;
|
||||
import android.content.IntentSender;
|
||||
import android.content.SharedPreferences;
|
||||
@@ -23,6 +22,7 @@ import android.provider.Settings;
|
||||
import android.util.Log;
|
||||
import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
@@ -76,7 +76,6 @@ import com.techiness.progressdialoglibrary.ProgressDialog;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import io.paperdb.Paper;
|
||||
import retrofit2.Call;
|
||||
import retrofit2.Callback;
|
||||
import retrofit2.Response;
|
||||
@@ -108,9 +107,6 @@ public class MainActivity extends AppCompatActivity {
|
||||
public void onStart() {
|
||||
super.onStart();
|
||||
|
||||
//Get user from Paper
|
||||
// user = Paper.book().read("user");
|
||||
|
||||
// Check if user is signed in (non-null) and update UI accordingly.
|
||||
user = mAuth.getCurrentUser();
|
||||
|
||||
@@ -224,15 +220,12 @@ public class MainActivity extends AppCompatActivity {
|
||||
});
|
||||
}
|
||||
|
||||
//Paper Init
|
||||
Paper.init(this);
|
||||
|
||||
initComponent();
|
||||
|
||||
bottomNavigation();
|
||||
|
||||
startPowerSaverIntent(this);
|
||||
checkNotificationPermission();
|
||||
checkNotificationPermission(this);
|
||||
startRefreshTokenService();
|
||||
|
||||
getLocation();
|
||||
@@ -394,9 +387,10 @@ public class MainActivity extends AppCompatActivity {
|
||||
}
|
||||
});
|
||||
}
|
||||
private void checkNotificationPermission(){
|
||||
if(!NotificationManagerCompat.from(this).areNotificationsEnabled()){
|
||||
showDialogPermission("Hãy bật quyền thông báo trên thiết bị của bạn để chúng thôi có thể cung cấp thông tin cho bạn một cách nhanh nhất!");
|
||||
private void checkNotificationPermission(Context context){
|
||||
if(!NotificationManagerCompat.from(context).areNotificationsEnabled()){
|
||||
showDialogPermission("Hãy bật quyền thông báo trên thiết bị của bạn để chúng thôi có thể cung cấp thông tin cho bạn một cách nhanh nhất!", this, "Notification",
|
||||
"skipNotificationCheck");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -427,33 +421,35 @@ public class MainActivity extends AppCompatActivity {
|
||||
if(grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED){
|
||||
getLocation();
|
||||
} else {
|
||||
showDialogPermission("Hãy cho ứng dụng truy cập vào vị trí của bạn để trải nghiệm tốt hơn!");
|
||||
showDialogPermission("Hãy cho ứng dụng truy cập vào vị trí của bạn để trải nghiệm tốt hơn!", this, "Location", "skipLocationCheck");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void showDialogPermission(String message) {
|
||||
AlertDialog.Builder builder = new AlertDialog.Builder(this);
|
||||
private void showDialogPermission(String message, Context context, String name, String key) {
|
||||
SharedPreferences settings = getSharedPreferences(name, Context.MODE_PRIVATE);
|
||||
boolean skipMessage = settings.getBoolean(key, false);
|
||||
if (!skipMessage) {
|
||||
final SharedPreferences.Editor editor = settings.edit();
|
||||
final AppCompatCheckBox dontShowAgain = new AppCompatCheckBox(context);
|
||||
dontShowAgain.setText("Không hiện hộp thoại này nữa!");
|
||||
dontShowAgain.setButtonTintList(ColorStateList.valueOf(getResources().getColor(R.color.primaryColor, null)));
|
||||
dontShowAgain.setOnCheckedChangeListener((buttonView, isChecked) -> {
|
||||
editor.putBoolean(key, isChecked);
|
||||
editor.apply();
|
||||
});
|
||||
|
||||
builder.setMessage(message)
|
||||
.setCancelable(false)
|
||||
.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(DialogInterface dialog, int which) {
|
||||
openSettings();
|
||||
dialog.cancel();
|
||||
}
|
||||
})
|
||||
.setNegativeButton("Để sau", new DialogInterface.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(DialogInterface dialog, int which) {
|
||||
dialog.cancel();
|
||||
}
|
||||
});
|
||||
AlertDialog alertDialog = new AlertDialog.Builder(context)
|
||||
.setTitle("Thông báo")
|
||||
.setMessage(message)
|
||||
.setView(dontShowAgain)
|
||||
.setPositiveButton("Đi đến cài đặt", (dialog, which) -> openSettings())
|
||||
.setNegativeButton("Đóng", null)
|
||||
.show();
|
||||
|
||||
AlertDialog alertDialog = builder.create();
|
||||
alertDialog.setTitle("Thông báo!");
|
||||
alertDialog.show();
|
||||
TextView textView = (TextView) alertDialog.findViewById(android.R.id.message);
|
||||
textView.setTypeface(Common.setFontKoho(getAssets()));
|
||||
}
|
||||
}
|
||||
|
||||
private void openSettings() {
|
||||
|
||||
@@ -1,11 +1,5 @@
|
||||
package com.capstone.foodify.Activity;
|
||||
|
||||
import androidx.annotation.IntRange;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.net.ConnectivityManager;
|
||||
@@ -18,14 +12,19 @@ import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
import android.widget.Toast;
|
||||
|
||||
import androidx.annotation.IntRange;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.appcompat.app.AppCompatActivity;
|
||||
import androidx.recyclerview.widget.LinearLayoutManager;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.capstone.foodify.API.FoodApiToken;
|
||||
import com.capstone.foodify.Adapter.OrderDetailAdapter;
|
||||
import com.capstone.foodify.Common;
|
||||
import com.capstone.foodify.Model.Basket;
|
||||
import com.capstone.foodify.Model.Order;
|
||||
import com.capstone.foodify.Model.OrderDetail;
|
||||
import com.capstone.foodify.Adapter.OrderDetailAdapter;
|
||||
import com.capstone.foodify.Model.Response.CustomResponse;
|
||||
import com.capstone.foodify.Model.User;
|
||||
import com.capstone.foodify.R;
|
||||
import com.sjapps.library.customdialog.BasicDialog;
|
||||
import com.sjapps.library.customdialog.DialogButtonEvents;
|
||||
@@ -34,8 +33,6 @@ import com.thecode.aestheticdialogs.DialogStyle;
|
||||
import com.thecode.aestheticdialogs.DialogType;
|
||||
import com.thecode.aestheticdialogs.OnDialogClickListener;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@@ -32,7 +32,6 @@ import com.google.firebase.auth.SignInMethodQueryResult;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
import io.paperdb.Paper;
|
||||
import retrofit2.Call;
|
||||
import retrofit2.Callback;
|
||||
import retrofit2.Response;
|
||||
@@ -55,9 +54,6 @@ public class SignInActivity extends AppCompatActivity {
|
||||
FirebaseApp.initializeApp(SignInActivity.this);
|
||||
setContentView(R.layout.activity_sign_in);
|
||||
|
||||
//Init Paper
|
||||
Paper.init(this);
|
||||
|
||||
if(Common.CURRENT_USER != null)
|
||||
startActivity(new Intent(this, MainActivity.class));
|
||||
|
||||
@@ -193,8 +189,6 @@ public class SignInActivity extends AppCompatActivity {
|
||||
// Sign in success, update UI with the signed-in user's information
|
||||
FirebaseUser user = mAuth.getCurrentUser();
|
||||
|
||||
//Save user
|
||||
// Paper.book().write("user", user);
|
||||
|
||||
user.getIdToken(true)
|
||||
.addOnCompleteListener(new OnCompleteListener<GetTokenResult>() {
|
||||
|
||||
@@ -4,24 +4,15 @@ import android.content.Context;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.AdapterView;
|
||||
import android.widget.Button;
|
||||
import android.widget.EditText;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.Spinner;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.constraintlayout.widget.ConstraintLayout;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.capstone.foodify.Activity.AddressManagerActivity;
|
||||
import com.capstone.foodify.Common;
|
||||
import com.capstone.foodify.Model.Address;
|
||||
import com.capstone.foodify.R;
|
||||
import com.google.android.material.textfield.TextInputLayout;
|
||||
import com.sjapps.library.customdialog.CustomViewDialog;
|
||||
import com.sjapps.library.customdialog.DialogButtonEvents;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@@ -11,7 +11,6 @@ import android.view.ViewGroup;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.fragment.app.Fragment;
|
||||
|
||||
import com.capstone.foodify.Activity.AccountAndProfileActivity;
|
||||
@@ -21,9 +20,6 @@ import com.capstone.foodify.Activity.MainActivity;
|
||||
import com.capstone.foodify.Activity.OrderActivity;
|
||||
import com.capstone.foodify.Common;
|
||||
import com.capstone.foodify.R;
|
||||
import com.google.android.gms.tasks.OnCompleteListener;
|
||||
import com.google.android.gms.tasks.Task;
|
||||
import com.google.firebase.appdistribution.FirebaseAppDistribution;
|
||||
import com.google.firebase.auth.FirebaseAuth;
|
||||
import com.makeramen.roundedimageview.RoundedImageView;
|
||||
import com.saadahmedsoft.popupdialog.PopupDialog;
|
||||
@@ -31,8 +27,6 @@ import com.saadahmedsoft.popupdialog.Styles;
|
||||
import com.saadahmedsoft.popupdialog.listener.OnDialogButtonClickListener;
|
||||
import com.squareup.picasso.Picasso;
|
||||
|
||||
import io.paperdb.Paper;
|
||||
|
||||
public class ProfileFragment extends Fragment {
|
||||
private static final String TAG = "ProfileFragment";
|
||||
LinearLayout account_and_profile, manage_address, favorite_food, order_history, feed_back, log_out;
|
||||
@@ -116,9 +110,6 @@ public class ProfileFragment extends Fragment {
|
||||
public void onPositiveClicked(Dialog dialog) {
|
||||
FirebaseAuth.getInstance().signOut();
|
||||
|
||||
//Delete user from local storage
|
||||
// Paper.book().delete("user");
|
||||
|
||||
Common.TOKEN = null;
|
||||
Common.CURRENT_USER = null;
|
||||
dialog.dismiss();
|
||||
|
||||
Binary file not shown.
@@ -12,6 +12,9 @@
|
||||
<item name="windowNoTitle">true</item>
|
||||
<item name="android:textColorHint">@color/grayLight</item>
|
||||
<item name="android:datePickerDialogTheme">@style/MyDatePickerDialogTheme</item>
|
||||
<item name="android:textViewStyle">@style/KohoViewStyle</item>
|
||||
<item name="android:fontFamily">@font/koho</item>
|
||||
<item name="textAllCaps">false</item>
|
||||
</style>
|
||||
|
||||
<style name="CustomToolbarTheme" parent="@style/ThemeOverlay.AppCompat.Dark.ActionBar">
|
||||
@@ -60,4 +63,8 @@
|
||||
<item name="fontFamily">@font/koho</item>
|
||||
</style>
|
||||
|
||||
<style name="KohoViewStyle" parent="android:Widget.TextView">
|
||||
<item name="android:fontFamily">@font/koho</item>
|
||||
</style>
|
||||
|
||||
</resources>
|
||||
Reference in New Issue
Block a user