diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 04b7e735f269a244b71dfb60ce0b6f0dec563645..da074f987b24fe43136886688495d221b55d74a9 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -38,9 +38,6 @@ android:name=".ui.transactions.TransactionsBroadcastReceiver" android:enabled="true" android:exported="false"> - <intent-filter> - <action android:name="com.BondoYap.transactions.randomize" /> - </intent-filter> </receiver> <activity diff --git a/app/src/main/java/com/example/bondoyap/ui/settings/SettingsFragment.kt b/app/src/main/java/com/example/bondoyap/ui/settings/SettingsFragment.kt index 4f415981d062e9ffd6f5e1af86636b4a812c704d..34f65ddee77160f438a18db9de1e58bd2284b244 100644 --- a/app/src/main/java/com/example/bondoyap/ui/settings/SettingsFragment.kt +++ b/app/src/main/java/com/example/bondoyap/ui/settings/SettingsFragment.kt @@ -62,6 +62,7 @@ class SettingsFragment : Fragment() { val randomButton = binding.randomTransactions val saveButton = binding.saveTransactions val sendButton = binding.sendTransactions + val resetButton = binding.resetButton settingsViewModel.getUser()?.let { user -> val loggedInUserText = "Masuk dengan akun:\n ${user.email}" @@ -70,15 +71,17 @@ class SettingsFragment : Fragment() { val appContext = context?.applicationContext logoutButton.setOnClickListener { - settingsViewModel.getUser() - settingsViewModel.logout() -// findNavController().navigate(R.id.navigation_login) - - val activity = requireActivity() - val intent = Intent(activity, LoginActivity::class.java) - Toast.makeText(appContext, "Logout Sukses!", Toast.LENGTH_SHORT).show() - activity.startActivity(intent) - activity.finish() + showConfirmationDialog("Logout", "Apakah Anda yakin logout dari aplikasi?") { + settingsViewModel.getUser() + settingsViewModel.logout() + + val activity = requireActivity() + val intent = Intent(activity, LoginActivity::class.java) + Toast.makeText(appContext, "Logout Sukses!", Toast.LENGTH_SHORT).show() + activity.startActivity(intent) + activity.finish() + } + } randomButton.setOnClickListener { @@ -124,6 +127,28 @@ class SettingsFragment : Fragment() { //todo } + resetButton.setOnClickListener{ + Toast.makeText(appContext, "Transaksi di-reset ...", Toast.LENGTH_SHORT).show() + showConfirmationDialog("Reset", "Apakah Anda yakin ingin me-reset data transaksi?") { + //todo + + } + } + + } + + private fun showConfirmationDialog(title: String, message: String, action: () -> Unit) { + val builder = AlertDialog.Builder(requireContext()) + builder.setTitle(title) + builder.setMessage(message) + builder.setPositiveButton("Ya") { _, _ -> + action.invoke() + } + builder.setNegativeButton("Tidak") { dialog, _ -> + dialog.dismiss() + } + val dialog = builder.create() + dialog.show() } companion object { diff --git a/app/src/main/res/layout/fragment_settings.xml b/app/src/main/res/layout/fragment_settings.xml index 61209ef2bcd9cd0308c8511663ffedf81705ba89..ad6375efde862a889190acda6d565aedd3559b67 100644 --- a/app/src/main/res/layout/fragment_settings.xml +++ b/app/src/main/res/layout/fragment_settings.xml @@ -54,14 +54,26 @@ android:layout_marginTop="16dp" /> + <Button + android:id="@+id/reset_button" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="@string/reset" + app:layout_constraintTop_toBottomOf="@+id/send_transactions" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintEnd_toEndOf="parent" + android:layout_marginTop="16dp" + android:backgroundTint="@color/red"/> + <Button android:id="@+id/logout_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/logout" - app:layout_constraintTop_toBottomOf="@+id/send_transactions" + app:layout_constraintTop_toBottomOf="@+id/reset_button" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" - android:layout_marginTop="16dp"/> + android:layout_marginTop="16dp" + android:backgroundTint="@color/red"/> </androidx.constraintlayout.widget.ConstraintLayout> \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 170df652f7855ce5cc6f9f8a650e558b427c700f..45465ed1ce1cdf5cd57462a1abec42f9c6cf77c8 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -36,12 +36,15 @@ <string name="hint_lokasi">Enter Lokasi</string> <string name="pemasukan">Pemasukan</string> <string name="pengeluaran">Pengeluaran</string> - - <string name="capture_button">capture</string> + + + <string name="capture_button">Capture</string> + <string name="retake_button">Retake</string> <string name="switch_camera_button">switch camera</string> <string name="gallery_button">gallery</string> <string name="upload_button">upload</string> <string name="cancel_button">cancel</string> <string name="save_button">save</string> + <string name="reset">Reset Transaksi</string> </resources> \ No newline at end of file