Skip to content

Commit 24816e3

Browse files
committed
Added Auth and Checks for auth
1 parent a80cbad commit 24816e3

File tree

9 files changed

+110
-7
lines changed

9 files changed

+110
-7
lines changed

app/src/main/java/dev/redfox/planetpulse/GetStartedActivity.kt

+14-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package dev.redfox.planetpulse
22

33
import android.annotation.SuppressLint
4+
import android.content.Context
45
import android.content.Intent
56
import android.graphics.Color
67
import android.net.Uri
@@ -38,8 +39,19 @@ class GetStartedActivity : AppCompatActivity() {
3839
}
3940

4041
binding.btnGetStarted.setOnClickListener {
41-
val intent = Intent(this, LoginActivity::class.java)
42-
startActivity(intent)
42+
43+
val sharedPreference =
44+
getSharedPreferences("LOGIN", Context.MODE_PRIVATE)
45+
val checkLogin: Boolean = sharedPreference.getBoolean("hasLoggedIn",false)
46+
47+
if(checkLogin == true){
48+
val intent = Intent(this, QuestionsActivity::class.java)
49+
startActivity(intent)
50+
} else {
51+
val intent = Intent(this, LoginActivity::class.java)
52+
startActivity(intent)
53+
}
54+
4355
}
4456
}
4557

app/src/main/java/dev/redfox/planetpulse/auth/SignUpActivity.kt

+8-3
Original file line numberDiff line numberDiff line change
@@ -66,14 +66,19 @@ class SignUpActivity : AppCompatActivity() {
6666
firebaseAuth.createUserWithEmailAndPassword(email, pass)
6767
.addOnSuccessListener {
6868

69-
database = FirebaseDatabase.getInstance().getReference("employees")
69+
database = FirebaseDatabase.getInstance().getReference("users")
7070

7171
database.child(EncodeString(email).toString()).child("Name").setValue(name)
7272
database.child(EncodeString(email).toString()).child("Email")
7373
.setValue(EncodeString(email).toString())
7474

75-
// binding.etEmail.text?.clear()
76-
// binding.etName.text?.clear()
75+
database.child(EncodeString(email).toString()).child("Questions").child("q1").setValue(0)
76+
database.child(EncodeString(email).toString()).child("Questions").child("q2").setValue(0)
77+
database.child(EncodeString(email).toString()).child("Questions").child("q3").setValue(0)
78+
database.child(EncodeString(email).toString()).child("Questions").child("q4").setValue(0)
79+
database.child(EncodeString(email).toString()).child("Questions").child("q5").setValue(0)
80+
81+
7782

7883
Toast.makeText(this, "Success", Toast.LENGTH_SHORT).show()
7984

app/src/main/java/dev/redfox/planetpulse/ui/question/Step1Fragment.kt

+16
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,15 @@
11
package dev.redfox.planetpulse.ui.question
22

3+
import android.content.Context
34
import android.os.Build
45
import android.os.Bundle
56
import androidx.fragment.app.Fragment
67
import android.view.LayoutInflater
78
import android.view.View
89
import android.view.ViewGroup
910
import androidx.navigation.fragment.findNavController
11+
import com.google.firebase.database.DatabaseReference
12+
import com.google.firebase.database.FirebaseDatabase
1013
import dev.redfox.planetpulse.R
1114
import dev.redfox.planetpulse.databinding.FragmentDashboardBinding
1215
import dev.redfox.planetpulse.databinding.FragmentStep1Binding
@@ -16,13 +19,22 @@ class Step1Fragment : Fragment() {
1619

1720
private var _binding: FragmentStep1Binding? = null
1821
private val binding get() = _binding!!
22+
private lateinit var database: DatabaseReference
1923
override fun onCreateView(
2024
inflater: LayoutInflater, container: ViewGroup?,
2125
savedInstanceState: Bundle?
2226
): View? {
2327
// Inflate the layout for this fragment
2428
_binding = FragmentStep1Binding.inflate(inflater, container, false)
2529

30+
val firebaseDatabase: FirebaseDatabase
31+
firebaseDatabase = FirebaseDatabase.getInstance();
32+
33+
val sharedPreference = activity?.getSharedPreferences("EMAIL", Context.MODE_PRIVATE)
34+
val email = sharedPreference?.getString("email", null)
35+
36+
database = firebaseDatabase.getReference("employees").child(EncodeString(email!!).toString())
37+
2638
binding.btnForward1.setOnClickListener {
2739
findNavController().navigate(R.id.action_step1Fragment_to_step2Fragment)
2840
}
@@ -31,4 +43,8 @@ class Step1Fragment : Fragment() {
3143
return binding.root
3244
}
3345

46+
fun EncodeString(string: String): String? {
47+
return string.replace(".", ",")
48+
}
49+
3450
}

app/src/main/java/dev/redfox/planetpulse/ui/question/Step2Fragment.kt

+17
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,14 @@
11
package dev.redfox.planetpulse.ui.question
22

3+
import android.content.Context
34
import android.os.Bundle
45
import androidx.fragment.app.Fragment
56
import android.view.LayoutInflater
67
import android.view.View
78
import android.view.ViewGroup
89
import androidx.navigation.fragment.findNavController
10+
import com.google.firebase.database.DatabaseReference
11+
import com.google.firebase.database.FirebaseDatabase
912
import dev.redfox.planetpulse.R
1013
import dev.redfox.planetpulse.databinding.FragmentStep1Binding
1114
import dev.redfox.planetpulse.databinding.FragmentStep2Binding
@@ -15,18 +18,32 @@ class Step2Fragment : Fragment() {
1518

1619
private var _binding: FragmentStep2Binding? = null
1720
private val binding get() = _binding!!
21+
private lateinit var database: DatabaseReference
1822
override fun onCreateView(
1923
inflater: LayoutInflater, container: ViewGroup?,
2024
savedInstanceState: Bundle?
2125
): View? {
2226
// Inflate the layout for this fragment
2327
_binding = FragmentStep2Binding.inflate(inflater, container, false)
2428

29+
val firebaseDatabase: FirebaseDatabase
30+
firebaseDatabase = FirebaseDatabase.getInstance();
31+
32+
val sharedPreference = activity?.getSharedPreferences("EMAIL", Context.MODE_PRIVATE)
33+
val email = sharedPreference?.getString("email", null)
34+
35+
database =
36+
firebaseDatabase.getReference("employees").child(EncodeString(email!!).toString())
37+
2538
binding.btnForward2.setOnClickListener {
2639
findNavController().navigate(R.id.action_step2Fragment_to_step3Fragment)
2740
}
2841
return binding.root
2942
}
3043

44+
fun EncodeString(string: String): String? {
45+
return string.replace(".", ",")
46+
}
47+
3148

3249
}

app/src/main/java/dev/redfox/planetpulse/ui/question/Step3Fragment.kt

+17
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,14 @@
11
package dev.redfox.planetpulse.ui.question
22

3+
import android.content.Context
34
import android.os.Bundle
45
import androidx.fragment.app.Fragment
56
import android.view.LayoutInflater
67
import android.view.View
78
import android.view.ViewGroup
89
import androidx.navigation.fragment.findNavController
10+
import com.google.firebase.database.DatabaseReference
11+
import com.google.firebase.database.FirebaseDatabase
912
import dev.redfox.planetpulse.R
1013
import dev.redfox.planetpulse.databinding.FragmentStep1Binding
1114
import dev.redfox.planetpulse.databinding.FragmentStep3Binding
@@ -15,18 +18,32 @@ class Step3Fragment : Fragment() {
1518

1619
private var _binding: FragmentStep3Binding? = null
1720
private val binding get() = _binding!!
21+
private lateinit var database: DatabaseReference
1822
override fun onCreateView(
1923
inflater: LayoutInflater, container: ViewGroup?,
2024
savedInstanceState: Bundle?
2125
): View? {
2226
// Inflate the layout for this fragment
2327
_binding = FragmentStep3Binding.inflate(inflater, container, false)
28+
29+
val firebaseDatabase: FirebaseDatabase
30+
firebaseDatabase = FirebaseDatabase.getInstance();
31+
32+
val sharedPreference = activity?.getSharedPreferences("EMAIL", Context.MODE_PRIVATE)
33+
val email = sharedPreference?.getString("email", null)
34+
35+
database =
36+
firebaseDatabase.getReference("employees").child(EncodeString(email!!).toString())
37+
2438
binding.btnForward3.setOnClickListener {
2539
findNavController().navigate(R.id.action_step3Fragment_to_step4Fragment)
2640
}
2741

2842
return binding.root
2943
}
3044

45+
fun EncodeString(string: String): String? {
46+
return string.replace(".", ",")
47+
}
3148

3249
}

app/src/main/java/dev/redfox/planetpulse/ui/question/Step4Fragment.kt

+16
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,14 @@
11
package dev.redfox.planetpulse.ui.question
22

3+
import android.content.Context
34
import android.os.Bundle
45
import androidx.fragment.app.Fragment
56
import android.view.LayoutInflater
67
import android.view.View
78
import android.view.ViewGroup
89
import androidx.navigation.fragment.findNavController
10+
import com.google.firebase.database.DatabaseReference
11+
import com.google.firebase.database.FirebaseDatabase
912
import dev.redfox.planetpulse.R
1013
import dev.redfox.planetpulse.databinding.FragmentStep1Binding
1114
import dev.redfox.planetpulse.databinding.FragmentStep4Binding
@@ -16,18 +19,31 @@ class Step4Fragment : Fragment() {
1619

1720
private var _binding: FragmentStep4Binding? = null
1821
private val binding get() = _binding!!
22+
private lateinit var database: DatabaseReference
1923
override fun onCreateView(
2024
inflater: LayoutInflater, container: ViewGroup?,
2125
savedInstanceState: Bundle?
2226
): View? {
2327
// Inflate the layout for this fragment
2428
_binding = FragmentStep4Binding.inflate(inflater, container, false)
2529

30+
val firebaseDatabase: FirebaseDatabase
31+
firebaseDatabase = FirebaseDatabase.getInstance();
32+
33+
val sharedPreference = activity?.getSharedPreferences("EMAIL", Context.MODE_PRIVATE)
34+
val email = sharedPreference?.getString("email", null)
35+
36+
database =
37+
firebaseDatabase.getReference("employees").child(EncodeString(email!!).toString())
38+
2639
binding.btnForward4.setOnClickListener {
2740
findNavController().navigate(R.id.action_step4Fragment_to_step5Fragment)
2841
}
2942
return binding.root
3043
}
3144

45+
fun EncodeString(string: String): String? {
46+
return string.replace(".", ",")
47+
}
3248

3349
}

app/src/main/java/dev/redfox/planetpulse/ui/question/Step5Fragment.kt

+17
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,14 @@
11
package dev.redfox.planetpulse.ui.question
22

3+
import android.content.Context
34
import android.content.Intent
45
import android.os.Bundle
56
import androidx.fragment.app.Fragment
67
import android.view.LayoutInflater
78
import android.view.View
89
import android.view.ViewGroup
10+
import com.google.firebase.database.DatabaseReference
11+
import com.google.firebase.database.FirebaseDatabase
912
import dev.redfox.planetpulse.MainActivity
1013
import dev.redfox.planetpulse.R
1114
import dev.redfox.planetpulse.databinding.FragmentStep1Binding
@@ -17,19 +20,33 @@ class Step5Fragment : Fragment() {
1720

1821
private var _binding: FragmentStep5Binding? = null
1922
private val binding get() = _binding!!
23+
private lateinit var database: DatabaseReference
2024
override fun onCreateView(
2125
inflater: LayoutInflater, container: ViewGroup?,
2226
savedInstanceState: Bundle?
2327
): View? {
2428
// Inflate the layout for this fragment
2529
_binding = FragmentStep5Binding.inflate(inflater, container, false)
2630

31+
val firebaseDatabase: FirebaseDatabase
32+
firebaseDatabase = FirebaseDatabase.getInstance();
33+
34+
val sharedPreference = activity?.getSharedPreferences("EMAIL", Context.MODE_PRIVATE)
35+
val email = sharedPreference?.getString("email", null)
36+
37+
database =
38+
firebaseDatabase.getReference("employees").child(EncodeString(email!!).toString())
39+
2740
binding.btnForward5.setOnClickListener {
2841
val intent = Intent(requireContext(), MainActivity::class.java)
2942
startActivity(intent)
3043
}
3144
return binding.root
3245
}
3346

47+
fun EncodeString(string: String): String? {
48+
return string.replace(".", ",")
49+
}
50+
3451

3552
}

app/src/main/res/layout/activity_login.xml

+2-2
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,8 @@
3838
android:layout_height="wrap_content"
3939
android:layout_marginHorizontal="16dp"
4040
android:layout_marginTop="24dp"
41-
app:boxStrokeColor="@color/yellow"
42-
app:hintTextColor="@color/yellow"
41+
app:boxStrokeColor="@color/material_green"
42+
app:hintTextColor="@color/material_green"
4343
app:layout_constraintEnd_toEndOf="parent"
4444
app:layout_constraintHorizontal_bias="0.5"
4545
app:layout_constraintStart_toStartOf="parent"

app/src/main/res/layout/fragment_gpt.xml

+3
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,12 @@
1616
android:layout_width="0dp"
1717
android:layout_height="wrap_content"
1818
android:layout_marginBottom="120dp"
19+
app:hintTextColor="@color/white"
1920
app:boxCornerRadiusBottomEnd="30dp"
2021
android:layout_marginHorizontal="10dp"
2122
app:boxCornerRadiusBottomStart="30dp"
2223
app:boxCornerRadiusTopEnd="30dp"
24+
app:boxStrokeColor="@color/material_yellow"
2325
app:boxCornerRadiusTopStart="30dp"
2426
app:layout_constraintBottom_toBottomOf="parent"
2527
app:layout_constraintEnd_toStartOf="@id/btnSend"
@@ -32,6 +34,7 @@
3234
android:layout_width="match_parent"
3335
android:textColor="@color/white"
3436
android:layout_height="wrap_content"
37+
android:textColorHint="@color/white"
3538
style="@style/ThemeOverlay.Material3.TextInputEditText.FilledBox.Dense"
3639
android:fontFamily="@font/sofiaprosoftmedium"
3740
android:hint="eg: Hi, I am you assistant.">

0 commit comments

Comments
 (0)