From fd03834cdd8048711f84708d999226cd77918bae Mon Sep 17 00:00:00 2001 From: Wahaj Date: Sat, 27 Apr 2024 01:34:56 +0500 Subject: [PATCH 01/12] Authentication --- app/src/main/java/com/example/myapplication/Signup.java | 1 - 1 file changed, 1 deletion(-) diff --git a/app/src/main/java/com/example/myapplication/Signup.java b/app/src/main/java/com/example/myapplication/Signup.java index 19d6e8e..673b0f7 100644 --- a/app/src/main/java/com/example/myapplication/Signup.java +++ b/app/src/main/java/com/example/myapplication/Signup.java @@ -26,7 +26,6 @@ import com.google.firebase.auth.FirebaseUser; import com.google.firebase.firestore.auth.FirebaseAuthCredentialsProvider; - public class Signup extends AppCompatActivity { TextInputEditText editTextEmail, editTextPassword; From 2649fe8681eaeb0a3747f516dd1c558b31291443 Mon Sep 17 00:00:00 2001 From: Wahaj Date: Sat, 27 Apr 2024 15:41:26 +0500 Subject: [PATCH 02/12] Authentication --- .../java/com/example/myapplication/Login.java | 2 +- app/src/main/res/drawable/background1.png | Bin 0 -> 15458 bytes app/src/main/res/layout/activity_login.xml | 2 +- app/src/main/res/layout/activity_signup.xml | 2 +- app/src/main/res/values/strings.xml | 2 ++ 5 files changed, 5 insertions(+), 3 deletions(-) create mode 100644 app/src/main/res/drawable/background1.png diff --git a/app/src/main/java/com/example/myapplication/Login.java b/app/src/main/java/com/example/myapplication/Login.java index babb074..f2c3f7b 100644 --- a/app/src/main/java/com/example/myapplication/Login.java +++ b/app/src/main/java/com/example/myapplication/Login.java @@ -88,7 +88,7 @@ public void onComplete(@NonNull Task task) { progressbar.setVisibility(View.GONE); if (task.isSuccessful()) { // Sign in success, update UI with the signed-in user's information - Toast.makeText(getApplicationContext(),"login Successful ",Toast.LENGTH_SHORT).show(); + Toast.makeText(getApplicationContext(),"Login Successful ",Toast.LENGTH_SHORT).show(); Intent intent = new Intent(getApplicationContext(), MainActivity.class); startActivity(intent); finish(); diff --git a/app/src/main/res/drawable/background1.png b/app/src/main/res/drawable/background1.png new file mode 100644 index 0000000000000000000000000000000000000000..ea8723aa7d53e69e7750d2db9412e6762c4fdbf4 GIT binary patch literal 15458 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 literal 0 HcmV?d00001 diff --git a/app/src/main/res/layout/activity_login.xml b/app/src/main/res/layout/activity_login.xml index 754799d..fd969cb 100644 --- a/app/src/main/res/layout/activity_login.xml +++ b/app/src/main/res/layout/activity_login.xml @@ -55,7 +55,7 @@ android:gravity="center" android:layout_marginTop="20dp" android:id="@+id/signupNow" - android:text="@string/click_to_signup" + android:text="@string/create_new_account_signup" android:layout_width="match_parent" android:layout_height="wrap_content" /> diff --git a/app/src/main/res/layout/activity_signup.xml b/app/src/main/res/layout/activity_signup.xml index 8e4fd40..68e9fa3 100644 --- a/app/src/main/res/layout/activity_signup.xml +++ b/app/src/main/res/layout/activity_signup.xml @@ -56,7 +56,7 @@ android:gravity="center" android:layout_marginTop="20dp" android:id="@+id/loginNow" - android:text="@string/click_to_login" + android:text="@string/already_have_a_acoount_login" android:layout_width="match_parent" android:layout_height="wrap_content" /> diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 01c8892..2cc555a 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -9,4 +9,6 @@ Hi baby Logout Button + Create new account?Signup + Already have a acoount?Login \ No newline at end of file From 2d4af6b6f83cb180e15c73673173597e62af017a Mon Sep 17 00:00:00 2001 From: Wahaj Date: Sat, 27 Apr 2024 21:30:55 +0500 Subject: [PATCH 03/12] Add,Feedback --- app/src/main/AndroidManifest.xml | 6 + .../com/example/myapplication/AddDoctor.java | 71 +++++++ .../com/example/myapplication/Doctor.java | 64 ++++++ .../com/example/myapplication/Feedback.java | 77 +++++++ .../example/myapplication/MainActivity.java | 2 +- .../main/res/layout/activity_add_doctor.xml | 51 +++++ app/src/main/res/layout/activity_feedback.xml | 190 ++++++++++++++++++ app/src/main/res/layout/activity_login.xml | 3 +- app/src/main/res/values/strings.xml | 46 +++++ 9 files changed, 508 insertions(+), 2 deletions(-) create mode 100644 app/src/main/java/com/example/myapplication/AddDoctor.java create mode 100644 app/src/main/java/com/example/myapplication/Doctor.java create mode 100644 app/src/main/java/com/example/myapplication/Feedback.java create mode 100644 app/src/main/res/layout/activity_add_doctor.xml create mode 100644 app/src/main/res/layout/activity_feedback.xml diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 1c1a538..180a545 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -14,6 +14,12 @@ android:supportsRtl="true" android:theme="@style/Theme.MyApplication" tools:targetApi="31"> + + diff --git a/app/src/main/java/com/example/myapplication/AddDoctor.java b/app/src/main/java/com/example/myapplication/AddDoctor.java new file mode 100644 index 0000000..d7e39d2 --- /dev/null +++ b/app/src/main/java/com/example/myapplication/AddDoctor.java @@ -0,0 +1,71 @@ +package com.example.myapplication; + +import android.os.Bundle; +import android.view.View; +import android.widget.Button; +import android.widget.EditText; +import android.widget.Toast; +import androidx.appcompat.app.AppCompatActivity; +import com.google.firebase.firestore.FirebaseFirestore; + +public class AddDoctor extends AppCompatActivity +{ + private EditText etDoctorName, etDoctorEmail, etDoctorPhone, etDoctorQualification, etDoctorExperience; + private Button btnAddDoctor; + private FirebaseFirestore db; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_add_doctor); + + // Initialize Firebase Firestore + db = FirebaseFirestore.getInstance(); + + // Initialize Views + etDoctorName = findViewById(R.id.et_doctor_name); + etDoctorEmail = findViewById(R.id.et_doctor_email); + etDoctorPhone = findViewById(R.id.et_doctor_phone); + etDoctorQualification = findViewById(R.id.et_doctor_qualification); + etDoctorExperience = findViewById(R.id.et_doctor_experience); + btnAddDoctor = findViewById(R.id.btn_add_doctor); + + // Add Doctor Button Click Listener + btnAddDoctor.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + // Get doctor details from EditText fields + String name = etDoctorName.getText().toString().trim(); + String email = etDoctorEmail.getText().toString().trim(); + String phone = etDoctorPhone.getText().toString().trim(); + String qualification = etDoctorQualification.getText().toString().trim(); + String experience = etDoctorExperience.getText().toString().trim(); + + // Check if any field is empty + if (name.isEmpty() || email.isEmpty() || phone.isEmpty() || qualification.isEmpty() || experience.isEmpty()) { + Toast.makeText(AddDoctor.this, "Please fill in all fields", Toast.LENGTH_SHORT).show(); + return; + } + + // Create a Doctor object + Doctor doctor = new Doctor(name, email, phone, qualification, experience); + + // Add doctor to Firestore + addDoctorToFirestore(doctor); + } + }); + } + + private void addDoctorToFirestore(Doctor doctor) { + // Add a new document with a generated ID to the "doctors" collection + db.collection("doctors") + .add(doctor) + .addOnSuccessListener(documentReference -> { + Toast.makeText(AddDoctor.this, "Doctor added successfully", Toast.LENGTH_SHORT).show(); + finish(); // Finish activity after adding doctor + }) + .addOnFailureListener(e -> { + Toast.makeText(AddDoctor.this, "Error adding doctor: " + e.getMessage(), Toast.LENGTH_SHORT).show(); + }); + } +} diff --git a/app/src/main/java/com/example/myapplication/Doctor.java b/app/src/main/java/com/example/myapplication/Doctor.java new file mode 100644 index 0000000..6e33f99 --- /dev/null +++ b/app/src/main/java/com/example/myapplication/Doctor.java @@ -0,0 +1,64 @@ +package com.example.myapplication; + + + +public class Doctor { + private String name; + private String email; + private String phone; + private String qualification; + private String experience; + + public Doctor() { + // Default constructor required for Firestore + } + + public Doctor(String name, String email, String phone, String qualification, String experience) { + this.name = name; + this.email = email; + this.phone = phone; + this.qualification = qualification; + this.experience = experience; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getEmail() { + return email; + } + + public void setEmail(String email) { + this.email = email; + } + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + + public String getQualification() { + return qualification; + } + + public void setQualification(String qualification) { + this.qualification = qualification; + } + + public String getExperience() { + return experience; + } + + public void setExperience(String experience) { + this.experience = experience; + } +} + diff --git a/app/src/main/java/com/example/myapplication/Feedback.java b/app/src/main/java/com/example/myapplication/Feedback.java new file mode 100644 index 0000000..36b2e44 --- /dev/null +++ b/app/src/main/java/com/example/myapplication/Feedback.java @@ -0,0 +1,77 @@ +package com.example.myapplication; + +import android.os.Bundle; +import android.view.View; +import android.widget.Button; +import android.widget.EditText; +import android.widget.RadioButton; +import android.widget.RadioGroup; +import android.widget.Toast; + +import androidx.appcompat.app.AppCompatActivity; + +public class Feedback extends AppCompatActivity { + + private RadioGroup radioGroup1, radioGroup5, radioGroup3, radioGroup4; + private EditText additionalCommentsInput; + private Button submitFeedbackButton; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_feedback); + + // Initialize Views + radioGroup1 = findViewById(R.id.radio_group1); + radioGroup5 = findViewById(R.id.radio_group5); + radioGroup3 = findViewById(R.id.radio_group3); + radioGroup4 = findViewById(R.id.radio_group4); + additionalCommentsInput = findViewById(R.id.additional_comments_input); + submitFeedbackButton = findViewById(R.id.submit_feedback_button); + + // Submit Feedback Button Click Listener + submitFeedbackButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + // Get selected options from RadioGroups + int selectedOption1Id = radioGroup1.getCheckedRadioButtonId(); + int selectedOption5Id = radioGroup5.getCheckedRadioButtonId(); + int selectedOption3Id = radioGroup3.getCheckedRadioButtonId(); + int selectedOption4Id = radioGroup4.getCheckedRadioButtonId(); + + // Check if any option is not selected + if (selectedOption1Id == -1 || selectedOption5Id == -1 || selectedOption3Id == -1 || selectedOption4Id == -1) { + Toast.makeText(Feedback.this, "Please answer all questions", Toast.LENGTH_SHORT).show(); + return; + } + + // Get selected option text + RadioButton selectedOption1 = findViewById(selectedOption1Id); + RadioButton selectedOption5 = findViewById(selectedOption5Id); + RadioButton selectedOption3 = findViewById(selectedOption3Id); + RadioButton selectedOption4 = findViewById(selectedOption4Id); + String option1Text = selectedOption1.getText().toString(); + String option5Text = selectedOption5.getText().toString(); + String option3Text = selectedOption3.getText().toString(); + String option4Text = selectedOption4.getText().toString(); + + // Get additional comments + String additionalComments = additionalCommentsInput.getText().toString(); + + // Display feedback details + displayFeedbackDetails(option1Text, option5Text, option3Text, option4Text, additionalComments); + } + }); + } + + private void displayFeedbackDetails(String option1Text, String option5Text, String option3Text, String option4Text, String additionalComments) { + // Display feedback details (you can replace this with your desired action) + String feedbackDetails = "Question 1: " + option1Text + "\n" + + "Question 5: " + option5Text + "\n" + + "Question 3: " + option3Text + "\n" + + "Question 4: " + option4Text + "\n" + + "Additional Comments: " + additionalComments; + + Toast.makeText(this, feedbackDetails, Toast.LENGTH_LONG).show(); + } +} diff --git a/app/src/main/java/com/example/myapplication/MainActivity.java b/app/src/main/java/com/example/myapplication/MainActivity.java index 19023b2..78b2e1c 100644 --- a/app/src/main/java/com/example/myapplication/MainActivity.java +++ b/app/src/main/java/com/example/myapplication/MainActivity.java @@ -62,7 +62,7 @@ protected void onCreate(Bundle savedInstanceState){ @Override public void onClick(View v) { FirebaseAuth.getInstance().signOut(); - Intent intent =new Intent(getApplicationContext(),Login.class); + Intent intent =new Intent(getApplicationContext(),Feedback.class); startActivity(intent); finish(); } diff --git a/app/src/main/res/layout/activity_add_doctor.xml b/app/src/main/res/layout/activity_add_doctor.xml new file mode 100644 index 0000000..556ffe1 --- /dev/null +++ b/app/src/main/res/layout/activity_add_doctor.xml @@ -0,0 +1,51 @@ + + + + + + + + + + + + + +