Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package callme.customer.Activity;
- import android.content.Intent;
- import android.os.Bundle;
- import android.support.annotation.NonNull;
- import android.support.v7.app.AppCompatActivity;
- import android.text.TextUtils;
- import android.view.View;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.ProgressBar;
- 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.database.DatabaseReference;
- import com.google.firebase.database.FirebaseDatabase;
- import com.google.firebase.iid.FirebaseInstanceId;
- import butterknife.ButterKnife;
- import butterknife.InjectView;
- import butterknife.OnClick;
- import callme.customer.Helper.SessionManager;
- import callme.customer.Models.User;
- import callme.customer.R;
- public class SignUpActivity extends AppCompatActivity {
- @InjectView(R.id.email)
- EditText email;
- @InjectView(R.id.password)
- EditText password;
- @InjectView(R.id.sign_up_button)
- Button signUpButton;
- @InjectView(R.id.sign_in_button)
- Button signInButton;
- @InjectView(R.id.progressBar)
- ProgressBar progressBar;
- @InjectView(R.id.username)
- EditText username;
- private FirebaseAuth auth;
- DatabaseReference dr;
- String id;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_sign_up);
- ButterKnife.inject(this);
- auth = FirebaseAuth.getInstance();
- FirebaseDatabase database = FirebaseDatabase.getInstance();
- dr = database.getReference("User");
- }
- @OnClick({R.id.sign_up_button, R.id.sign_in_button})
- public void onViewClicked(View view) {
- switch (view.getId()) {
- case R.id.sign_up_button:
- final String inputUsername = username.getText().toString().trim();
- final String inputEmail = email.getText().toString().trim();
- String inputPassword = password.getText().toString().trim();
- if (TextUtils.isEmpty(inputUsername)) {
- Toast.makeText(getApplicationContext(), "Enter username!", Toast.LENGTH_SHORT).show();
- return;
- }
- if (TextUtils.isEmpty(inputEmail)) {
- Toast.makeText(getApplicationContext(), "Enter email address!", Toast.LENGTH_SHORT).show();
- return;
- }
- if (TextUtils.isEmpty(inputPassword)) {
- Toast.makeText(getApplicationContext(), "Enter password!", Toast.LENGTH_SHORT).show();
- return;
- }
- if (inputPassword.length() < 6) {
- Toast.makeText(getApplicationContext(), "Password too short, enter minimum 6 characters!", Toast.LENGTH_SHORT).show();
- return;
- }
- progressBar.setVisibility(View.VISIBLE);
- auth.createUserWithEmailAndPassword(inputEmail, inputPassword)
- .addOnCompleteListener(SignUpActivity.this, new OnCompleteListener<AuthResult>() {
- @Override
- public void onComplete(@NonNull Task<AuthResult> task) {
- Toast.makeText(SignUpActivity.this, "createUserWithEmail:onComplete:" + task.isSuccessful(), Toast.LENGTH_SHORT).show();
- progressBar.setVisibility(View.GONE);
- // If sign in fails, display a message to the user. If sign in succeeds
- // the auth state listener will be notified and logic to handle the
- // signed in user can be handled in the listener.
- if (!task.isSuccessful()) {
- Toast.makeText(SignUpActivity.this, "Authentication failed." + task.getException(),
- Toast.LENGTH_SHORT).show();
- } else {
- id = dr.push().getKey();
- SessionManager sm = new SessionManager(SignUpActivity.this);
- sm.setKeyUser(id);
- sm.setNama(inputUsername);
- sm.setEmail(inputEmail);
- sm.setFcm(FirebaseInstanceId.getInstance().getToken());
- User w = new User(inputUsername, inputEmail,
- FirebaseInstanceId.getInstance().getToken(), "", "0");
- dr.child(id).setValue(w);
- startActivity(new Intent(SignUpActivity.this, MainActivity.class));
- finish();
- }
- }
- });
- break;
- case R.id.sign_in_button:
- finish();
- break;
- }
- }
- @Override
- protected void onResume() {
- super.onResume();
- progressBar.setVisibility(View.GONE);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement