From 13f46ab27579cd6539d440e2ffb3885441c78546 Mon Sep 17 00:00:00 2001
From: arieljovananda88 <jovanandaa@gmail.com>
Date: Wed, 3 Apr 2024 23:38:37 +0700
Subject: [PATCH] feat: store email in shared preference

---
 .../main/java/com/example/bondoman/LoginActivity.kt |  1 +
 .../main/java/com/example/bondoman/MainActivity.kt  | 13 +++++++++++--
 .../example/bondoman/services/RetrofitInstance.kt   |  1 -
 .../com/example/bondoman/ui/login/LoginFragment.kt  |  2 ++
 4 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/app/src/main/java/com/example/bondoman/LoginActivity.kt b/app/src/main/java/com/example/bondoman/LoginActivity.kt
index 0b07382..3d1ac63 100644
--- a/app/src/main/java/com/example/bondoman/LoginActivity.kt
+++ b/app/src/main/java/com/example/bondoman/LoginActivity.kt
@@ -32,6 +32,7 @@ class LoginActivity : AppCompatActivity() {
     private fun replaceFragment(fragment: Fragment){
         val fragmentManager = supportFragmentManager
         val fragmentTransaction = fragmentManager.beginTransaction()
+        fragmentTransaction.setCustomAnimations(android.R.anim.fade_in, android.R.anim.fade_out)
         fragmentTransaction.replace(R.id.login_layout,fragment)
         fragmentTransaction.commit()
     }
diff --git a/app/src/main/java/com/example/bondoman/MainActivity.kt b/app/src/main/java/com/example/bondoman/MainActivity.kt
index 5acc399..3fdd64c 100644
--- a/app/src/main/java/com/example/bondoman/MainActivity.kt
+++ b/app/src/main/java/com/example/bondoman/MainActivity.kt
@@ -132,12 +132,14 @@ class MainActivity : AppCompatActivity() {
                 try {
                     val response = service.checkToken()
                     if (response.isSuccessful) {
-                       println(response)
+                       println("token still valid")
                     } else {
+                        clearToken()
                         withContext(Dispatchers.Main) {
                             Toast.makeText(context, "Your Session Has Expired", Toast.LENGTH_LONG).show()
                         }
-                        startActivity(Intent(this@MainActivity, LoginActivity::class.java))
+
+                        startActivity(Intent(context, LoginActivity::class.java))
                         finish()
                     }
                 } catch (e: HttpException) {
@@ -148,6 +150,13 @@ class MainActivity : AppCompatActivity() {
             }
         }
 
+
+    private fun clearToken() {
+        val sharedPreferences = getSharedPreferences("BondoMan", Context.MODE_PRIVATE)
+        val editor = sharedPreferences.edit()
+        editor.clear().apply()
+    }
+
     private fun isNetworkConnected(context: Context): Boolean {
         val connectivityManager = context.getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager
         val network = connectivityManager.activeNetwork ?: return false
diff --git a/app/src/main/java/com/example/bondoman/services/RetrofitInstance.kt b/app/src/main/java/com/example/bondoman/services/RetrofitInstance.kt
index f7abcc7..48f1e06 100644
--- a/app/src/main/java/com/example/bondoman/services/RetrofitInstance.kt
+++ b/app/src/main/java/com/example/bondoman/services/RetrofitInstance.kt
@@ -24,7 +24,6 @@ object RetrofitClient {
                 val originalRequest: Request = chain.request()
                 val requestBuilder: Request.Builder = originalRequest.newBuilder()
                 if (!authToken.isNullOrEmpty()) {
-                    println(authToken)
                     requestBuilder.header("Authorization", "Bearer $authToken") // Add authorization header here
                 }
                 val request: Request = requestBuilder.build()
diff --git a/app/src/main/java/com/example/bondoman/ui/login/LoginFragment.kt b/app/src/main/java/com/example/bondoman/ui/login/LoginFragment.kt
index 994ad27..bd759b9 100644
--- a/app/src/main/java/com/example/bondoman/ui/login/LoginFragment.kt
+++ b/app/src/main/java/com/example/bondoman/ui/login/LoginFragment.kt
@@ -17,6 +17,7 @@ import kotlinx.coroutines.CoroutineScope
 import kotlinx.coroutines.withContext
 import retrofit2.HttpException
 import android.content.Context
+import android.content.SharedPreferences
 import android.net.ConnectivityManager
 import android.net.NetworkCapabilities
 import android.widget.Toast
@@ -88,6 +89,7 @@ class LoginFragment : Fragment() {
                                 )
                                 val editor = sharedPreferences.edit()
                                 editor.putString("token", token)
+                                editor.putString("email", email)
                                 editor.apply()
                                 startActivity(Intent(activity, MainActivity::class.java))
                                 activity?.finish()
-- 
GitLab