Sunteți pe pagina 1din 16

Gradle Module

implementation 'de.hdodenhof:circleimageview:2.2.0'
implementation 'com.theartofdev.edmodo:android-image-cropper:2.7.0'
implementation 'com.squareup.picasso:picasso:2.71828'
implementation 'com.android.support:design:28.0.0-alpha1'
implementation 'com.android.support:recyclerview-v7:28.0.0'
//Firebase Database Liberaries
implementation 'com.google.firebase:firebase-core:16.0.6'
implementation 'com.google.firebase:firebase-database:16.0.5'
implementation 'com.google.firebase:firebase-storage:16.0.5'
implementation 'com.google.firebase:firebase-auth:16.1.0'
implementation 'com.firebaseui:firebase-ui-database:4.2.1'
implementation 'com.google.firebase:firebase-messaging:17.3.4'
//Button Liberariy
implementation 'info.hoang8f:fbutton:1.0.5'
//Edit Text Field Library
implementation 'com.rengwuxian.materialedittext:library:2.1.4'
implementation 'com.android.support:cardview-v7:28.0.0'
implementation 'com.android.volley:volley:1.1.1'

Activity --------- Front Page (java Code)


btnJobSearch = (Button) findViewById(R.id.btnJobSearch);
btnJobsAdvertise = (Button) findViewById(R.id.btnJobsAdvertise);
//Job Search Button Activity
btnJobSearch.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent userRegister = new Intent(FrontPage.this, LoginActivity.class);
startActivity(userRegister);
}
});
//Job Advertise Activity
btnJobsAdvertise.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent Employer=new Intent(FrontPage.this,Employers_login.class);
startActivity(Employer);
}
});

------------XML----Front page
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true">
<ImageView
android:layout_width="wrap_content"
android:layout_height="160dp"
android:baselineAligned="false" />
<TextView
android:id="@+id/txtSlogan"
android:layout_width="250dp"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Welcome in Job Search Portal"
android:textColor="@color/colorPrimaryDark"
android:textSize="20dp" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_alignParentBottom="true"
android:weightSum="2"
android:layout_margin="8dp"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<info.hoang8f.widget.FButton
android:id="@+id/btnJobSearch"
android:text="Search Jobs"
android:textColor="@android:color/white"
android:layout_weight="1"
android:layout_margin="8dp"
android:layout_width="0dp"
android:layout_height="wrap_content"
app:shadowColor="@android:color/black" />
<info.hoang8f.widget.FButton
android:id="@+id/btnJobsAdvertise"
android:text="Advertise Jobs"
android:textColor="@android:color/white"
android:layout_weight="1"
android:layout_margin="8dp"
android:layout_width="0dp"
app:buttonColor="@color/colorPrimaryDark"
app:shadowColor="@android:color/black"
android:layout_height="wrap_content" />
</LinearLayout>

Login Activity ----java code


private FButton LoginButton, SignupButton;
private EditText UserEmail, UserPassword;
private TextView resetPassowrd;
private ProgressDialog loadingBar;
private FirebaseAuth mAuth;
private Boolean EmailAddressChecker;
private static final int RC_SIGN_IN = 1;
private static final String TAG = "LoginActivity";

after override
mAuth = FirebaseAuth.getInstance();
resetPassowrd = (TextView) findViewById(R.id.resetPassword);
UserEmail = (EditText) findViewById(R.id.login_email);
UserPassword = (EditText) findViewById(R.id.login_password);
LoginButton = (FButton) findViewById(R.id.login_button);
SignupButton =(FButton)findViewById(R.id.signup_button);
loadingBar = new ProgressDialog(this);
LoginButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view)
{
AllowingUserToLogin();
}
});
SignupButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
SendUserToRegisterActivity();
}
});
resetPassowrd.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent accountCreate = new Intent(LoginActivity.this, ResetPassword.class);
startActivity(accountCreate);
}
});
}
private void AllowingUserToLogin() {
final String email = UserEmail.getText().toString();
String password = UserPassword.getText().toString();
if(TextUtils.isEmpty(email))
{
Toast.makeText(this, "Please write your email...", Toast.LENGTH_SHORT).show();
}
else if(TextUtils.isEmpty(password))
{
Toast.makeText(this, "Please write your password...", Toast.LENGTH_SHORT).show();
}
else
{
loadingBar.setTitle("Login");
loadingBar.setMessage("Please wait, while we are allowing you to login into your Account...");
loadingBar.setCanceledOnTouchOutside(true);
loadingBar.show();
mAuth.signInWithEmailAndPassword(email, password)
.addOnCompleteListener(new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task)
{
if(task.isSuccessful())
{
VerifyEmailAddress();
loadingBar.dismiss();
}
else
{
String message = task.getException().getMessage();
Toast.makeText(LoginActivity.this, "Error occured: " + message,
Toast.LENGTH_SHORT).show();
loadingBar.dismiss();
}
}
});
}
}
private void VerifyEmailAddress(){
FirebaseUser user = mAuth.getCurrentUser();
EmailAddressChecker = user.isEmailVerified();
if (EmailAddressChecker){
SendUserToMainActivity();
Toast.makeText(LoginActivity.this, "you are Logged In successfully.", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(this, "Please Verify your Email Address first", Toast.LENGTH_SHORT).show();
mAuth.signOut();
}
}
private void SendUserToMainActivity() {
Intent mainIntent = new Intent(LoginActivity.this, MainActivity.class);
mainIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(mainIntent);
finish();
}
private void SendUserToLoginActivity()
{
Intent mainIntent = new Intent(LoginActivity.this, LoginActivity.class);
mainIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(mainIntent);
finish();
}
private void SendUserToRegisterActivity()
{
Intent registerIntent = new Intent(LoginActivity.this, GDPRSplash.class);
startActivity(registerIntent);
}

Login Activity ----XML – file

<LinearLayout
android:id="@+id/header_layout"
android:layout_marginTop="10dp"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:weightSum="10">
<TextView
android:id="@+id/txtLogo"
android:textAlignment="center"
android:text="Welcome"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@android:color/white"
android:textStyle="italic"
android:textSize="25sp"
android:layout_weight="2"
/>
<TextView
android:layout_marginTop="35dp"
android:id="@+id/txtJobSearch"
android:textAlignment="center"
android:text="JOBs Per Hour Application"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textStyle="bold"
android:textColor="@color/white"
android:layout_weight="1"
android:textSize="23sp"
/>
</LinearLayout>
<LinearLayout
android:id="@+id/sigin_layout"
android:layout_marginTop="80dp"
android:layout_below="@id/header_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:weightSum="3">
<TextView
android:layout_weight="1"
android:layout_marginTop="10dp"
android:id="@+id/txtLogin"
android:textStyle="italic"
android:textSize="20sp"
android:text="Sign In to access the portal"
android:textColor="@color/colorPrimaryDark"
android:textAlignment="center"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<EditText
android:layout_marginTop="10dp"
android:layout_weight="1"
android:id="@+id/login_email"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:background="@drawable/input"
android:drawableLeft="@drawable/email"
android:ems="10"
android:hint="Email..."
android:inputType="textEmailAddress"
/>
<EditText
android:layout_weight="1"
android:id="@+id/login_password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/login_email"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:background="@drawable/input"
android:drawableLeft="@drawable/password"
android:ems="10"
android:hint="Password..."
android:inputType="textPassword"
/>
<CheckBox
android:layout_weight="1"
android:id="@+id/remember_checkbox"
android:layout_marginTop="30dp"
android:layout_marginBottom="5dp"
android:text=" Remember me"
android:textStyle="italic"
android:textColor="@color/colorPrimaryDark"
android:textSize="17sp"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
<LinearLayout
android:id="@+id/login_buttonslayout"
android:layout_below="@id/sigin_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_marginLeft="2dp"
android:layout_marginRight="1dp"
android:layout_marginTop="15dp"
android:layout_marginBottom="20dp"
android:orientation="horizontal"
android:weightSum="2">
<info.hoang8f.widget.FButton
android:id="@+id/login_button"
android:layout_width="150dp"
android:layout_height="60dp"
android:layout_below="@+id/login_password"
android:layout_marginTop="18dp"
android:shadowColor="@color/colorPrimaryDark"
android:layout_weight="1"
android:background="@drawable/buttonstyleactive"
android:text="Sign In"
android:textColor="@android:color/white"
android:textSize="18sp" />
<info.hoang8f.widget.FButton
android:id="@+id/signup_button"
android:layout_width="150dp"
android:layout_height="60dp"
android:layout_below="@+id/login_password"
android:layout_marginTop="18dp"
android:layout_weight="1"
android:background="@drawable/buttonstyle"
android:layout_marginLeft="10dp"
android:shadowColor="@color/colorPrimaryDark"
android:text="Sign Up"
android:textColor="@android:color/white"
android:textSize="18sp" />
</LinearLayout>
<TextView
android:layout_below="@id/login_buttonslayout"
android:id="@+id/resetPassword"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_marginLeft="4dp"
android:text="Forget Password, click here "
android:textColor="@color/colorPrimaryDark"
android:textStyle="italic"
android:textSize="15sp" />
activity Register -------XML Code

<ImageView
android:id="@+id/register"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_width="150dp"
android:layout_height="150dp"
android:layout_marginTop="44dp"
app:srcCompat="@drawable/logo"/>
<EditText
android:id="@+id/register_email"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/register"
android:layout_centerHorizontal="true"
android:layout_marginTop="30dp"
android:ems="10"
android:hint="Email..."
android:inputType="textEmailAddress"
android:background="@drawable/input"
android:padding="10dp"
android:drawableLeft="@drawable/email"
/>
<EditText
android:id="@+id/register_password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/register_email"
android:layout_centerHorizontal="true"
android:layout_marginTop="19dp"
android:ems="10"
android:hint="Password..."
android:inputType="textPassword"
android:background="@drawable/input"
android:padding="10dp"
android:drawableLeft="@drawable/password"
/>
<EditText
android:id="@+id/register_confirm_password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/register_password"
android:layout_centerHorizontal="true"
android:layout_marginTop="19dp"
android:ems="10"
android:hint="Password..."
android:inputType="textPassword"
android:background="@drawable/input"
android:padding="10dp"
android:drawableLeft="@drawable/password"
/>
<Button
android:id="@+id/register_create_account"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/register_confirm_password"
android:layout_centerHorizontal="true"
android:text="Create Account"
android:textSize="22sp"
android:layout_marginTop="26dp"
android:background="@drawable/button"
android:padding="15dp"/>

Java Code
private EditText UserEmail, UserPassword, UserConfirmPassword;
private Button CreateAccountButton;
private ProgressDialog loadingBar;
private FirebaseAuth mAuth;

override

mAuth = FirebaseAuth.getInstance();
UserEmail = (EditText) findViewById(R.id.register_email);
UserPassword = (EditText) findViewById(R.id.register_password);
UserConfirmPassword = (EditText) findViewById(R.id.register_confirm_password);
CreateAccountButton = (Button) findViewById(R.id.register_create_account);
loadingBar = new ProgressDialog(this);
CreateAccountButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
CreateNewAccount();
}
});
}
@Override
protected void onStart() {
super.onStart();
FirebaseUser currentUser = mAuth.getCurrentUser();
if(currentUser != null)
{
SendUserToMainActivity();
}
}
private void SendEmailVerificationMessage(){
FirebaseUser user = mAuth.getCurrentUser();
if (user != null){
user.sendEmailVerification().addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()){
Toast.makeText(RegisterActivity.this,"Registration is Successfull, Please Check Your
Email and verify the account", Toast.LENGTH_SHORT).show();
SendUserToLoginActivity();
mAuth.signOut();
}
else {
String error = task.getException().getMessage();
Toast.makeText(RegisterActivity.this,"Error:"+error,Toast.LENGTH_SHORT).show();
mAuth.signOut();
}
}
});
}
}
private void SendUserToMainActivity()
{
Intent mainIntent = new Intent(RegisterActivity.this, MainActivity.class);
mainIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(mainIntent);
finish();
}
private void CreateNewAccount() {
final String email = UserEmail.getText().toString();
String password = UserPassword.getText().toString();
String confirmPassword = UserConfirmPassword.getText().toString();
if (TextUtils.isEmpty(email)) {
Toast.makeText(this, "Please write your email...", Toast.LENGTH_SHORT).show();
} else if (TextUtils.isEmpty(password)) {
Toast.makeText(this, "Please write your password...", Toast.LENGTH_SHORT).show();
} else if (TextUtils.isEmpty(confirmPassword)) {
Toast.makeText(this, "Please confirm your password...", Toast.LENGTH_SHORT).show();
} else if (!password.equals(confirmPassword)) {
Toast.makeText(this, "your password do not match with your confirm password...",
Toast.LENGTH_SHORT).show();
} else {
loadingBar.setTitle("Creating New Account");
loadingBar.setMessage("Please wait, while we are creating your new Account...");
loadingBar.show();
loadingBar.setCanceledOnTouchOutside(true);
mAuth.createUserWithEmailAndPassword(email, password)
.addOnCompleteListener(new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()) {
SendEmailVerificationMessage();
loadingBar.dismiss();
} else {
String message = task.getException().getMessage();
Toast.makeText(RegisterActivity.this, "Error Occured: " + message,
Toast.LENGTH_SHORT).show();
loadingBar.dismiss();
}
}
});
}
}
private void SendUserToLoginActivity() {
Intent loginIntent = new Intent(RegisterActivity.this, LoginActivity.class);
loginIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(loginIntent);
finish();
}
setup activity---java code
private EditText UserName, FullName, CountryName;
private Button SaveInformationbuttion;
private CircleImageView ProfileImage;
private ProgressDialog loadingBar;
private FirebaseAuth mAuth;
private DatabaseReference UsersRef;
private StorageReference UserProfileImageRef;
String currentUserID;
final static int Gallery_Pick = 1;

override

mAuth = FirebaseAuth.getInstance();
currentUserID = mAuth.getCurrentUser().getUid();
UsersRef = FirebaseDatabase.getInstance().getReference().child("Users").child(currentUserID);
UserProfileImageRef = FirebaseStorage.getInstance().getReference().child("Profile Images");
UserName = (EditText) findViewById(R.id.setup_username);
FullName = (EditText) findViewById(R.id.setup_full_name);
CountryName = (EditText) findViewById(R.id.setup_country_name);
SaveInformationbuttion = (Button) findViewById(R.id.setup_information_button);
ProfileImage = (CircleImageView) findViewById(R.id.setup_profile_image);
loadingBar = new ProgressDialog(this);
SaveInformationbuttion.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view)
{
SaveAccountSetupInformation();
}
});
ProfileImage.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view)
{
Intent galleryIntent = new Intent();
galleryIntent.setAction(Intent.ACTION_GET_CONTENT);
galleryIntent.setType("image/*");
startActivityForResult(galleryIntent, Gallery_Pick);
}
});
UsersRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot)
{
if(dataSnapshot.exists())
{
if (dataSnapshot.hasChild("profileimage"))
{
String image = dataSnapshot.child("profileimage").getValue().toString();
Picasso.get().load(image).placeholder(R.drawable.profile).into(ProfileImage);
}
else
{
Toast.makeText(SetupActivity.this, "Please select profile image first.",
Toast.LENGTH_SHORT).show();
}
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if(requestCode == Gallery_Pick && resultCode == RESULT_OK && data != null) {
Uri imageUri = data.getData();
CropImage.activity()
.setGuidelines(CropImageView.Guidelines.ON)
.setAspectRatio(1,1)
.start(this);
}
// Cuando se pulsa en el crop button
if(requestCode == CropImage.CROP_IMAGE_ACTIVITY_REQUEST_CODE)
{
CropImage.ActivityResult result = CropImage.getActivityResult(data);
if (resultCode == RESULT_OK) {
loadingBar.setTitle("Imagen de perfil");
loadingBar.setMessage("Por favor espera mientras actualizamos tu imagen de perfil...");
loadingBar.show();
loadingBar.setCanceledOnTouchOutside(true);
Uri resultUri = result.getUri();
StorageReference filePath = UserProfileImageRef.child(currentUserID + ".jpg");
filePath.putFile(resultUri).addOnCompleteListener(new
OnCompleteListener<UploadTask.TaskSnapshot>() {
@Override
public void onComplete(@NonNull Task<UploadTask.TaskSnapshot> task) {
if(task.isSuccessful()) {
Toast.makeText(SetupActivity.this, "Imagen de perfil almacenada exitosamente en
Firebase storage...", Toast.LENGTH_SHORT).show();
Task<Uri> result = task.getResult().getMetadata().getReference().getDownloadUrl();
result.addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
final String downloadUrl = uri.toString();
UsersRef.child("profileimage").setValue(downloadUrl)
.addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
Intent selfIntent = new
Intent(SetupActivity.this, SetupActivity.class);
startActivity(selfIntent);
Toast.makeText(SetupActivity.this, "Imagen
de perfil almacenada en Firebase Storage con éxito...", Toast.LENGTH_SHORT).show();
loadingBar.dismiss();
} else {
String message =
task.getException().getMessage();
Toast.makeText(SetupActivity.this, "Error:
" + message, Toast.LENGTH_SHORT).show();
loadingBar.dismiss();
}
}
});
}
});
}
}
});
}
else {
Toast.makeText(SetupActivity.this, "Error: La imagen no se ha cortado bien. Prueba otra vez.",
Toast.LENGTH_SHORT).show();
loadingBar.dismiss();
}
}
}
private void SaveAccountSetupInformation() {
String username = UserName.getText().toString();
String fullname = FullName.getText().toString();
String country = CountryName.getText().toString();
if(TextUtils.isEmpty(username))
{
Toast.makeText(this, "Please write your username...", Toast.LENGTH_SHORT).show();
}
if(TextUtils.isEmpty(fullname))
{
Toast.makeText(this, "Please write your full name...", Toast.LENGTH_SHORT).show();
}
if(TextUtils.isEmpty(country))
{
Toast.makeText(this, "Please write your country...", Toast.LENGTH_SHORT).show();
}
else
{
loadingBar.setTitle("Saving Information");
loadingBar.setMessage("Please wait, while we are creating your new Account...");
loadingBar.show();
loadingBar.setCanceledOnTouchOutside(true);
HashMap userMap = new HashMap();
userMap.put("username", username);
userMap.put("fullname", fullname);
userMap.put("country", country);
UsersRef.updateChildren(userMap).addOnCompleteListener(new OnCompleteListener() {
@Override
public void onComplete(@NonNull Task task)
{
if(task.isSuccessful())
{
SendUserToMainActivity();
Toast.makeText(SetupActivity.this, "your Account is created Successfully.",
Toast.LENGTH_LONG).show();
loadingBar.dismiss();
}
else
{
String message = task.getException().getMessage();
Toast.makeText(SetupActivity.this, "Error Occured: " + message,
Toast.LENGTH_SHORT).show();
loadingBar.dismiss();
}
}
});
}
}
private void SendUserToMainActivity() {
Intent mainIntent = new Intent(SetupActivity.this, MainActivity.class);
mainIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(mainIntent);
finish();
}

xml code---

<de.hdodenhof.circleimageview.CircleImageView
android:id="@+id/setup_profile_image"
android:layout_width="200dp"
android:layout_height="200dp"
android:layout_alignParentStart="true"
android:layout_centerHorizontal="true"
android:layout_alignParentTop="true"
android:layout_marginStart="79dp"
/>
<EditText
android:id="@+id/setup_username"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:ems="10"
android:inputType="text"
android:hint="UserName"
android:background="@drawable/input"
android:padding="14dp"
android:drawableLeft="@drawable/username"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<EditText
android:id="@+id/setup_full_name"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:layout_below="@+id/setup_username"
android:layout_marginTop="23dp"
android:ems="10"
android:inputType="text"
android:hint="Full Name"
android:background="@drawable/input"
android:padding="14dp"
android:drawableLeft="@drawable/name"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<EditText
android:id="@+id/setup_country_name"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:layout_below="@+id/setup_full_name"
android:layout_marginTop="27dp"
android:ems="10"
android:inputType="text"
android:hint="Country"
android:background="@drawable/input"
android:padding="14dp"
android:drawableLeft="@drawable/country"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Button
android:id="@+id/setup_information_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_below="@+id/setup_country_name"
android:background="@drawable/button"
android:padding="14dp"
android:layout_marginTop="34dp"
android:text="Save"/>

Reset Password --------XML


<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:weightSum="2"
android:layout_marginTop="50dp"
android:orientation="vertical">
<TextView
android:id="@+id/txtAppName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="80dp"
android:layout_marginRight="50dp"
android:layout_weight="1"
android:textStyle="bold"
android:gravity="center"
android:text="Jobs Per Hour "
android:textAlignment="center"
android:textColor="@android:color/white"
android:textSize="35sp" />
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_centerInParent="true"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="10dp">
<TextView
android:layout_marginBottom="20dp"
android:textColor="@color/colorPrimaryDark"
android:textStyle="bold"
android:textSize="15sp"
android:textAlignment="center"
android:text="Reset Password, Please write your email below"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<EditText
android:id="@+id/reset_Email"
android:textStyle="bold"
android:gravity="center"
android:background="@drawable/input"
android:textSize="17sp"
android:ems="7"
android:layout_centerHorizontal="true"
android:inputType="textEmailAddress"
android:hint="Write your Email here ..."
android:drawableLeft="@drawable/email"
android:textColor="@color/bluelight"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_alignParentBottom="true"
android:weightSum="2"
android:drawableLeft="@drawable/email"
android:layout_margin="8dp"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<info.hoang8f.widget.FButton
android:id="@+id/btnResetPassword"
android:text="Reset Password "
android:textColor="@android:color/white"
android:layout_weight="1"
android:layout_margin="8dp"
android:layout_width="0dp"
android:layout_height="wrap_content"
app:buttonColor="@color/colorPrimaryActive"
app:shadowColor="@android:color/black"
/>
<info.hoang8f.widget.FButton
android:id="@+id/btnResetCancel"
android:text="Cancel"
android:textColor="@android:color/white"
android:layout_weight="1"
android:layout_margin="8dp"
android:layout_width="0dp"
app:buttonColor="@color/colorPrimaryDark"
app:shadowColor="@android:color/black"
android:layout_height="wrap_content" />
</LinearLayout>

Java Code ---Reset


private FButton btnResetPassword, btnResetCancel;
private EditText reset_Email;
FirebaseAuth mAuth;

Override

mAuth = FirebaseAuth.getInstance();
btnResetCancel = (FButton) findViewById(R.id.btnResetCancel);
btnResetPassword = (FButton) findViewById(R.id.btnResetPassword);
reset_Email = (EditText)findViewById(R.id.reset_Email);
btnResetPassword.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final String userEmail = reset_Email.getText().toString();
if(TextUtils.isEmpty(userEmail)){
Toast.makeText(ResetPassword.this,"Please Write your Email
First...",Toast.LENGTH_SHORT).show();
}
else {
mAuth.sendPasswordResetEmail(userEmail).addOnCompleteListener(new OnCompleteListener<Void>()
{
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()){
Toast.makeText(ResetPassword.this,"Please Check Your Email Account, Your
will Shortly recieve an Email",Toast.LENGTH_SHORT).show();
startActivity(new Intent(ResetPassword.this,LoginActivity.class));
}
else {
String message = task.getException().getMessage();
Toast.makeText(ResetPassword.this,"ERRO: Email Doesn't Exist :
"+message,Toast.LENGTH_SHORT).show();
}
}
});
}
}
});
//Cancel Button Reset Activity
btnResetCancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent goBack = new Intent(ResetPassword.this, LoginActivity.class);
startActivity(goBack);
}
});
}

Login Activity

S-ar putea să vă placă și