Advertisement
Guest User

Untitled

a guest
Aug 23rd, 2018
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.68 KB | None | 0 0
  1. public class RegisterActivity extends AppCompatActivity {
  2. private static final String KEY_STATUS = "status";
  3. private static final String KEY_MESSAGE = "message";
  4. private static final String KEY_FULL_NAME = "full_name";
  5. private static final String KEY_USERNAME = "username";
  6. private static final String KEY_PASSWORD = "password";
  7. private static final String KEY_CHECKBOX = "checkbox";
  8. private static final String KEY_EMPTY = "";
  9. private EditText etUsername;
  10. private EditText etPassword;
  11. private EditText etConfirmPassword;
  12. private EditText etFullName;
  13. private String username;
  14. private String password;
  15. private String confirmPassword;
  16. private String fullName;
  17. private String checkBox;
  18. private ProgressDialog pDialog;
  19. private String register_url = "";
  20. private SessionHandler session;
  21.  
  22. @Override
  23. protected void onCreate(Bundle savedInstanceState) {
  24. super.onCreate(savedInstanceState);
  25. session = new SessionHandler(getApplicationContext());
  26. setContentView(R.layout.activity_register);
  27.  
  28. etUsername = findViewById(R.id.etUsername);
  29. etPassword = findViewById(R.id.etPassword);
  30. etConfirmPassword = findViewById(R.id.etConfirmPassword);
  31. etFullName = findViewById(R.id.etFullName);
  32. CheckBox checkBox = findViewById(R.id.cb1);
  33.  
  34. Button login = findViewById(R.id.btnRegisterLogin);
  35. Button register = findViewById(R.id.btnRegister);
  36.  
  37.  
  38.  
  39. //Launch Login screen when Login Button is clicked
  40. login.setOnClickListener(new View.OnClickListener() {
  41. @Override
  42. public void onClick(View v) {
  43. Intent i = new Intent(RegisterActivity.this, LoginActivity.class);
  44. startActivity(i);
  45. finish();
  46. }
  47. });
  48.  
  49. register.setOnClickListener(new View.OnClickListener() {
  50. @Override
  51. public void onClick(View v) {
  52. //Retrieve the data entered in the edit texts
  53. username = etUsername.getText().toString().toLowerCase().trim();
  54. password = etPassword.getText().toString().trim();
  55. confirmPassword = etConfirmPassword.getText().toString().trim();
  56. fullName = etFullName.getText().toString().trim();
  57. if (validateInputs()) {
  58. registerUser();
  59. }
  60.  
  61. }
  62. });
  63.  
  64. }
  65.  
  66. /**
  67. * Display Progress bar while registering
  68. */
  69. private void displayLoader() {
  70. pDialog = new ProgressDialog(RegisterActivity.this);
  71. pDialog.setMessage("Registriere.. Bitte warte...");
  72. pDialog.setIndeterminate(false);
  73. pDialog.setCancelable(false);
  74. pDialog.show();
  75.  
  76. }
  77.  
  78. /**
  79. * Launch Dashboard Activity on Successful Sign Up
  80. */
  81. private void loadDashboard() {
  82. Intent i = new Intent(getApplicationContext(), DashboardActivity.class);
  83. startActivity(i);
  84. finish();
  85.  
  86. }
  87.  
  88. private void registerUser() {
  89. displayLoader();
  90. JSONObject request = new JSONObject();
  91. try {
  92. //Populate the request parameters
  93. request.put(KEY_USERNAME, username);
  94. request.put(KEY_PASSWORD, password);
  95. request.put(KEY_FULL_NAME, fullName);
  96.  
  97. } catch (JSONException e) {
  98. e.printStackTrace();
  99. }
  100. JsonObjectRequest jsArrayRequest = new JsonObjectRequest
  101. (Request.Method.POST, register_url, request, new Response.Listener<JSONObject>() {
  102. @Override
  103. public void onResponse(JSONObject response) {
  104. pDialog.dismiss();
  105. try {
  106. //Check if user got registered successfully
  107. if (response.getInt(KEY_STATUS) == 0) {
  108. //Set the user session
  109. session.loginUser(username,fullName);
  110. loadDashboard();
  111.  
  112. }else if(response.getInt(KEY_STATUS) == 1){
  113. //Display error message if username is already existsing
  114. etUsername.setError("Username bereits vergeben!");
  115. etUsername.requestFocus();
  116.  
  117. }else{
  118. Toast.makeText(getApplicationContext(),
  119. response.getString(KEY_MESSAGE), Toast.LENGTH_SHORT).show();
  120.  
  121. }
  122. } catch (JSONException e) {
  123. e.printStackTrace();
  124. }
  125. }
  126. }, new Response.ErrorListener() {
  127.  
  128. @Override
  129. public void onErrorResponse(VolleyError error) {
  130. pDialog.dismiss();
  131.  
  132. //Display error message whenever an error occurs
  133. Toast.makeText(getApplicationContext(),
  134. error.getMessage(), Toast.LENGTH_SHORT).show();
  135.  
  136. }
  137. });
  138.  
  139. // Access the RequestQueue through your singleton class.
  140. MySingleton.getInstance(this).addToRequestQueue(jsArrayRequest);
  141. }
  142.  
  143. /**
  144. * Validates inputs and shows error if any
  145. * @return
  146. */
  147. private boolean validateInputs() {
  148. if (KEY_EMPTY.equals(fullName)) {
  149. etFullName.setError("Name darf nicht leer bleiben");
  150. etFullName.requestFocus();
  151. return false;
  152.  
  153. }
  154. if (KEY_EMPTY.equals(username)) {
  155. etUsername.setError("Username darf nicht leer bleiben");
  156. etUsername.requestFocus();
  157. return false;
  158. }
  159. if (KEY_EMPTY.equals(password)) {
  160. etPassword.setError("Passwort darf nicht leer bleiben");
  161. etPassword.requestFocus();
  162. return false;
  163. }
  164.  
  165. if (KEY_EMPTY.equals(confirmPassword)) {
  166. etConfirmPassword.setError("Passwortbestätigung darf nicht leer bleiben");
  167. etConfirmPassword.requestFocus();
  168. return false;
  169. }
  170. if (!password.equals(confirmPassword)) {
  171. etConfirmPassword.setError("Passwort ist nicht identisch");
  172. etConfirmPassword.requestFocus();
  173. return false;
  174. }
  175. if (!checkBox.isChecked()) {
  176. checkBox.setError("AGB müssen bestätigt werden");
  177. checkBox.requestFocus();
  178. return false;
  179. }
  180.  
  181. return true;
  182. }
  183. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement