Skip to content
Snippets Groups Projects
Commit cafee6eb authored by Altair1618's avatar Altair1618
Browse files

feat: implement email and nim getter in activity

parent cf89d95c
Branches
Tags
1 merge request!46Dev
......@@ -13,6 +13,8 @@ class ExpiryBroadcastReceiver : BroadcastReceiver() {
) {
if (intent?.action == "com.example.bondoman.services.LOGOUT_TIMEOUT") {
PreferencesManager.remove(context!!, "token", true)
PreferencesManager.remove(context, "nim", true)
PreferencesManager.remove(context, "email", true)
val newIntent = Intent(context, LoginActivity::class.java)
newIntent.flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK
......
......@@ -86,7 +86,11 @@ class LoginActivity : AppCompatActivity() {
} else {
startTimerService(expiryDuration)
val nim = email.substringBefore("@")
PreferencesManager.putString(this, "token", response.token ?: "", true)
PreferencesManager.putString(this, "nim", nim, true)
PreferencesManager.putString(this, "email", email, true)
val intent = Intent(this, MainActivity::class.java)
startActivity(intent)
finish()
......@@ -116,6 +120,8 @@ class LoginActivity : AppCompatActivity() {
if (response.error != null) {
Log.e("LoginActivity", response.error)
PreferencesManager.remove(this, "token", true)
PreferencesManager.remove(this, "nim", true)
PreferencesManager.remove(this, "email", true)
viewModel.resetTokenResponse()
return@Observer
}
......@@ -124,6 +130,8 @@ class LoginActivity : AppCompatActivity() {
if (response.exp != null && response.exp < currentTime) {
Log.i("LoginActivity", "Token expired")
PreferencesManager.remove(this, "token", true)
PreferencesManager.remove(this, "nim", true)
PreferencesManager.remove(this, "email", true)
viewModel.resetTokenResponse()
return@Observer
}
......
......@@ -26,6 +26,7 @@ import androidx.navigation.fragment.NavHostFragment
import androidx.navigation.ui.setupWithNavController
import com.example.bondoman.MainApplication
import com.example.bondoman.R
import com.example.bondoman.data.utils.PreferencesManager
import com.example.bondoman.data.viewmodels.transaction.TransactionViewModel
import com.example.bondoman.data.viewmodels.transaction.TransactionViewModelFactory
import com.example.bondoman.databinding.ActivityMainBinding
......@@ -179,6 +180,14 @@ class MainActivity : AppCompatActivity(), ParentActivityService {
).show()
}
override fun getEmail(): String {
return PreferencesManager.getString(this, "email") ?: ""
}
override fun getNIM(): String {
return PreferencesManager.getString(this, "nim") ?: ""
}
private fun initializeComponents() {
mainLayout = binding.main
backButton = binding.backButton
......
......@@ -151,6 +151,8 @@ class SettingsFragment : Fragment() {
private fun onLogoutButtonClick() {
PreferencesManager.remove(requireActivity(), "token", true)
PreferencesManager.remove(requireActivity(), "nim", true)
PreferencesManager.remove(requireActivity(), "email", true)
val serviceIntent = Intent(requireActivity(), ExpiryService::class.java)
requireActivity().stopService(serviceIntent)
......
......@@ -49,4 +49,8 @@ interface ParentActivityService {
message: String,
duration: Int,
)
fun getEmail(): String
fun getNIM(): String
}
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment