diff --git a/app/src/main/java/com/example/bondoman/data/viewmodels/login/LoginViewModel.kt b/app/src/main/java/com/example/bondoman/data/viewmodels/login/LoginViewModel.kt
index da76b3a200d16f62db669983a9eca125d305e5bb..fcd1b31499e2fb7ba30ccb6324ef496cf6dd88a0 100644
--- a/app/src/main/java/com/example/bondoman/data/viewmodels/login/LoginViewModel.kt
+++ b/app/src/main/java/com/example/bondoman/data/viewmodels/login/LoginViewModel.kt
@@ -13,12 +13,10 @@ import kotlinx.coroutines.launch
 
 class LoginViewModel : ViewModel() {
 	private val _loginResponse = MutableLiveData<LoginResponse?>()
-	val loginResponse: LiveData<LoginResponse?>
-		get() = _loginResponse
+	val loginResponse: LiveData<LoginResponse?> = _loginResponse
 
 	private val _tokenResponse = MutableLiveData<TokenResponse?>()
-	val tokenResponse: LiveData<TokenResponse?>
-		get() = _tokenResponse
+	val tokenResponse: LiveData<TokenResponse?> = _tokenResponse
 
 	fun login(
 		email: String,
diff --git a/app/src/main/java/com/example/bondoman/views/activities/LoginActivity.kt b/app/src/main/java/com/example/bondoman/views/activities/LoginActivity.kt
index 2a8a42c93df285aa1f429ca979cad80e507a75dd..fe3ff0c975d81a001a07c34a0417ead3fe7afae2 100644
--- a/app/src/main/java/com/example/bondoman/views/activities/LoginActivity.kt
+++ b/app/src/main/java/com/example/bondoman/views/activities/LoginActivity.kt
@@ -145,6 +145,19 @@ class LoginActivity : AppCompatActivity() {
 					return@Observer
 				}
 
+				val nim: String = response.nim!!
+
+				PreferencesManager.putString(this, "token", token, true)
+				PreferencesManager.putString(this, "nim", nim, true)
+				PreferencesManager.putString(this, "email", "${nim}@std.stei.itb.ac.id", true)
+
+				// Start ExpiryService
+				val serviceIntent = Intent(this, ExpiryService::class.java).apply {
+					putExtra("timeout", expiryDuration)
+				}
+				stopService(serviceIntent)
+				startService(serviceIntent)
+
 				val intent = Intent(this, MainActivity::class.java)
 				startActivity(intent)
 				finish()