Private
Public Access
1
0

Embellish on account manager.

This commit is contained in:
Kevin Whitaker
2015-11-17 23:33:46 -05:00
parent d70f63924a
commit 36c9db71b8
2 changed files with 33 additions and 2 deletions

View File

@@ -1,22 +1,52 @@
package com.magnatune.eyecreate.companionformagnatune.login; package com.magnatune.eyecreate.companionformagnatune.login;
import android.content.Context; import android.content.Context;
import android.content.SharedPreferences;
import com.magnatune.eyecreate.companionformagnatune.MagnatuneCompainionApplication; import com.magnatune.eyecreate.companionformagnatune.MagnatuneCompainionApplication;
import com.magnatune.eyecreate.companionformagnatune.R; import com.magnatune.eyecreate.companionformagnatune.R;
public class MagnatuneAccountManager { public class MagnatuneAccountManager {
private static final String UNSECURE_STORAGE = "unsecurestorage";
private static final String SECURE_STORAGE = "securestorage"; private static final String SECURE_STORAGE = "securestorage";
private static final String SP_KEY_USERNAME = "username"; private static final String SP_KEY_USERNAME = "username";
private static final String SP_KEY_PASSWORD = "password"; private static final String SP_KEY_PASSWORD = "password";
private static final String SP_KEY_LOGGED_IN = "loggedin";
public static String getMagnatuneName() { public static String getMagnatuneName() {
ObscuredSharedPreferences securedPrefs = ObscuredSharedPreferences.getPrefs(MagnatuneCompainionApplication.getApplication(), SECURE_STORAGE, Context.MODE_PRIVATE); ObscuredSharedPreferences securedPrefs = ObscuredSharedPreferences.getPrefs(MagnatuneCompainionApplication.getApplication(), SECURE_STORAGE, Context.MODE_PRIVATE);
return securedPrefs.getString(SP_KEY_USERNAME,MagnatuneCompainionApplication.getApplication().getString(R.string.anon_user)); String username = securedPrefs.getString(SP_KEY_USERNAME,MagnatuneCompainionApplication.getApplication().getString(R.string.anon_user));
if(MagnatuneCompainionApplication.getApplication().getString(R.string.anon_user).equals(username) && isLoggedIn()) {
username = MagnatuneCompainionApplication.getApplication().getString(R.string.invalid);
}
return username;
}
public static String getMagnatunePassword() {
ObscuredSharedPreferences securedPrefs = ObscuredSharedPreferences.getPrefs(MagnatuneCompainionApplication.getApplication(), SECURE_STORAGE, Context.MODE_PRIVATE);
String password = securedPrefs.getString(SP_KEY_PASSWORD,"");
return password;
} }
public static boolean isLoggedIn() { public static boolean isLoggedIn() {
return false; SharedPreferences unsecuredPrefs = MagnatuneCompainionApplication.getApplication().getSharedPreferences(UNSECURE_STORAGE, Context.MODE_PRIVATE);
return unsecuredPrefs.getBoolean(SP_KEY_LOGGED_IN,false);
}
public static void login(String username,String password) {
//TODO:check for validity here
ObscuredSharedPreferences securedPrefs = ObscuredSharedPreferences.getPrefs(MagnatuneCompainionApplication.getApplication(), SECURE_STORAGE, Context.MODE_PRIVATE);
SharedPreferences unsecuredPrefs = MagnatuneCompainionApplication.getApplication().getSharedPreferences(UNSECURE_STORAGE, Context.MODE_PRIVATE);
securedPrefs.edit().putString(SP_KEY_USERNAME,username).apply();
securedPrefs.edit().putString(SP_KEY_PASSWORD,password).apply();
unsecuredPrefs.edit().putBoolean(SP_KEY_LOGGED_IN,true).apply();
}
public static void logout() {
ObscuredSharedPreferences securedPrefs = ObscuredSharedPreferences.getPrefs(MagnatuneCompainionApplication.getApplication(), SECURE_STORAGE, Context.MODE_PRIVATE);
SharedPreferences unsecuredPrefs = MagnatuneCompainionApplication.getApplication().getSharedPreferences(UNSECURE_STORAGE, Context.MODE_PRIVATE);
securedPrefs.edit().remove(SP_KEY_USERNAME).remove(SP_KEY_PASSWORD).apply();
unsecuredPrefs.edit().remove(SP_KEY_LOGGED_IN).apply();
} }
} }

View File

@@ -3,4 +3,5 @@
<string name="click_to_login">Click to Login</string> <string name="click_to_login">Click to Login</string>
<string name="click_to_logout">Click to Logout</string> <string name="click_to_logout">Click to Logout</string>
<string name="anon_user">Anonymous</string> <string name="anon_user">Anonymous</string>
<string name="invalid">Invalid</string>
</resources> </resources>