diff --git a/app/src/main/java/com/example/if3210_2024_android_aab/MainActivity.kt b/app/src/main/java/com/example/if3210_2024_android_aab/MainActivity.kt index 0a343b18c539f73433e32709a4d0141e53fcf46e..ecb252f72ef1adcbcc9e045446032eef2c3ef275 100644 --- a/app/src/main/java/com/example/if3210_2024_android_aab/MainActivity.kt +++ b/app/src/main/java/com/example/if3210_2024_android_aab/MainActivity.kt @@ -24,8 +24,7 @@ class MainActivity : AppCompatActivity() { private lateinit var bottomNavigationView: BottomNavigationView override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) - SharedPreference.setStatusLogin(this, false) - if (!SharedPreference.getStatusLogin(this)) { + if (SharedPreference.getEmail(this).isNullOrBlank() || SharedPreference.getToken(this).isNullOrBlank()) { val intent = Intent(this, LoginActivity::class.java) startActivity(intent) } diff --git a/app/src/main/java/com/example/if3210_2024_android_aab/SettingFragment.kt b/app/src/main/java/com/example/if3210_2024_android_aab/SettingFragment.kt index ed1040d31e53eb2f5ecba22c71425448bb4252f0..369f41bf712316a385eb20a4b7fe75dcded1bac9 100644 --- a/app/src/main/java/com/example/if3210_2024_android_aab/SettingFragment.kt +++ b/app/src/main/java/com/example/if3210_2024_android_aab/SettingFragment.kt @@ -9,6 +9,7 @@ import androidx.fragment.app.Fragment import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.widget.Button import android.widget.Toast import androidx.fragment.app.viewModels import org.apache.poi.xssf.usermodel.XSSFWorkbook @@ -51,6 +52,7 @@ class SettingFragment : Fragment() { val view = inflater.inflate(R.layout.fragment_setting, container, false) val sendButton = view.findViewById<android.widget.Button>(R.id.button_kirim) val saveButton = view.findViewById<android.widget.Button>(R.id.button_simpan) + val logoutButton = view.findViewById<Button>(R.id.logout_button) sendButton.setOnClickListener { val emailIntent = Intent( @@ -65,6 +67,14 @@ class SettingFragment : Fragment() { } Log.d("SAVE_EXCEL", "saveToExcel: data") } + + logoutButton.setOnClickListener { + SharedPreference.clearLoginInfo(view.context) + val intent = Intent(view.context, MainActivity::class.java) + activity?.finish() + startActivity(intent) + } + return view } diff --git a/app/src/main/java/com/example/if3210_2024_android_aab/SharedPreference.kt b/app/src/main/java/com/example/if3210_2024_android_aab/SharedPreference.kt index 2ad5a8a68aa31e02cfc101613ed5360a30b35c39..a36c1cefba7a5c4bb1b1c4e307388b2a24e1081f 100644 --- a/app/src/main/java/com/example/if3210_2024_android_aab/SharedPreference.kt +++ b/app/src/main/java/com/example/if3210_2024_android_aab/SharedPreference.kt @@ -21,6 +21,14 @@ object SharedPreference { } + fun clearLoginInfo(context: Context) { + val preferences : SharedPreferences = + context.getSharedPreferences(SHARED_PREFS, Context.MODE_PRIVATE) + val editor = preferences.edit() + editor.clear() + editor.apply() + } + fun setStatusLogin(context: Context, status : Boolean) { val preferences : SharedPreferences = context.getSharedPreferences(SHARED_PREFS, Context.MODE_PRIVATE) diff --git a/app/src/main/res/layout/fragment_setting.xml b/app/src/main/res/layout/fragment_setting.xml index 2b336e2d33f7c2b6a5c7843b8c0ec9b7a261975d..ac231d7d87662630c877a7505a1c9cc1bc02ce79 100644 --- a/app/src/main/res/layout/fragment_setting.xml +++ b/app/src/main/res/layout/fragment_setting.xml @@ -1,27 +1,46 @@ <?xml version="1.0" encoding="utf-8"?> -<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" - android:layout_height="match_parent"> - - <Button - android:id="@+id/button_kirim" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_marginTop="20dp" - android:text="@string/kirim_daftar_transaksi" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" /> - <Button - android:id="@+id/button_simpan" - android:layout_width="wrap_content" + android:layout_height="match_parent" + android:orientation="vertical"> + + <LinearLayout + android:layout_width="match_parent" android:layout_height="wrap_content" - android:layout_marginTop="20dp" - android:text="@string/simpan_daftar_transaksi" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintTop_toTopOf="parent" /> + android:orientation="vertical" + android:gravity="center" + android:layout_gravity="center_horizontal" + android:padding="24dp"> + + <Button + android:id="@+id/button_kirim" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginTop="20dp" + android:text="@string/kirim_daftar_transaksi" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> + <Button + android:id="@+id/button_simpan" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginTop="20dp" + android:text="@string/simpan_daftar_transaksi" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> + <Button + android:id="@+id/logout_button" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginTop="20dp" + android:text="Logout" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent" /> + </LinearLayout> -</androidx.constraintlayout.widget.ConstraintLayout> \ No newline at end of file +</LinearLayout> \ 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 693ae0e9e93927c351095619dd136968b1d18a70..bbb30522119fc71fdc1522f8088a970ce75f3088 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -46,5 +46,5 @@ <string name="title_activity_new_transaction">NewTransaction</string> <string name="kirim_daftar_transaksi">Kirim Daftar Transaksi</string> <string name="title_activity_edit_transaction">EditTransactionActivity</string> - <string name="simpan_daftar_transaksi" /> + <string name="simpan_daftar_transaksi">Simpan Daftar Transaksi</string> </resources> \ No newline at end of file