Advertisement
Guest User

Untitled

a guest
Aug 19th, 2016
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.96 KB | None | 0 0
  1. import java.io.IOException;
  2.  
  3. import org.apache.http.client.ClientProtocolException;
  4. import org.json.JSONException;
  5. import org.json.JSONObject;
  6.  
  7. import android.app.Activity;
  8. import android.app.ProgressDialog;
  9. import android.content.Context;
  10. import android.content.Intent;
  11. import android.content.SharedPreferences;
  12. import android.os.AsyncTask;
  13. import android.os.Bundle;
  14. import android.text.method.LinkMovementMethod;
  15. import android.util.Log;
  16. import android.view.Menu;
  17. import android.view.MenuItem;
  18. import android.view.View;
  19. import android.widget.CheckBox;
  20. import android.widget.EditText;
  21. import android.widget.TextView;
  22. import android.widget.Toast;
  23.  
  24. import com.inarts.mobile.merch.md.info.AppInfo;
  25. import com.inarts.mobile.merch.md.info.UserInfo;
  26. import com.inarts.rest.RequestMethod;
  27. import com.inarts.rest.RestClient;
  28.  
  29. public class LoginActivity extends Activity {
  30.  
  31. public String targetUrl = "";
  32. public String userName = "";
  33. public String userUsername = "";
  34. public String userPassword = "";
  35. public boolean userSaveCB = false;
  36. public static Context ctx;
  37. public static final String PREFS_NAME = "MyPrefsFile";
  38.  
  39. /**
  40. * Called when the activity is first created.
  41. */
  42. @Override
  43. public void onCreate(Bundle savedInstanceState) {
  44. super.onCreate(savedInstanceState);
  45. setContentView(R.layout.main);
  46. ctx = this.getApplicationContext();
  47. targetUrl = Config.getEndPointUrl() + "/login.json";
  48.  
  49. // Log.i("ncdebug","Ma, i'm in login: "+getLoginState());
  50. TextView tvcopyright = (TextView) findViewById(R.id.main_copyright);
  51. tvcopyright.setMovementMethod(LinkMovementMethod.getInstance());
  52.  
  53. EditText tvUsername = (EditText) findViewById(R.id.main_user_txt);
  54. EditText tvPassword = (EditText) findViewById(R.id.main_pass_txt);
  55. CheckBox cbSavePassword = (CheckBox) findViewById(R.id.main_save_cb);
  56.  
  57. if (isSavePassword()) {
  58. tvUsername.setText(getSavedUsername());
  59. tvPassword.setText(getSavedPassword());
  60. cbSavePassword.setChecked(true);
  61. } else {
  62. cbSavePassword.setChecked(false);
  63. }
  64.  
  65. if (getLoginState()) {
  66. Log.i("ncdebug", "I am logged in");
  67. goToMainActivity();
  68. } else {
  69. // intent_depan();
  70. }
  71. }
  72.  
  73.  
  74. @Override
  75. public boolean onCreateOptionsMenu(Menu menu) {
  76. menu.add(0, 1, 0, "Keluar").setIcon(R.drawable.ic_menu_exit);
  77.  
  78. return super.onCreateOptionsMenu(menu);
  79. }
  80.  
  81. @Override
  82. public boolean onOptionsItemSelected(MenuItem item) {
  83. // Handle item selection
  84. switch (item.getItemId()) {
  85. case 1:
  86. finish();
  87. return true;
  88. default:
  89. return super.onOptionsItemSelected(item);
  90. }
  91. }
  92.  
  93. @Override
  94. public void onBackPressed() {
  95.  
  96. return;
  97. }
  98.  
  99. public void click_login(View view) {
  100. EditText user_txt = (EditText) findViewById(R.id.main_user_txt);
  101. EditText pass_txt = (EditText) findViewById(R.id.main_pass_txt);
  102. if (user_txt.getText().toString().equals(AppInfo.adminName)
  103. && pass_txt.getText().toString().equals(AppInfo.adminPass)) {
  104. Intent intent = new Intent(ctx, StoreAddGeoActivity.class);
  105. startActivity(intent);
  106. finish();
  107. } else {
  108. new AuthenticateTask().execute(targetUrl);
  109. }
  110.  
  111. }
  112.  
  113. public void goToMainActivity() {
  114. Intent intent = new Intent(this.getApplicationContext(),
  115. MainActivity.class);
  116. this.startActivity(intent);
  117. finish();
  118. }
  119.  
  120. public void saveLoginState() {
  121. SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
  122. SharedPreferences.Editor editor = settings.edit();
  123. editor.putString("user_name", userName);
  124. editor.putString("user_username", userUsername);
  125. editor.putString("user_password", userPassword);
  126. editor.putBoolean("loginState", true);
  127.  
  128. CheckBox cbSavePassword = (CheckBox) findViewById(R.id.main_save_cb);
  129. if (cbSavePassword.isChecked()) {
  130. editor.putBoolean("isSavePassword", true);
  131. } else {
  132. editor.putBoolean("isSavePassword", false);
  133. }
  134.  
  135. UserInfo.username = userUsername;
  136. UserInfo.name = userName;
  137. UserInfo.loginstatus = true;
  138.  
  139. editor.commit();
  140. }
  141.  
  142. public boolean isSavePassword() {
  143. SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
  144. boolean stat = settings.getBoolean("isSavePassword", false);
  145.  
  146. return stat;
  147. }
  148.  
  149. public String getSavedUsername() {
  150. SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
  151.  
  152. return settings.getString("user_username", "");
  153. }
  154.  
  155. public String getSavedPassword() {
  156. SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
  157.  
  158. return settings.getString("user_password", "");
  159. }
  160.  
  161. public boolean getLoginState() {
  162. SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
  163.  
  164. UserInfo.username = settings.getString("user_username", "");
  165. UserInfo.name = settings.getString("user_name", "");
  166.  
  167. boolean stat = settings.getBoolean("loginState", false);
  168. UserInfo.loginstatus = stat;
  169.  
  170. return stat;
  171. }
  172.  
  173. private class AuthenticateTask extends AsyncTask<String, String, String> {
  174. ProgressDialog dialog;
  175.  
  176.  
  177. @Override
  178. protected void onPreExecute() {
  179. dialog = ProgressDialog.show(LoginActivity.this, "", "Loading...",
  180. true);
  181. }
  182.  
  183. @Override
  184. protected String doInBackground(String... params) {
  185.  
  186. RestClient client = new RestClient(targetUrl);
  187.  
  188. EditText user_txt = (EditText) findViewById(R.id.main_user_txt);
  189. EditText pass_txt = (EditText) findViewById(R.id.main_pass_txt);
  190.  
  191. userUsername = user_txt.getText().toString();
  192. userPassword = pass_txt.getText().toString();
  193.  
  194. client.AddParam("username", user_txt.getText().toString());
  195. client.AddParam("password", pass_txt.getText().toString());
  196.  
  197. try {
  198. client.Execute(RequestMethod.GET);
  199. return client.getResponse();
  200. } catch (ClientProtocolException e) {
  201. // e.printStackTrace();
  202. Toast.makeText(LoginActivity.ctx, e.getMessage(),
  203. Toast.LENGTH_SHORT).show();
  204. } catch (IOException e) {
  205. // e.printStackTrace();
  206. Toast.makeText(LoginActivity.ctx, e.getMessage(),
  207. Toast.LENGTH_SHORT).show();
  208. } catch (Exception e) {
  209. // e.printStackTrace();
  210. Toast.makeText(LoginActivity.ctx, e.getMessage(),
  211. Toast.LENGTH_SHORT).show();
  212. }
  213.  
  214. return null;
  215. }
  216.  
  217. @Override
  218. protected void onPostExecute(String Result) {
  219. dialog.dismiss();
  220. if (Result != null) {
  221. parseJson(Result);
  222. } else {
  223. // intent_depan();
  224. Toast.makeText(LoginActivity.ctx,
  225. "Login Failed, Connection Error", Toast.LENGTH_SHORT)
  226. .show();
  227. }
  228. }
  229.  
  230. public void parseJson(String s) {
  231. try {
  232. JSONObject jobj = new JSONObject(s);
  233. String stat = jobj.getString("stat");
  234. //
  235. // Log.i("json result", "string result " + s1);
  236. if (stat.equals("failed")) {
  237. String msg = jobj.getString("msg");
  238. Toast.makeText(LoginActivity.ctx, msg, Toast.LENGTH_SHORT)
  239. .show();
  240. } else {
  241. userName = jobj.getString("name");
  242. // Toast.makeText(LoginActivity.ctx, userName,
  243. // Toast.LENGTH_SHORT).show();
  244.  
  245. saveLoginState();
  246.  
  247. goToMainActivity();
  248. }
  249.  
  250. /*
  251. * if (s1 == "success") { intent_depan(); } else {
  252. * intent_depan(); }
  253. */
  254. } catch (JSONException e) {
  255. e.printStackTrace();
  256. Toast.makeText(LoginActivity.ctx, e.getMessage(),
  257. Toast.LENGTH_SHORT).show();
  258. }
  259. }
  260.  
  261. }
  262.  
  263. }
  264.  
  265. EditText user_txt = (EditText) findViewById(R.id.main_user_txt);
  266. EditText pass_txt = (EditText) findViewById(R.id.main_pass_txt);
  267.  
  268. userUsername = user_txt.getText().toString();
  269. userPassword = pass_txt.getText().toString();
  270.  
  271. userUsername = user_txt.getText().toString();
  272. userPassword = pass_txt.getText().toString();
  273.  
  274. new AuthenticateTask().execute(targetUrl, userUsername, userPassword);
  275.  
  276. protected String doInBackground(String... params) {
  277. RestClient client = new RestClient(params[0]);
  278.  
  279. client.AddParam("username", params[1]);
  280. client.AddParam("password", params[2]);
  281.  
  282. ...
  283. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement