From ef4c42922b0cf6b31a6eb2b10cba3c4afddc3974 Mon Sep 17 00:00:00 2001 From: TheRealJan Date: Wed, 27 Sep 2023 16:27:38 +0200 Subject: [PATCH] Fix crash, add type to exam cards and small fix for subjects --- .../io/github/jan/kex/ui/components/ExamCard.kt | 2 ++ .../github/jan/kex/ui/components/ExamHomeCard.kt | 3 ++- .../io/github/jan/kex/ui/screen/AuthScreen.kt | 2 +- .../io/github/jan/kex/ui/screen/HomeScreen.kt | 8 +++----- .../jan/kex/ui/screen/exam/ExamCreateScreen.kt | 2 +- app/src/main/res/values-de/strings.xml | 16 ++++++++-------- gradle.properties | 4 ++-- 7 files changed, 19 insertions(+), 18 deletions(-) diff --git a/app/src/main/java/io/github/jan/kex/ui/components/ExamCard.kt b/app/src/main/java/io/github/jan/kex/ui/components/ExamCard.kt index 892254f..748cbb4 100644 --- a/app/src/main/java/io/github/jan/kex/ui/components/ExamCard.kt +++ b/app/src/main/java/io/github/jan/kex/ui/components/ExamCard.kt @@ -13,6 +13,7 @@ import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.res.stringResource import androidx.compose.ui.text.font.FontWeight import androidx.compose.ui.text.style.TextOverflow import androidx.compose.ui.unit.dp @@ -41,6 +42,7 @@ fun ExamCard(exam: Exam, selected: Boolean, modifier: Modifier = Modifier) { verticalArrangement = Arrangement.Center ) { Text(exam.subject, fontWeight = FontWeight.Bold, fontSize = 15.sp, maxLines = 1, overflow = TextOverflow.Ellipsis) + Text(stringResource(id = exam.type.nameId), fontSize = 10.sp) if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { Text( text = exam.date.localizedDateString, diff --git a/app/src/main/java/io/github/jan/kex/ui/components/ExamHomeCard.kt b/app/src/main/java/io/github/jan/kex/ui/components/ExamHomeCard.kt index f1408ae..9c143f7 100644 --- a/app/src/main/java/io/github/jan/kex/ui/components/ExamHomeCard.kt +++ b/app/src/main/java/io/github/jan/kex/ui/components/ExamHomeCard.kt @@ -9,6 +9,7 @@ import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier +import androidx.compose.ui.res.stringResource import androidx.compose.ui.unit.dp import io.github.jan.kex.data.remote.Exam @@ -20,7 +21,7 @@ fun ExamHomeCard(exam: Exam, modifier: Modifier = Modifier, onClick: () -> Unit) verticalAlignment = Alignment.CenterVertically, modifier = Modifier.padding(12.dp) ) { - Text(exam.subject) + Text("${exam.subject} (${stringResource(id = exam.type.nameId)})") Spacer(Modifier.weight(1f)) } } diff --git a/app/src/main/java/io/github/jan/kex/ui/screen/AuthScreen.kt b/app/src/main/java/io/github/jan/kex/ui/screen/AuthScreen.kt index ab48105..20932f6 100644 --- a/app/src/main/java/io/github/jan/kex/ui/screen/AuthScreen.kt +++ b/app/src/main/java/io/github/jan/kex/ui/screen/AuthScreen.kt @@ -76,7 +76,7 @@ fun AuthScreen( } }, ) { - ProviderButtonContent(provider = Google) + ProviderButtonContent(provider = Google, text = stringResource(id = R.string.login_google)) } } } diff --git a/app/src/main/java/io/github/jan/kex/ui/screen/HomeScreen.kt b/app/src/main/java/io/github/jan/kex/ui/screen/HomeScreen.kt index 909329b..85a2578 100644 --- a/app/src/main/java/io/github/jan/kex/ui/screen/HomeScreen.kt +++ b/app/src/main/java/io/github/jan/kex/ui/screen/HomeScreen.kt @@ -66,7 +66,7 @@ fun HomeScreen( val subjects by subjectVm.subjects.collectAsStateWithLifecycle(emptyList()) val tasksByDays by remember { derivedStateOf { - tasks.filter { it.doneDate == null }.groupBy { it.daysUntil }.entries.sortedBy { it.key }.filter { it.key >= 0 }.take(3) + tasks.filter { it.doneDate == null && it.dueDate > Clock.System.now() }.groupBy { it.daysUntil }.entries.sortedBy { it.key }.filter { it.key >= 0 }.take(3) } } val context = LocalContext.current @@ -155,10 +155,8 @@ private fun LazyListScope.taskList(tasksByDay: List>> Text(stringResource(days.toInt().localizedDay, days), fontSize = 20.sp) } items(tasks) { - val subject by remember { - derivedStateOf { - subjects.find { subject -> subject.id == it.subjectId } - } + val subject = remember(subjects) { + subjects.find { subject -> subject.id == it.subjectId } } TaskCard( task = it, diff --git a/app/src/main/java/io/github/jan/kex/ui/screen/exam/ExamCreateScreen.kt b/app/src/main/java/io/github/jan/kex/ui/screen/exam/ExamCreateScreen.kt index 4f36fe4..1096269 100644 --- a/app/src/main/java/io/github/jan/kex/ui/screen/exam/ExamCreateScreen.kt +++ b/app/src/main/java/io/github/jan/kex/ui/screen/exam/ExamCreateScreen.kt @@ -72,7 +72,7 @@ fun ExamCreateScreen( val date = Instant.fromEpochMilliseconds(it).toLocalDateTime( TimeZone.currentSystemDefault() ) - "${if(date.dayOfMonth < 10) "0" + date.dayOfMonth else date.dayOfMonth}.${date.monthNumber}.${date.year}" + "${if(date.dayOfMonth < 10) "0" + date.dayOfMonth else date.dayOfMonth}.${if (date.monthNumber < 10) "0" + date.monthNumber else date.dayOfMonth}.${date.year}" } } var type by remember { diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml index 972c7b5..1afbc96 100644 --- a/app/src/main/res/values-de/strings.xml +++ b/app/src/main/res/values-de/strings.xml @@ -1,7 +1,7 @@ Kex - Vergangene Klassenarbeiten anzeigen + Vergangene Prüfungen anzeigen Note/Punkte Themen Speichern @@ -13,7 +13,7 @@ Startseite Hausaufgaben Einstellungen - Klassenarbeiten + Prüfungen Schulfach Datum Klassenarbeit @@ -40,9 +40,9 @@ Passwort Einloggen Ausloggen - Klassenarbeiten - Klassenarbeit erstellen - Klassenarbeit bearbeiten + Prüfungen + Prüfung erstellen + Prüfung bearbeiten Hausaufgabe erstellen GFS Hausaufgabe @@ -50,7 +50,7 @@ Heute Übermorgen In %s Tagen - Keine Klassenarbeiten verfügbar + Keine Prüfungen verfügbar Keine Hausaufgaben verfügbar Installieren Herunterladen @@ -77,12 +77,12 @@ Schulfach konnte nicht gelöscht werden. Bitte überprüfe deine Internetverbindung! Schulfach konnte nicht erstellt werden. Bitte überprüfe deine Internetverbindung! Benachrichtigungen - Willst du Benachrichtigungen für Hausaufgaben und Klassenarbeiten bekommen? + Willst du Benachrichtigungen für Hausaufgaben und Prüfungen bekommen? Ja Nein Du hast in 5 Tagen eine %s %s! %s %s in 5 Tagen! - Anstehende Klassenarbeiten + Anstehende Prüfungen Anstehende Aufgaben Klassenarbeit-Importierer Kurse auswählen zum Importieren diff --git a/gradle.properties b/gradle.properties index 304dfdc..839dfd5 100644 --- a/gradle.properties +++ b/gradle.properties @@ -26,5 +26,5 @@ kotlin.experimental.tryK2=true android.lint.useK2Uast=true # App settings -app.versionName=0.1.2 -app.versionCode=8 +app.versionName=0.1.3 +app.versionCode=9