Advertisement
Guest User

Untitled

a guest
Feb 26th, 2019
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.08 KB | None | 0 0
  1. package com.martin.chatapp;
  2.  
  3. import android.content.Intent;
  4. import android.os.Bundle;
  5. import android.support.annotation.NonNull;
  6. import android.support.v7.app.AppCompatActivity;
  7. import android.support.v7.widget.Toolbar;
  8. import android.text.TextUtils;
  9. import android.util.Log;
  10. import android.view.View;
  11. import android.widget.Button;
  12. import android.widget.Toast;
  13.  
  14.  
  15. import com.google.android.gms.tasks.OnCompleteListener;
  16. import com.google.android.gms.tasks.Task;
  17. import com.google.firebase.auth.AuthResult;
  18. import com.google.firebase.auth.FirebaseAuth;
  19. import com.google.firebase.auth.FirebaseUser;
  20. import com.google.firebase.database.DatabaseReference;
  21. import com.google.firebase.database.FirebaseDatabase;
  22. import com.rengwuxian.materialedittext.MaterialEditText;
  23. import com.virgilsecurity.android.ethree.kotlin.interaction.EThree;
  24.  
  25. import org.jetbrains.annotations.NotNull;
  26.  
  27. import java.util.HashMap;
  28.  
  29. public class RegisterActivity extends AppCompatActivity {
  30.  
  31. MaterialEditText username, email, password;
  32. Button btn_register;
  33. EThree eThree;
  34. FirebaseAuth auth;
  35. DatabaseReference reference;
  36.  
  37. @Override
  38. protected void onCreate(Bundle savedInstanceState) {
  39. super.onCreate(savedInstanceState);
  40. setContentView(R.layout.activity_register);
  41.  
  42. Toolbar toolbar = findViewById(R.id.toolbar);
  43. setSupportActionBar(toolbar);
  44. getSupportActionBar().setTitle("Register");
  45. getSupportActionBar().setDisplayHomeAsUpEnabled(true);
  46.  
  47. username = findViewById(R.id.username);
  48. email = findViewById(R.id.email);
  49. password = findViewById(R.id.password);
  50. btn_register = findViewById(R.id.btn_register);
  51.  
  52. auth = FirebaseAuth.getInstance();
  53.  
  54. btn_register.setOnClickListener(new View.OnClickListener() {
  55. @Override
  56. public void onClick(View view) {
  57. final String txt_username = username.getText().toString();
  58. String txt_email = email.getText().toString();
  59. String txt_password = password.getText().toString();
  60.  
  61. if (TextUtils.isEmpty(txt_username) || TextUtils.isEmpty(txt_email) || TextUtils.isEmpty(txt_password)){
  62. Toast.makeText(RegisterActivity.this, "All fileds are required", Toast.LENGTH_SHORT).show();
  63. } else if (txt_password.length() < 6 ){
  64. Toast.makeText(RegisterActivity.this, "password must be at least 6 characters", Toast.LENGTH_SHORT).show();
  65. } else {
  66. register(txt_email, txt_password);
  67. }
  68. }
  69. });
  70. }
  71.  
  72.  
  73. private void register(String email, String password){
  74.  
  75. // Listener for register
  76. final EThree.OnCompleteListener onRegisterListener = new EThree.OnCompleteListener() {
  77. @Override public void onSuccess() {
  78. Log.d("success", "onSuccess: It worked");
  79. FirebaseUser firebaseUser = auth.getCurrentUser();
  80. assert firebaseUser != null;
  81. String userid = firebaseUser.getUid();
  82.  
  83. reference = FirebaseDatabase.getInstance().getReference("Users").child(userid);
  84. final String txt_username = username.getText().toString();
  85. HashMap<String, String> hashMap = new HashMap<>();
  86. hashMap.put("id", userid);
  87. hashMap.put("username", txt_username);
  88. hashMap.put("imageURL", "default");
  89. hashMap.put("status", "offline");
  90. hashMap.put("search", txt_username.toLowerCase());
  91.  
  92. reference.setValue(hashMap).addOnCompleteListener(new OnCompleteListener<Void>() {
  93. @Override
  94. public void onComplete(@NonNull Task<Void> task) {
  95. if (task.isSuccessful()){
  96. Intent intent = new Intent(RegisterActivity.this, MainActivity.class);
  97. intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
  98. startActivity(intent);
  99. finish();
  100. }
  101. }
  102. });
  103. }
  104. @Override public void onError(@NotNull final Throwable throwable) {
  105. throw new Error("I dont know whats going wrong!");
  106. }
  107. };
  108.  
  109. auth.createUserWithEmailAndPassword(email, password)
  110. .addOnCompleteListener(new OnCompleteListener<AuthResult>() {
  111. @Override
  112. public void onComplete(@NonNull Task<AuthResult> task) {
  113. if (task.isSuccessful()){
  114. Log.d("test", "onComplete: so far so good");
  115. eThree.register(onRegisterListener);
  116.  
  117. } else {
  118. Toast.makeText(RegisterActivity.this, "You can't register with this email or password", Toast.LENGTH_SHORT).show();
  119. }
  120. }
  121. });
  122.  
  123. }
  124. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement