diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 0dc3c64d39fe102cd721999653e53cfb0b2f0f96..2f28c6f3de5bd9004c530e4214bc9e7e4d6c05e0 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -91,6 +91,8 @@ dependencies {
     api("org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutine")
     api("org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutine")
 
+    implementation("com.github.PhilJay:MPAndroidChart:v3.1.0")
+
     // UI
     implementation("androidx.constraintlayout:constraintlayout:$rootProject.constraintLayoutVersion")
     implementation("com.google.android.material:material:$rootProject.materialVersion")
@@ -118,8 +120,6 @@ dependencies {
     implementation("com.google.android.gms:play-services-maps:18.2.0")
 
 
-
-
     //okHttp
     implementation("com.squareup.okhttp3:okhttp:4.12.0")
     implementation ("com.squareup.moshi:moshi:1.12.0")
diff --git a/app/src/main/java/com/example/pbd_jwr/MainActivity.kt b/app/src/main/java/com/example/pbd_jwr/MainActivity.kt
index a1fe06724a23b6bbd0b61a1aca05b97ccdd42294..d6f63f836bca279b93e90bfb9404a03bf4bd1c57 100644
--- a/app/src/main/java/com/example/pbd_jwr/MainActivity.kt
+++ b/app/src/main/java/com/example/pbd_jwr/MainActivity.kt
@@ -23,6 +23,7 @@ import androidx.navigation.ui.setupActionBarWithNavController
 import androidx.navigation.ui.setupWithNavController
 import com.example.pbd_jwr.backgroundService.JWTValidationService
 import com.example.pbd_jwr.data.entity.Transaction
+import com.example.pbd_jwr.data.model.Category
 import com.example.pbd_jwr.databinding.ActivityMainBinding
 import com.example.pbd_jwr.encryptedSharedPref.EncryptedSharedPref
 import com.example.pbd_jwr.network.NetworkCallbackImplementation
@@ -192,6 +193,10 @@ class MainActivity : AppCompatActivity() {
 
     private val startScanActivityForResult = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result ->
         if (result.resultCode == Activity.RESULT_OK) {
+
+            sharedPreferences = EncryptedSharedPref.create(applicationContext, "login")
+            val currentUserEmail = sharedPreferences.getString("email", "") ?: ""
+
             val data = result.data
             val transactionDummyData = data?.getStringExtra("transactionDummyData")
 
@@ -203,7 +208,7 @@ class MainActivity : AppCompatActivity() {
                 for (i in 0 until itemsArray.length()) {
                     val itemObject = itemsArray.getJSONObject(i)
                     val name = itemObject.getString("name")
-                    val category = "expense"
+                    val category = Category.EXPENSE
                     val price = itemObject.getDouble("price")
                     val qty = itemObject.getInt("qty")
                     val amount = (qty * price * 1000).roundToInt() / 1000.0
@@ -212,7 +217,7 @@ class MainActivity : AppCompatActivity() {
                     val location = "Latitude: $latitude, Longitude: $longitude"
                     val date = Date().time
 
-                    mTransactionViewModel.addTransaction(Transaction(userId = 1, title = name, category = category, amount = amount, location = location, date = date))
+                    mTransactionViewModel.addTransaction(Transaction(email = currentUserEmail, title = name, category = category, amount = amount, latitude = latitude, longitude = longitude, date = date))
                 }
 
 
diff --git a/app/src/main/java/com/example/pbd_jwr/ui/dashboard/DashboardFragment.kt b/app/src/main/java/com/example/pbd_jwr/ui/dashboard/DashboardFragment.kt
index e518c7a8642989047e94238f9b9a7e97a54e73cc..12da78b569d6314edb9d3d833b15c367ac2014cc 100644
--- a/app/src/main/java/com/example/pbd_jwr/ui/dashboard/DashboardFragment.kt
+++ b/app/src/main/java/com/example/pbd_jwr/ui/dashboard/DashboardFragment.kt
@@ -54,8 +54,12 @@ class DashboardFragment : Fragment() {
 
         val entries = ArrayList<PieEntry>()
         for ((category, total) in totalPerCategory) {
-            entries.add(PieEntry(total.toFloat(),
-                category.replaceFirstChar { if (it.isLowerCase()) it.titlecase(Locale.ROOT) else it.toString() }))
+            entries.add(
+                PieEntry(
+                    total.toFloat(),
+                    category.name.replaceFirstChar { if (it.isLowerCase()) it.titlecase(Locale.ROOT) else it.toString() }
+                )
+            )
         }
 
         val dataSet = PieDataSet(entries, "Categories")
diff --git a/app/src/main/java/com/example/pbd_jwr/ui/transaction/TransactionViewModel.kt b/app/src/main/java/com/example/pbd_jwr/ui/transaction/TransactionViewModel.kt
index 7f2a041efe82593cf69f4a53ce89b72ba0b1a50b..7928d1090c3a0789db9f6cac8669801109b71c7d 100644
--- a/app/src/main/java/com/example/pbd_jwr/ui/transaction/TransactionViewModel.kt
+++ b/app/src/main/java/com/example/pbd_jwr/ui/transaction/TransactionViewModel.kt
@@ -38,10 +38,8 @@ class TransactionViewModel(application: Application) : AndroidViewModel(applicat
             try {
                 repository.addTransaction(transaction)
                 _transactionSubmitted.postValue(true)
-                println("lolos")
             } catch (e: Exception) {
                 _transactionSubmitted.postValue(false)
-                println("ga lolos")
             }
         }
     }