144 lines
4.7 KiB
Java
144 lines
4.7 KiB
Java
package me.gilo.wc.utils;
|
|
|
|
import android.app.Activity;
|
|
import android.content.Context;
|
|
import android.content.SharedPreferences;
|
|
import android.os.Handler;
|
|
import android.support.annotation.StringRes;
|
|
import android.util.Base64;
|
|
import android.view.inputmethod.InputMethodManager;
|
|
import android.widget.Toast;
|
|
|
|
import java.security.MessageDigest;
|
|
import java.security.NoSuchAlgorithmException;
|
|
import java.text.ParseException;
|
|
import java.text.SimpleDateFormat;
|
|
import java.util.Calendar;
|
|
import java.util.Date;
|
|
|
|
/*
|
|
*
|
|
*/
|
|
public class AppUtils {
|
|
|
|
Context context;
|
|
|
|
String token;
|
|
String expiry;
|
|
|
|
public static final String MY_PREFS_NAME = "StarterApp";
|
|
|
|
public AppUtils(Context context) {
|
|
this.context = context;
|
|
}
|
|
|
|
public static void showToast(Context context, @StringRes int text, boolean isLong) {
|
|
showToast(context, context.getString(text), isLong);
|
|
}
|
|
|
|
public static void showToast(Context context, String text, boolean isLong) {
|
|
Toast.makeText(context, text, isLong ? Toast.LENGTH_LONG : Toast.LENGTH_SHORT).show();
|
|
}
|
|
|
|
public void saveToken(String token, String expiry){
|
|
SharedPreferences.Editor editor = context.getSharedPreferences(MY_PREFS_NAME, context.MODE_PRIVATE).edit();
|
|
editor.putString("token", token);
|
|
editor.putString("expiry", expiry);
|
|
editor.putBoolean("loggedIn", true);
|
|
editor.apply();
|
|
}
|
|
|
|
public String getToken() {
|
|
SharedPreferences prefs = context.getSharedPreferences(MY_PREFS_NAME, context.MODE_PRIVATE);
|
|
return prefs.getString("token", null);
|
|
}
|
|
|
|
public void saveCartSession(String sessionId, String expiry){
|
|
SharedPreferences.Editor editor = context.getSharedPreferences(MY_PREFS_NAME, context.MODE_PRIVATE).edit();
|
|
editor.putString("cartSession", sessionId);
|
|
editor.putString("expiry", expiry);
|
|
editor.putBoolean("hasSession", true);
|
|
editor.apply();
|
|
}
|
|
|
|
public String getCartSession() {
|
|
SharedPreferences prefs = context.getSharedPreferences(MY_PREFS_NAME, context.MODE_PRIVATE);
|
|
return prefs.getString("cartSession", null);
|
|
}
|
|
|
|
public String getExpiry() {
|
|
SharedPreferences prefs = context.getSharedPreferences(MY_PREFS_NAME, context.MODE_PRIVATE);
|
|
return prefs.getString("expiry", null);
|
|
}
|
|
|
|
public boolean isLoggedIn(){
|
|
SharedPreferences prefs = context.getSharedPreferences(MY_PREFS_NAME, context.MODE_PRIVATE);
|
|
return prefs.getBoolean("loggedIn", false);
|
|
}
|
|
|
|
public void logOut(){
|
|
SharedPreferences.Editor editor = context.getSharedPreferences(MY_PREFS_NAME, context.MODE_PRIVATE).edit();
|
|
editor.putString("token", "");
|
|
editor.putString("expiry", "");
|
|
editor.putBoolean("loggedIn", false);
|
|
editor.apply();
|
|
}
|
|
|
|
public static Date getCurrentDateTime(){
|
|
Date currentDate = Calendar.getInstance().getTime();
|
|
return currentDate;
|
|
}
|
|
|
|
public static String getFormattedDateString(Date date) {
|
|
|
|
try {
|
|
|
|
SimpleDateFormat spf = new SimpleDateFormat("EEE MMM d HH:mm:ss zzz yyyy");
|
|
String dateString = spf.format(date);
|
|
|
|
Date newDate = spf.parse(dateString);
|
|
spf= new SimpleDateFormat("dd MMM yyyy HH:mm:ss");
|
|
return spf.format(newDate);
|
|
|
|
} catch (ParseException e) {
|
|
e.printStackTrace();
|
|
}
|
|
return null;
|
|
}
|
|
|
|
public static String generateHash(String password) {
|
|
MessageDigest md = null;
|
|
try {
|
|
md = MessageDigest.getInstance("SHA-512");
|
|
md.update(password.getBytes());
|
|
byte byteData[] = md.digest();
|
|
String base64 = Base64.encodeToString(byteData, Base64.NO_WRAP);
|
|
return base64;
|
|
|
|
} catch (NoSuchAlgorithmException e) {
|
|
e.printStackTrace();
|
|
}
|
|
return null;
|
|
}
|
|
|
|
public static void showMessage(Context context, String message) {
|
|
Toast.makeText(context, message, Toast.LENGTH_LONG).show();
|
|
}
|
|
|
|
public static void openKeyboard(final Context context) {
|
|
new Handler().postDelayed(new Runnable() {
|
|
@Override
|
|
public void run() {
|
|
InputMethodManager imm = (InputMethodManager) context.getSystemService(Context.INPUT_METHOD_SERVICE);
|
|
if (imm != null) {
|
|
imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, InputMethodManager.HIDE_IMPLICIT_ONLY);
|
|
}
|
|
}
|
|
}, 500);
|
|
}
|
|
|
|
public static void hideKeyboard(Activity activity) {
|
|
InputMethodManager inputMethodManager = (InputMethodManager) activity.getSystemService(Activity.INPUT_METHOD_SERVICE);
|
|
inputMethodManager.hideSoftInputFromWindow(activity.getCurrentFocus().getWindowToken(), 0);
|
|
}
|
|
} |