Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.ozan.chatapp;
- import android.app.ProgressDialog;
- import android.content.Intent;
- import android.support.annotation.NonNull;
- import android.support.design.widget.TextInputLayout;
- import android.support.v7.app.AppCompatActivity;
- import android.os.Bundle;
- import android.support.v7.widget.Toolbar;
- import android.util.Log;
- import android.view.View;
- import android.widget.Toast;
- import com.google.android.gms.tasks.OnCompleteListener;
- import com.google.android.gms.tasks.Task;
- import com.google.firebase.auth.AuthResult;
- import com.google.firebase.auth.FirebaseAuth;
- import com.google.firebase.auth.FirebaseUser;
- import com.google.firebase.database.DatabaseReference;
- import com.google.firebase.database.FirebaseDatabase;
- import java.util.HashMap;
- import java.util.Map;
- public class RegisterActivity extends AppCompatActivity {
- private static final String TAG = "RegisterActivity";
- private TextInputLayout mUsername;
- private TextInputLayout mEmail;
- private TextInputLayout mPassword;
- private FirebaseAuth mAuth;
- private Toolbar toolbar;
- private ProgressDialog mprogressDialog;
- private DatabaseReference database;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_register);
- mUsername = findViewById(R.id.register_username);
- mEmail = findViewById(R.id.login_email);
- mPassword = findViewById(R.id.login_password);
- mprogressDialog = new ProgressDialog(this);
- mAuth = FirebaseAuth.getInstance();
- toolbar = findViewById(R.id.login_toolbar);
- setSupportActionBar(toolbar);
- getSupportActionBar().setTitle("Registrieren");
- getSupportActionBar().setDisplayHomeAsUpEnabled(true);
- }
- public void onClickRegistrieren(View view){
- Log.d(TAG, "onClickRegistrieren: Button gedrückt");
- final String username = mUsername.getEditText().getText().toString();
- String email = mEmail.getEditText().getText().toString();
- String password = mPassword.getEditText().getText().toString();
- if(validateData(username, email, password)) {
- mprogressDialog.setTitle("Registrierung");
- mprogressDialog.setMessage("Bitte warte, solange wir deinen Account erstellen :)");
- mprogressDialog.setCanceledOnTouchOutside(false);
- mprogressDialog.show();
- mAuth.createUserWithEmailAndPassword(email, password).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
- @Override
- public void onComplete(@NonNull Task<AuthResult> task) {
- if (task.isSuccessful()) {
- FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
- String userid = user.getUid();
- database = FirebaseDatabase.getInstance().getReference().child("users").child(userid);
- HashMap<String, String> map = new HashMap<>();
- map.put("name", username);
- map.put("status", "Status");
- map.put("image", "default");
- map.put("thumb_image", "default");
- database.setValue(map).addOnCompleteListener(new OnCompleteListener<Void>() {
- @Override
- public void onComplete(@NonNull Task<Void> task) {
- if(task.isSuccessful()) {
- mprogressDialog.dismiss();
- Toast.makeText(RegisterActivity.this, "User wurde registriert!", Toast.LENGTH_SHORT).show();
- Intent intent = new Intent(RegisterActivity.this, MainActivity.class);
- intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
- startActivity(intent);
- finish();
- }
- }
- });
- } else {
- mprogressDialog.hide();
- Log.d(TAG, "onComplete: " + task.getException());
- Toast.makeText(RegisterActivity.this, "User konnte nicht registriert werden!", Toast.LENGTH_SHORT).show();
- }
- }
- });
- }
- }
- private boolean validateEmail(String email){
- if(email.isEmpty()){
- mEmail.setError("Bitte Email eintragen");
- return false;
- }
- mEmail.setError(null);
- return true;
- }
- private boolean validateUsername(String username){
- if(username.isEmpty()){
- mUsername.setError("Bitte Username eintragen");
- return false;
- }
- mUsername.setError(null);
- return true;
- }
- private boolean validatePassword(String password){
- if(password.isEmpty()){
- mPassword.setError("Bitte Passwort eintragen");
- return false;
- }
- mPassword.setError(null);
- return true;
- }
- private boolean validateData(String username, String email, String password){
- return validateUsername(username) & validateEmail(email) & validatePassword(password);
- }
- }
Add Comment
Please, Sign In to add comment