Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.ismail.fbfirebase;
- import android.app.ProgressDialog;
- import android.content.Intent;
- import android.net.Uri;
- import android.support.v7.app.AppCompatActivity;
- import android.os.Bundle;
- import android.view.View;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.ImageButton;
- import android.widget.ImageView;
- import android.widget.TextView;
- import android.widget.Toast;
- import com.android.volley.Request;
- import com.android.volley.RequestQueue;
- import com.android.volley.Response;
- import com.android.volley.VolleyError;
- import com.android.volley.toolbox.StringRequest;
- import com.android.volley.toolbox.Volley;
- import com.bumptech.glide.Glide;
- import com.firebase.client.Firebase;
- import com.firebase.ui.storage.images.FirebaseImageLoader;
- import com.google.android.gms.tasks.OnSuccessListener;
- import com.google.firebase.storage.FirebaseStorage;
- import com.google.firebase.storage.StorageReference;
- import com.google.firebase.storage.UploadTask;
- import com.squareup.picasso.Picasso;
- import org.json.JSONException;
- import org.json.JSONObject;
- public class Register extends AppCompatActivity {
- EditText username, password,email,ville;
- Button registerButton;
- String user, pass,vil,mail;
- Button login;
- ImageButton profil;
- StorageReference mstorage;
- private final static int intent_galerie=2;
- private static int i=0;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_register);
- username = (EditText)findViewById(R.id.username);
- password = (EditText)findViewById(R.id.password);
- email=(EditText)findViewById(R.id.email);
- ville=(EditText) findViewById(R.id.ville);
- registerButton = (Button)findViewById(R.id.register);
- login = (Button) findViewById(R.id.Login);
- profil=(ImageButton) findViewById(R.id.profile);
- mstorage= FirebaseStorage.getInstance().getReference();
- profil.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- if(!username.getText().toString().isEmpty()){
- Intent intent=new Intent(Intent.ACTION_PICK);
- intent.setType("image/*");
- startActivityForResult(intent,intent_galerie);}
- else{
- Toast.makeText(Register.this,"Vous devez remplir username",Toast.LENGTH_SHORT).show();
- }
- }
- });
- Firebase.setAndroidContext(this);
- login.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- startActivity(new Intent(Register.this, Login.class));
- }
- });
- registerButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- user = username.getText().toString();
- pass = password.getText().toString();
- mail= email.getText().toString();
- vil=ville.getText().toString();
- if(user.equals("")){
- username.setError("can't be blank");
- }
- else if(pass.equals("")){
- password.setError("can't be blank");
- }
- else if(!user.matches("[A-Za-z0-9]+")){
- username.setError("only alphabet or number allowed");
- }
- else if(user.length()<5){
- username.setError("at least 5 characters long");
- }
- else if(pass.length()<5){
- password.setError("at least 5 characters long");
- }
- else {
- final ProgressDialog pd = new ProgressDialog(Register.this);
- pd.setMessage("Loading...");
- pd.show();
- String url = "https://fbfirebase-94a3c.firebaseio.com/Users.json";
- StringRequest request = new StringRequest(Request.Method.GET, url, new Response.Listener<String>(){
- @Override
- public void onResponse(String s) {
- Firebase reference = new Firebase("https://fbfirebase-94a3c.firebaseio.com/Users");
- if(s.equals("null")) {
- i=1;
- reference.child(user).child("password").setValue(pass);
- reference.child(user).child("email").setValue(mail);
- reference.child(user).child("ville").setValue(vil);
- Toast.makeText(Register.this, "registration successful", Toast.LENGTH_LONG).show();
- username.setText("");
- email.setText("");
- password.setText("");
- ville.setText("");
- }
- else {
- try {
- JSONObject obj = new JSONObject(s);
- if (!obj.has(user)) {
- reference.child(user).child("password").setValue(pass);
- reference.child(user).child("email").setValue(mail);
- reference.child(user).child("ville").setValue(vil);
- Toast.makeText(Register.this, "registration successful", Toast.LENGTH_LONG).show();
- } else {
- Toast.makeText(Register.this, "username already exists", Toast.LENGTH_LONG).show();
- }
- } catch (JSONException e) {
- e.printStackTrace();
- }
- }
- pd.dismiss();
- }
- },new Response.ErrorListener(){
- @Override
- public void onErrorResponse(VolleyError volleyError) {
- System.out.println("" + volleyError );
- pd.dismiss();
- }
- });
- RequestQueue rQueue = Volley.newRequestQueue(Register.this);
- rQueue.add(request);
- }
- }
- });
- }
- @Override
- protected void onActivityResult(int requestCode, int resultCode, Intent data) {
- super.onActivityResult(requestCode, resultCode, data);
- if(requestCode == intent_galerie && resultCode == RESULT_OK ){
- Uri uri=data.getData();
- StorageReference str=mstorage.child("photos").child(username.getText().toString());
- final StorageReference ispath=str;
- //StorageReference str=mstorage.child("photos").child(findViewById(R.id.username).toString());
- str.putFile(uri).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
- @Override
- public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
- Glide.with(Register.this)
- .using(new FirebaseImageLoader())
- .load(ispath)
- .placeholder(R.drawable.profile_circular_border_imageview)
- .into( profil);
- Toast.makeText(Register.this,"Upload done...",Toast.LENGTH_SHORT).show();
- }
- });
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement