From 5b1264293c00d54e676d92069784f0444cbca40b Mon Sep 17 00:00:00 2001 From: oxidiert Date: Thu, 16 Oct 2025 13:19:54 +0200 Subject: [PATCH] added dummy accounts, change passwort is now a feature, toast when session takes to long, online frontend fix --- .../java/com/dano/test1/DatabaseUploader.kt | 17 +- .../com/dano/test1/HandlerOpeningScreen.kt | 160 ++++++++++----- .../java/com/dano/test1/LanguageManager.kt | 70 ++++++- .../main/java/com/dano/test1/LoginManager.kt | 187 ++++++++++++++++-- 4 files changed, 351 insertions(+), 83 deletions(-) diff --git a/app/src/main/java/com/dano/test1/DatabaseUploader.kt b/app/src/main/java/com/dano/test1/DatabaseUploader.kt index 918648e..b054f7c 100644 --- a/app/src/main/java/com/dano/test1/DatabaseUploader.kt +++ b/app/src/main/java/com/dano/test1/DatabaseUploader.kt @@ -25,19 +25,6 @@ object DatabaseUploader { private val client = OkHttpClient() - fun uploadDatabaseWithLogin(context: Context, username: String, password: String) { - LoginManager.loginUserWithCredentials( - context = context, - username = username, - password = password, - onSuccess = { token -> - Log.d("UPLOAD", "Login OK (user=$username)") - uploadDatabase(context, token) - }, - onError = { msg -> Log.e("UPLOAD", "Login fehlgeschlagen: $msg") } - ) - } - private fun uploadDatabase(context: Context, token: String) { CoroutineScope(Dispatchers.IO).launch { try { @@ -171,6 +158,8 @@ object DatabaseUploader { } fun uploadDatabaseWithToken(context: Context, token: String) { - uploadDatabase(context, token) // nutzt die bestehende interne Logik + uploadDatabase(context, token) } + + } diff --git a/app/src/main/java/com/dano/test1/HandlerOpeningScreen.kt b/app/src/main/java/com/dano/test1/HandlerOpeningScreen.kt index 2d6fbec..f3909f8 100644 --- a/app/src/main/java/com/dano/test1/HandlerOpeningScreen.kt +++ b/app/src/main/java/com/dano/test1/HandlerOpeningScreen.kt @@ -13,6 +13,8 @@ import org.json.JSONArray import org.json.JSONObject import java.io.File import java.util.concurrent.TimeUnit +import com.google.android.material.dialog.MaterialAlertDialogBuilder + var RHS_POINTS: Int? = null @@ -32,6 +34,8 @@ class HandlerOpeningScreen(private val activity: MainActivity) { private lateinit var databaseButton: Button private lateinit var statusSession: TextView private lateinit var statusOnline: TextView + private val SESSION_WARN_AFTER_MS = 12 * 60 * 60 * 1000L // 12h + private var sessionLongWarnedOnce = false private val dynamicButtons = mutableListOf