diff --git a/app/src/main/java/net/ardevd/tagius/core/data/TimeTaggerVersionResponse.kt b/app/src/main/java/net/ardevd/tagius/core/data/TimeTaggerVersionResponse.kt
new file mode 100644
index 0000000..0d300cb
--- /dev/null
+++ b/app/src/main/java/net/ardevd/tagius/core/data/TimeTaggerVersionResponse.kt
@@ -0,0 +1,5 @@
+package net.ardevd.tagius.core.data
+
+data class TimeTaggerVersionResponse(
+ val version: String
+)
\ No newline at end of file
diff --git a/app/src/main/java/net/ardevd/tagius/core/network/TimeTaggerApiService.kt b/app/src/main/java/net/ardevd/tagius/core/network/TimeTaggerApiService.kt
index 4b5b65b..308e7dd 100644
--- a/app/src/main/java/net/ardevd/tagius/core/network/TimeTaggerApiService.kt
+++ b/app/src/main/java/net/ardevd/tagius/core/network/TimeTaggerApiService.kt
@@ -18,6 +18,9 @@ interface TimeTaggerApiService {
@GET("settings")
suspend fun getSettings(): Any
+ @GET("version")
+ suspend fun getVersion(): net.ardevd.tagius.core.data.TimeTaggerVersionResponse
+
@GET("records")
suspend fun getRecords(
@Query("timerange") timerange: String,
diff --git a/app/src/main/java/net/ardevd/tagius/features/settings/ui/SettingsBottomSheet.kt b/app/src/main/java/net/ardevd/tagius/features/settings/ui/SettingsBottomSheet.kt
index 30e655e..cf087cf 100644
--- a/app/src/main/java/net/ardevd/tagius/features/settings/ui/SettingsBottomSheet.kt
+++ b/app/src/main/java/net/ardevd/tagius/features/settings/ui/SettingsBottomSheet.kt
@@ -12,6 +12,7 @@ import com.google.android.material.bottomsheet.BottomSheetDialogFragment
import kotlinx.coroutines.flow.first
import kotlinx.coroutines.launch
import net.ardevd.tagius.core.data.TokenManager
+import net.ardevd.tagius.core.network.RetrofitClient
import net.ardevd.tagius.databinding.FragmentSettingsBinding
class SettingsBottomSheet : BottomSheetDialogFragment() {
@@ -35,6 +36,15 @@ class SettingsBottomSheet : BottomSheetDialogFragment() {
viewLifecycleOwner.lifecycleScope.launch {
val url = TokenManager(requireContext()).serverUrlFlow.first()
binding.serverUrlText.text = url
+
+ try {
+ val apiService = RetrofitClient.getInstance(requireContext())
+ val versionResponse = apiService.getVersion()
+ binding.serverVersionText.text = getString(net.ardevd.tagius.R.string.settings_server_version, versionResponse.version)
+ binding.serverVersionText.visibility = View.VISIBLE
+ } catch (e: Exception) {
+ binding.serverVersionText.visibility = View.GONE
+ }
}
// Handle Logout
diff --git a/app/src/main/res/layout/fragment_settings.xml b/app/src/main/res/layout/fragment_settings.xml
index 892b756..11592b1 100644
--- a/app/src/main/res/layout/fragment_settings.xml
+++ b/app/src/main/res/layout/fragment_settings.xml
@@ -55,6 +55,16 @@
android:text="@string/login_server_url_default"
android:textAppearance="?attr/textAppearanceBodyLarge"
android:textStyle="bold" />
+
+
diff --git a/app/src/main/res/values-no/strings.xml b/app/src/main/res/values-no/strings.xml
index cd6cb02..bab4428 100644
--- a/app/src/main/res/values-no/strings.xml
+++ b/app/src/main/res/values-no/strings.xml
@@ -31,6 +31,7 @@
Varighet per dag
Kontoinnstillinger
Tilkoblet
+ Serverversjon: %1$s
Dynamisk Tema
Logg Ut
Innstillinger
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 8489639..f480599 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -42,6 +42,7 @@
Account Settings
Connected to
+ Server Version: %1$s
Dynamic Theme
Log Out
Settings