diff --git a/README.en.md b/README.en.md
index accc36082..0f2885cfd 100644
--- a/README.en.md
+++ b/README.en.md
@@ -12,7 +12,7 @@ Unofficial android VULCAN UONET+ register client for both students and their par
## Features
-* logging in using the email and password OR using token and pin
+* logging in using the email and password
* functions from the register website:
* grades
* grade statistics
@@ -25,15 +25,19 @@ Unofficial android VULCAN UONET+ register client for both students and their par
* homework
* notes
* lucky number
+ * additional lessons
+ * school conferences
+ * student and school information
* calculation of the average independently of school's preferences
* notifications, e.g. about a new grade
+* support for multiple accounts with the ability to rename students
* dark and black (AMOLED) theme
* offline mode
* no ads
## Download
-You can download the current beta version from the Google Play, F-Droid or Huawei AppGallery store
+You can download the current version from the Google Play, F-Droid or Huawei AppGallery store
[ {
return arrayOf(
@@ -165,7 +166,8 @@ abstract class AppDatabase : RoomDatabase() {
Migration30(),
Migration31(),
Migration32(),
- Migration33()
+ Migration33(),
+ Migration34()
)
}
diff --git a/app/src/main/java/io/github/wulkanowy/data/db/migrations/Migration34.kt b/app/src/main/java/io/github/wulkanowy/data/db/migrations/Migration34.kt
new file mode 100644
index 000000000..2c57eb00a
--- /dev/null
+++ b/app/src/main/java/io/github/wulkanowy/data/db/migrations/Migration34.kt
@@ -0,0 +1,13 @@
+package io.github.wulkanowy.data.db.migrations
+
+import androidx.room.migration.Migration
+import androidx.sqlite.db.SupportSQLiteDatabase
+
+class Migration34 : Migration(33, 34) {
+
+ override fun migrate(database: SupportSQLiteDatabase) {
+ database.execSQL("DELETE FROM ReportingUnits")
+ database.execSQL("DELETE FROM Recipients")
+ }
+}
+
diff --git a/app/src/main/java/io/github/wulkanowy/ui/modules/grade/GradeAverageProvider.kt b/app/src/main/java/io/github/wulkanowy/ui/modules/grade/GradeAverageProvider.kt
index 36c3c4f87..7e9b56b94 100644
--- a/app/src/main/java/io/github/wulkanowy/ui/modules/grade/GradeAverageProvider.kt
+++ b/app/src/main/java/io/github/wulkanowy/ui/modules/grade/GradeAverageProvider.kt
@@ -86,7 +86,11 @@ class GradeAverageProvider @Inject constructor(
return@combine firstSemesterGradeSubject
}
- val isAnyAverage = secondSemesterGradeSubject.data.orEmpty().any { it.average != .0 }
+ val isAnyVulcanAverageInFirstSemester =
+ firstSemesterGradeSubject.data.orEmpty().any { it.average != .0 }
+ val isAnyVulcanAverageInSecondSemester =
+ secondSemesterGradeSubject.data.orEmpty().any { it.average != .0 }
+
val updatedData = secondSemesterGradeSubject.data?.map { secondSemesterSubject ->
val firstSemesterSubject = firstSemesterGradeSubject.data.orEmpty()
.singleOrNull { it.subject == secondSemesterSubject.subject }
@@ -94,7 +98,7 @@ class GradeAverageProvider @Inject constructor(
val updatedAverage = if (averageMode == ALL_YEAR) {
calculateAllYearAverage(
student = student,
- isAnyAverage = isAnyAverage,
+ isAnyVulcanAverage = isAnyVulcanAverageInFirstSemester || isAnyVulcanAverageInSecondSemester,
gradeAverageForceCalc = gradeAverageForceCalc,
secondSemesterSubject = secondSemesterSubject,
firstSemesterSubject = firstSemesterSubject
@@ -102,7 +106,7 @@ class GradeAverageProvider @Inject constructor(
} else {
calculateBothSemestersAverage(
student = student,
- isAnyAverage = isAnyAverage,
+ isAnyVulcanAverage = isAnyVulcanAverageInFirstSemester || isAnyVulcanAverageInSecondSemester,
gradeAverageForceCalc = gradeAverageForceCalc,
secondSemesterSubject = secondSemesterSubject,
firstSemesterSubject = firstSemesterSubject
@@ -116,11 +120,11 @@ class GradeAverageProvider @Inject constructor(
private fun calculateAllYearAverage(
student: Student,
- isAnyAverage: Boolean,
+ isAnyVulcanAverage: Boolean,
gradeAverageForceCalc: Boolean,
secondSemesterSubject: GradeSubject,
firstSemesterSubject: GradeSubject?
- ) = if (!isAnyAverage || gradeAverageForceCalc) {
+ ) = if (!isAnyVulcanAverage || gradeAverageForceCalc) {
val updatedSecondSemesterGrades =
secondSemesterSubject.grades.updateModifiers(student)
val updatedFirstSemesterGrades =
@@ -133,20 +137,23 @@ class GradeAverageProvider @Inject constructor(
private fun calculateBothSemestersAverage(
student: Student,
- isAnyAverage: Boolean,
+ isAnyVulcanAverage: Boolean,
gradeAverageForceCalc: Boolean,
secondSemesterSubject: GradeSubject,
firstSemesterSubject: GradeSubject?
- ) = if (!isAnyAverage || gradeAverageForceCalc) {
- val secondSemesterAverage =
- secondSemesterSubject.grades.updateModifiers(student).calcAverage()
- val firstSemesterAverage = firstSemesterSubject?.grades?.updateModifiers(student)
- ?.calcAverage() ?: secondSemesterAverage
+ ): Double {
val divider = if (secondSemesterSubject.grades.any { it.weightValue > .0 }) 2 else 1
- (secondSemesterAverage + firstSemesterAverage) / divider
- } else {
- (secondSemesterSubject.average + (firstSemesterSubject?.average ?: secondSemesterSubject.average)) / 2
+ return if (!isAnyVulcanAverage || gradeAverageForceCalc) {
+ val secondSemesterAverage =
+ secondSemesterSubject.grades.updateModifiers(student).calcAverage()
+ val firstSemesterAverage = firstSemesterSubject?.grades?.updateModifiers(student)
+ ?.calcAverage() ?: secondSemesterAverage
+
+ (secondSemesterAverage + firstSemesterAverage) / divider
+ } else {
+ (secondSemesterSubject.average + (firstSemesterSubject?.average ?: secondSemesterSubject.average)) / divider
+ }
}
private fun getGradeSubjects(
diff --git a/app/src/main/play/release-notes/pl-PL/default.txt b/app/src/main/play/release-notes/pl-PL/default.txt
index 1d18f5751..3404b05b8 100644
--- a/app/src/main/play/release-notes/pl-PL/default.txt
+++ b/app/src/main/play/release-notes/pl-PL/default.txt
@@ -1,10 +1,6 @@
-Wersja 1.0.0
+Wersja 1.0.1
-Pierwsza produkcyjna wersja Wulkanowego 🎉
-
-Dziękujemy wszystkim użytkownikom za testowanie dotychczasowej wersji będącej we wczesnym dostępie
-jak i programistom, którzy w wolnych chwilach pomagali rozwijać aplikację i naprawiać znalezione błędy.
-
-Bez was wszystkich niemożliwe byłoby to dzieło!
+- naprawiliśmy błąd podczas wysyłania wiadomości
+- poprawiliśmy błędy w tłumaczeniach
Pełna lista zmian: https://github.com/wulkanowy/wulkanowy/releases
diff --git a/app/src/main/res/values-cs-rCZ/preferences_values.xml b/app/src/main/res/values-cs-rCZ/preferences_values.xml
index bcb690e54..e70abcb16 100644
--- a/app/src/main/res/values-cs-rCZ/preferences_values.xml
+++ b/app/src/main/res/values-cs-rCZ/preferences_values.xml
@@ -45,8 +45,8 @@
- Průměr známek z celého roku
- - Neukaž
- - Ukázat vše
- - Ukázat menší
+ - Nezobrazovat
+ - Zobrazit vše
+ - Zobrazit menší
diff --git a/app/src/main/res/values-cs-rCZ/strings.xml b/app/src/main/res/values-cs-rCZ/strings.xml
index cadf41458..02ee382a0 100644
--- a/app/src/main/res/values-cs-rCZ/strings.xml
+++ b/app/src/main/res/values-cs-rCZ/strings.xml
@@ -19,7 +19,7 @@
Domácí úkoly
Manažer účtů
Vyberte účet
- Manažer účtů
+ Podrobnosti účtu
Informace o žáku
Semestr %1$d, %2$d/%3$d
@@ -43,17 +43,17 @@
Přihlašovací údaje jsou nesprávné. Ujistěte se, že je v poli níže vybrána správná variace deníku UONET+
Neplatný PIN
Neplatný token
- Platnost tokenu vypršela
+ Token vypršel
Neplatný e-mail
Místo e-mailu použijte přiřazené přihlašovací údaje
Neplatný symbol
Žák nebyl nalezen. Zkontrolujte správnost symbolu a vybrané varianty deníku UONET+
Toto pole je povinné
- Vybraný žák je již přihlášen
- Symbol najdete na stránce deníku v Uczeń → Dostęp Mobilny → Zarejestruj urządzenie mobilne.\n\nUjistěte se, že jste na předchozí obrazovce nastavili správnou variantu deníku do pole Variace deníku UONET+. Wulkanowy v tuto chvíli nezjistí předškolní studenty
+ Vybraný žák je už přihlášen
+ Symbol najdete na stránce deníku v Uczeń → Dostęp Mobilny → Zarejestruj urządzenie mobilne.\n\nUjistěte se, že jste na předchozí obrazovce nastavili správnou variantu deníku do pole Variace deníku UONET+. Wulkanowy v tuto chvíli nezjistí předškolní żaków
Vyberte žáky, kteří se mají do aplikace přihlásit
Jiné možnosti
- V tomto režimu nefungují následující: šťastné číslo, statistiky třídy, shrnutí docházky, ospravedlnění nepřítomnosti, absolvované lekce, informace o škole a prohlížení seznamu registrovaných zařízení
+ V tomto režimu nefungují následující: šťastné číslo, statistiky třídy, shrnutí docházky, ospravedlnění nepřítomnosti, dokončené lekce, informace o škole a prohlížení seznamu registrovaných zařízení
Tento režim zobrazuje stejná data, která se zobrazují na webových stránkách deníka
Kombinace nejlepších vlastností ostatních dvou režimů. Funguje rychleji než scraper a poskytuje funkce, které nejsou k dispozici v režimu Mobile API. Je to v experimentální fázi
Zásady ochrany osobních údajů
@@ -66,12 +66,12 @@
Zapomněl jsem své heslo
Obnovte svůj účet
Obnovit
- Žák je již přihlášen
+ Žák je už přihlášen
Manažer účtů
Přihlásit se
- Platnost relace vypršela
- Vaše relace vypršela, přihlaste se prosím znovu
+ Relace vypršela
+ Relace vypršela. Přihlaste se prosím znovu
Známka
Semestr %d
@@ -85,7 +85,7 @@
Průměr: %1$.2f
Body: %s
Bez průměru
- Předpovězeno: %1$s
+ Předpokládaná: %1$s
Konečná: %1$s
Součet bodů
Konečná známka
@@ -129,20 +129,20 @@
- Máte %1$d novou známku
- Máte %1$d nové známky
- - Máte %1$d nové známky
- - Máte %1$d nové známky
+ - Máte %1$d nových známek
+ - Máte %1$d nových známek
- Máte %1$d novou předpokládanou známku
- Máte %1$d nové předpokládané známky
- - Máte %1$d nové předpokládané známky
- - Máte %1$d nové předpokládané známky
+ - Máte %1$d nových předpokládaných známek
+ - Máte %1$d nových předpokládaných známek
- Máte %1$d novou konečnou známku
- Máte %1$d nové konečné známky
- - Máte %1$d nové konečné známky
- - Máte %1$d nové konečné známky
+ - Máte %1$d nových konečných známek
+ - Máte %1$d nových konečných známek
Lekce
@@ -153,11 +153,11 @@
Žádné lekce tento den
%s min
%s sek
- dosud %1$s
+ ještě %1$s
za %1$s
- Lekce skončila
- Nyní: %s
- Okamžik: %s
+ Ukončila
+ Teď: %s
+ Za chvíli: %s
Později: %s
Dokončené lekce
@@ -172,14 +172,14 @@
Žádné informace o dalších lekcích
Shrnutí docházky
- Nepřítomen ze školních důvodů
+ Neprítomnosť zo školských dôvodov
Omluvená nepřítomnost
Neomluvená nepřítomnost
Osvobození
Omluvené zpoždění
Neomluvené zpoždění
Přítomnost
- Smazáno
+ Odstraněno
Neznámý
Číslo lekce
Žádné položky
@@ -195,7 +195,7 @@
Musíte vybrat alespoň jednu nepřítomnost!
Ospravedlnit
- Účast
+ Docházka
Společně
Tento týden žádné testy
@@ -205,7 +205,7 @@
Doručená pošta
Odesláno
Koš
- (žádné téma)
+ (žádný předmět)
Žádné zprávy
Při stahování obsahu zprávy došlo k chybě
Od:
@@ -213,13 +213,13 @@
Datum: %s
Odpověď
Poslat dále
- Vymazat
+ Odstranit
Přesunout do koše
- Trvale smazat
- Zpráva byla úspěšně smazána
- Podíl
+ Odstranit natrvalo
+ Zpráva byla úspěšně odstraněna
+ Sdílet
Vytisknout
- Téma
+ Předmět
Obsah
Zpráva úspěšně odeslána
Zpráva neexistuje
@@ -228,8 +228,8 @@
- %d zpráva
- %d zprávy
- - %d zprávy
- - %d zprávy
+ - %d zpráv
+ - %d zpráv
- Nová zpráva
@@ -240,8 +240,8 @@
- Máte %1$d novou zprávu
- Máte %1$d nové zprávy
- - Máte %1$d nové zprávy
- - Máte %1$d nové zprávy
+ - Máte %1$d nových zpráv
+ - Máte %1$d nových zpráv
Žádné informace o poznámkách
@@ -249,8 +249,8 @@
- %d poznámka
- %d poznámky
- - %d poznámky
- - %d poznámky
+ - %d poznámek
+ - %d poznámek
- Nová poznámka
@@ -261,15 +261,15 @@
- Máte %1$d novou poznámku
- Máte %1$d nové poznámky
- - Máte %1$d nové poznámky
- - Máte %1$d nové poznámky
+ - Máte %1$d nových poznámek
+ - Máte %1$d nových poznámek
- %d chvála
- %d chvály
- - %d chvály
- - %d chvály
+ - %d chvál
+ - %d chvál
- Nová chvála
@@ -280,8 +280,8 @@
- Máte %1$d novou chválu
- Máte %1$d nové chvály
- - Máte %1$d nové chvály
- - Máte %1$d nové chvály
+ - Máte %1$d nových chvál
+ - Máte %1$d nových chvál
@@ -297,10 +297,10 @@
- Nové neutrální poznámky
- - Máte %1$d novou neutrální pozornost
- - Máte %1$d nové neutrální pozornosti
- - Máte %1$d nové neutrální pozornosti
- - Máte %1$d nové neutrální pozornosti
+ - Máte %1$d novou neutrální poznámku
+ - Máte %1$d nové neutrální poznámky
+ - Máte %1$d nových neutrální poznámek
+ - Máte %1$d nových neutrální poznámek
Žádné informace o domácích úkolech
@@ -317,7 +317,7 @@
Mobilní přístup
Žádná zařízení
Zrušit registraci
- Zařízení odstraněno
+ Zařízení odstranění
QR kód
Token
Symbol
@@ -333,17 +333,17 @@
Jméno ředitele
Jméno pedagoga
Zobrazit na mapě
- Volání
+ Volat
Učitelé
Žádné informace o učitelích
Žádný předmět
Setkání
- Žádné informace o setkání
+ Žádné informace o setkáních
Přidat účet
- Odhlásit se
+ Odhlásit
Chcete se odhlásit z aktivního žáka?
Odhlášení žáků
Žákův účet
@@ -360,19 +360,19 @@
Verze aplikace
Tvůrci
- Seznam vývojářů Wulkanowy
+ Seznam vývojářů Wulkanového
Nahlásit chybu
Odeslat zprávu o chybě e-mailem
FAQ
Přečtěte si často kladené otázky
Server Discord
- Připojte se ke komunitě Wulkanowy
+ Připojte se ke komunitě Wulkanového
Facebooková fanpage
Stejně jako naše facebooková fanpage
Zásady ochrany osobních údajů
Pravidla pro shromažďování osobních údajů
Domovská stránka
- Navštivte web a pomozte s vývojem aplikace
+ Navštivte stránku a pomozte s vývojem aplikace
Licence
Licence knihoven použitých v aplikaci
@@ -405,21 +405,21 @@
Přezdívka
Přidat přezdívku
- Sdílejte protokoly
+ Sdílet protokoly
Obnovit
Zkontrolovat aktualizace
Před hlášením chyby zkontrolujte, zda je k dispozici aktualizace s opravou chyb
Obsah
- Zkuste to znovu
+ Zkusit znovu
Popis
- Bez popisu
+ Žádný popis
Učitel
Datum
Datum vstupu
Barva
- Detaily
+ Podrobnosti
Kategorie
Zavřít
Žádná data
@@ -442,30 +442,30 @@
Výchozí zobrazení
Výpočet koncoročního průměru
Vynutit průměrný výpočet podle aplikace
- Zobrazit přítomnost v účasti
+ Zobrazit přítomnost v docházce
Motiv aplikace
Rozbalit známky
- Označte aktuální lekci v plánu lekce
- Ukázat skupiny vedle předmětů v plánu lekce
- Ukázat seznam grafů ve třídních známkách
- Ukázat lekce pro celou třídu
- Ukázat předměty bez známek v \"Známky\"
+ Označit aktuální lekci v plánu lekce
+ Zobrazit skupiny vedle předmětů v plánu lekce
+ Zobrazit seznam grafů v známkách třídy
+ Zobrazit lekce pro celou třídu
+ Zobrazit předměty bez známek v \"Známky\"
Známky barevné schéma
- Předměty seřazené v \"Známky\"
+ Třídění předmětů v \"Známky\"
Jazyk aplikace
- Oznámení
- Ukázat notifikace
- Ukázat nadcházející oznámení o lekci
+ Upozornění
+ Zobrazit upozornění
+ Zobrazit upozornění o nadcházející lekci
Opravte problémy se synchronizací a upozorněním
- Ve vašem zařízení mohou nastat problémy se synchronizací dat a oznámenímii.\n\nChcete-li je opravit, přidejte Wulkanowy do funkce Autostart a vypněte optimalizaci/úsporu baterie v nastavení systému telefonu.
+ Vaše zařízení může mít problémy se synchronizací dat as upozorněními.\n\nChcete-li je opravit, přidejte Wulkanového do funkce Autostart a vypněte optimalizaci/úsporu baterie v nastavení systému telefonu.
Přejít do nastavení
- Ukázat oznámení o ladění
+ Zobrazit upozornění o ladění
Synchronizace
Automatická aktualizace
Pozastaveno na dovolené
Interval aktualizací
Pouze Wi-Fi
- Synchronizovat nyní
+ Synchronizovat teď
Synchronizováno!
Synchronizace selhala
Probíhá synchronizace
@@ -478,20 +478,20 @@
Hodnota mínusu
Odpovědět s historií zpráv
- Nové položky v deník
+ Nové položky v deníku
Nové známky
Šťastné číslo
Nové zprávy
Nové poznámky
- Push oznámení
+ Push upozornění
Nadcházející lekce
- Debug
+ Ladění
Černý
Červený
Modrý
Zelený
- Nachový
+ Fialový
Žádná barva
Zkopírováno
@@ -509,7 +509,7 @@
Probíhá údržba UONET+ deník. Zkuste to později znovu
Neznámá chyba denika UONET+. Prosím zkuste to znovu později
Neznámá chyba aplikace. Prosím zkuste to znovu později
- Došlo k neočekávané chybě
- Funkce deaktivována vaší školou
+ Vyskytla se neočekávaná chyba
+ Funkce je deaktivována přes vaší školou
Funkce není k dispozici. Přihlaste se v jiném režimu než Mobile API
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index 1acbdacbf..0cf67fa46 100644
--- a/app/src/main/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -383,7 +383,7 @@
Kategorie
Schließ
Keine Daten
- Thema
+ Schulfach
Zurück
Nächste
Suchen
@@ -406,12 +406,12 @@
Thema der Anwendung
Noten erweitern
Aktuelle Lektion im Stundenplan markieren
- Zeige Gruppen neben Themen im Zeitplan
+ Gruppen neben Schulfächer im Zeitplan anzeigen
Liste der Diagramme in Klassenbewertungen anzeigen
Unterricht der ganzen Klasse anzeigen
- Zeigen Sie Themen ohne Noten in Noten
+ Schulfächer ohne Noten in \"Noten\" anzeigen
Farbschema der Noten
- Themen sortieren in \"Noten\"
+ Schulfächer sortieren in \"Noten\"
App Sprache
Benachrichtigungen
Benachrichtigungen anzeigen
diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml
index 52134613d..f45886b77 100644
--- a/app/src/main/res/values-pl/strings.xml
+++ b/app/src/main/res/values-pl/strings.xml
@@ -451,7 +451,7 @@
Pokazuj lekcje całej klasy
Pokazuj przedmioty bez ocen w Ocenach
Schemat kolorów ocen
- Sortowanie przedmiotów w Ocenach
+ Sortowanie przedmiotów w \"Oceny\"
Język aplikacji
Powiadomienia
Pokazuj powiadomienia
diff --git a/app/src/main/res/values-sk-rSK/preferences_values.xml b/app/src/main/res/values-sk-rSK/preferences_values.xml
index d57e603b1..3275166dc 100644
--- a/app/src/main/res/values-sk-rSK/preferences_values.xml
+++ b/app/src/main/res/values-sk-rSK/preferences_values.xml
@@ -45,8 +45,8 @@
- Priemer známok z celého roka
- - Neukaz
- - Zobrazit vše
- - Zobrazit menší
+ - Nezobrazovať
+ - Zobraziť všetko
+ - Zobraziť menšie
diff --git a/app/src/main/res/values-sk-rSK/strings.xml b/app/src/main/res/values-sk-rSK/strings.xml
index 1e85cfedc..f0b8591af 100644
--- a/app/src/main/res/values-sk-rSK/strings.xml
+++ b/app/src/main/res/values-sk-rSK/strings.xml
@@ -11,16 +11,16 @@
Viac
O aplikácii
Prehliadač protokolov
- Tvorcovia
+ Prispievatelia
Licencie
Správy
Nová správa
Poznámky a úspechy
Domáce úlohy
- Accounts manager
- Select account
- Account details
- Student info
+ Manažér účtov
+ Vyberte účet
+ Podrobnosti účtu
+ Informácie o žiakovi
Semester %1$d, %2$d/%3$d
@@ -50,12 +50,12 @@
Žiak nebol nájdený. Skontrolujte správnosť symbolu a vybrané varianty denníka UONET+
Toto pole je povinné
Vybraný žiak už je prihlásený
- The symbol can be found on the register page in Uczeń → Dostęp Mobilny → Zarejestruj urządzenie mobilne.\n\nMake sure that you have set the appropriate register variant in the UONET+ register variant field on the previous screen. Wulkanowy does not detect pre-school students at the moment
+ Symbol nájdete na stránke denníka v Uczeń→ Dostęp Mobilny → Zarejestruj urządzenie mobilne.\n\nUistite sa, že ste na predchádzajúcu obrazovke nastaviť správny variant denníka do poľa Variácie denníka UONET+. Wulkanowy v túto chvíľu nezistí predškolské żaków
Vyberte žiakov, ktorí sa majú do aplikácie prihlásiť
Iné možnosti
- In this mode, a lucky number does not work, a class grade stats, summary of attendance, excuse for absence, completed lessons, school information and preview of the list of registered devices
- This mode displays the same data as it appears on the register website
- The combination of the best features of the other two modes. It works faster than scraper and provides features not available in the Mobile API mode. It is in the experimental phase
+ V tomto režime nefungujú nasledovné: šťastné číslo, štatistiky triedy, zhrnutie dochádzky, ospravedlnenie neprítomnosti, dokončené lekcie, informácie o škole a prezeranie zoznamu registrovaných zariadení
+ Tento režim zobrazuje rovnaké dáta, ktoré sa zobrazujú na webových stránkach denníka
+ Kombinácia najlepších vlastností ostatných dvoch režimov. Funguje rýchlejšie ako scraper a poskytuje funkcie, ktoré nie sú k dispozícii v režime Mobilne API. Je to v experimentálnej fáze
Zásady ochrany osobných údajov
Problémy s prihlásením? Napíšte nám!
Email
@@ -66,12 +66,12 @@
Zabudol som heslo
Obnovte svoj účet
Obnoviť
- Študent je už prihlásený
+ Žiak je už prihlásený
Manažér účtov
Prihlásiť sa
- Platnosť relácie vypršala
- Vaša relácia vypršala, prihláste sa prosím znovu
+ Relácia vypršala
+ Relácia vypršala. Prihláste sa prosím znovu
Známka
Semester %d
@@ -81,11 +81,11 @@
Váha: %s
Komentár
Žiadne nové známky
- Number of new ratings: %1$d
+ Počet nových známok %1$d
Priemer: %1$.2f
Body: %s
Bez priemeru
- Predpovedané: %1$s
+ Predpokladaná: %1$s
Konečná: %1$s
Súčet bodov
Konečná známka
@@ -98,8 +98,8 @@
Čiastočné
Semester
Body
- Legenda
- Average: %1$s
+ Vysvetlivky
+ Priemer: %1$s
Trieda
Žiák
@@ -140,9 +140,9 @@
- Máte %1$d novú konečnú známku
- - You received %1$d final grades
- - You received %1$d final grades
- - You received %1$d final grades
+ - Máte %1$d nové konečnej známky
+ - Máte %1$d nových konečných známok
+ - Máte %1$d nových konečných známok
Lekcia
@@ -152,364 +152,364 @@
Zmeny
Žiadne lekcie tento deň
%s min
- %s sec
- %1$s left
- in %1$s
- Lekcia skončila
- Now: %s
- Next: %s
- Later: %s
+ %s sek
+ ešte %1$s
+ za %1$s
+ Ukončila
+ Teraz: %s
+ Za chvíľu: %s
+ Neskôr: %s
- Completed lessons
- Show completed lessons
- No info about completed lessons
+ Dokončené lekcie
+ Zobraziť dokončené lekcie
+ Žiadne informácie o dokončených lekciách
Téma
Neprítomnosť
Zdroje
Ďalší lekcie
- Show additional lessons
- No info about additional lessons
+ Zobraziť ďalšie lekcie
+ Žiadne informácie o ďalších lekciách
- Attendance summary
- Absent for school reasons
- Excused absence
- Unexcused absence
- Exemption
- Excused lateness
- Unexcused lateness
+ Zhrnutie dochádzky
+ Neprítomnosť zo školských dôvodov
+ Ospravedlnená neprítomnosť
+ Neospravedlnená neprítomnosť
+ Oslobodenie
+ Ospravedlnenie meškanie
+ Neospravedlnenie meškanie
Prítomnosť
- Deleted
+ Odstránené
Neznámy
- Number of lesson
+ Číslo lekcie
Žiadne položky
- - %1$d absence
- - %1$d absences
- - %1$d absences
- - %1$d absences
+ - %1$d neprítomnosť
+ - %1$d neprítomnosti
+ - %1$d neprítomnosti
+ - %1$d neprítomnosti
- Absence reason (optional)
+ Dôvod neprítomnosti (voliteľný)
Poslať
- Absence excused successfully!
- You must select at least one absence!
- Excuse
+ Neprítomnosť úspešne ospravedlnená!
+ Musíte vybrať aspoň jednu neprítomnosť!
+ Ospravedlniť
- Attendance
- Total
+ Dochádzka
+ Spoločne
- No exams this week
- Type
- Entry date
+ Tento týždeň žiadne testy
+ Typ
+ Dátum vstupu
- Inbox
- Sent
- Trash
- (no subject)
- No messages
- An error occurred while downloading message content
- From:
- To:
- Date: %s
- Reply
- Forward
- Delete
- Move to trash
- Delete permanently
- Message deleted successfully
- Share
- Print
- Subject
- Content
- Message sent successfully
- Message does not exist
- You need to choose at least 1 recipient
- The message content must be at least 3 characters
+ Doručená pošta
+ Odoslané
+ Kôš
+ (žiadny predmet)
+ Žiadne správy
+ Pri sťahovaní obsahu správy došlo k chybe
+ Od:
+ Komu:
+ Dátum: %s
+ Odpoveď
+ Poslať ďalej
+ Odstrániť
+ Presunúť do koša
+ Odstrániť natrvalo
+ Správa bola úspešne odstránená
+ Zdieľať
+ Vytlačiť
+ Predmet
+ Obsah
+ Správa úspešne odoslaná
+ Správa neexistuje
+ Musíte vybrať aspoň 1 príjemca
+ Obsah správy musí mať aspoň 3 znaky
- - %d message
- - %d messages
- - %d messages
- - %d messages
+ - %d správa
+ - %d správy
+ - %d správ
+ - %d správ
- - New message
- - New messages
- - New messages
- - New messages
+ - Nová správa
+ - Nové správy
+ - Nové správy
+ - Nové správy
- - You received %1$d message
- - You received %1$d messages
- - You received %1$d messages
- - You received %1$d messages
+ - Máte %1$d novú správu
+ - Máte %1$d nové správy
+ - Máte %1$d nových správ
+ - Máte %1$d nových správ
- No info about notes
- Points
+ Žiadne informácie o poznámkach
+ Body
- - %d note
- - %d notes
- - %d notes
- - %d notes
+ - %d poznámka
+ - %d poznámky
+ - %d poznámok
+ - %d poznámok
- - New note
- - New notes
- - New notes
- - New notes
+ - Nová poznámka
+ - Nové poznámky
+ - Nové poznámky
+ - Nové poznámky
- - You received %1$d note
- - You received %1$d notes
- - You received %1$d notes
- - You received %1$d notes
+ - Máte %1$d novú poznámku
+ - Máte %1$d nové poznámky
+ - Máte %1$d nových poznámok
+ - Máte %1$d nových poznámok
- - %d praise
- - %d praises
- - %d praises
- - %d praises
+ - %d chvála
+ - %d chvály
+ - %d chvál
+ - %d chvál
- - New praise
- - New praises
- - New praises
- - New praises
+ - Nová chvála
+ - Nové chvály
+ - Nové chvály
+ - Nové chvály
- - You received %1$d praise
- - You received %1$d praises
- - You received %1$d praises
- - You received %1$d praises
+ - Máte %1$d novú chválu
+ - Máte %1$d nové chvály
+ - Máte %1$d nových chvál
+ - Máte %1$d nových chvál
- - %d neutral note
- - %d neutral notes
- - %d neutral notes
- - %d neutral notes
+ - %d neutrálny poznámka
+ - %d neutrálne poznámky
+ - %d neutrálne poznámky
+ - %d neutrálne poznámky
- - New neutral note
- - New neutral notes
- - New neutral notes
- - New neutral notes
+ - Nová neutrálny poznámka
+ - Nové neutrálne poznámky
+ - Nové neutrálne poznámky
+ - Nové neutrálne poznámky
- - You received %1$d neutral note
- - You received %1$d neutral notes
- - You received %1$d neutral notes
- - You received %1$d neutral notes
+ - Máte %1$d novú neutrálny poznámku
+ - Máte %1$d nové neutrálne poznámky
+ - Máte %1$d nových neutrálne poznámok
+ - Máte %1$d nových neutrálne poznámok
- No info about homework
- Mark as done
- Mark as undone
- Attachments
+ Žiadne informácie o domácich úlohách
+ Označiť ako hotové
+ Nevyrobené
+ Prílohy
- Lucky number
- Today\'s lucky number is
- No info about the lucky number
- Lucky number for today
- Today\'s lucky number is: %d
+ Šťastné číslo
+ Dnešné šťastné číslo je
+ Žiadne informácie o šťastnom čísle
+ Šťastné číslo pre dnešok
+ Dnes je šťastným číslom: %d
- Mobile devices
- No devices
- Deregister
- Device removed
- QR code
+ Mobilný prístup
+ Žiadne zariadenia
+ Zrušiť registráciu
+ Zariadenie odstránenie
+ QR kód
Token
Symbol
PIN
- School and teachers
+ Škola a učitelia
- School
- No info about school
- School name
- School address
- Telephone
- Name of headmaster
- Name of pedagogue
- Show on map
- Call
+ Škola
+ Žiadne informácie o škole
+ Názov školy
+ Adresa školy
+ Telefón
+ Meno riaditeľa
+ Meno pedagóga
+ Zobraziť na mape
+ Volať
- Teachers
- No info about teachers
- No subject
+ Učitelia
+ Žiadne informácie o učiteľoch
+ Žiadny predmet
- Conferences
- No info about conferences
+ Stretnutie
+ Žiadne informácie o stretnutiach
- Add account
- Logout
- Do you want to log out this student?
- Student logout
- Student account
- Parent account
- Mobile API mode
- Hybrid mode
- Edit data
- Accounts manager
- Select student
- Family
- Contact
- Residence details
- Personal information
+ Pridať účet
+ Odhlásiť
+ Chcete sa odhlásiť z aktívneho žiaka?
+ Odhlásenie žiakov
+ Zakov účet
+ Rodičovský účet
+ Režim Mobilného API
+ Hybridný režim
+ Upraviť dáta
+ Manažér účtov
+ Vyberte žiaka
+ Rodina
+ Kontakt
+ Údaje o adresách
+ Osobné údaje
- App version
- Contributors
- List of Wulkanowy developers
- Report a bug
- Send a bug report via e-mail
+ Verzia aplikácie
+ Prispievatelia
+ Zoznam vývojárov Wulkanového
+ Nahlásiť chybu
+ Odoslať správu o chybe e-mailom
FAQ
- Read Frequently Asked Questions
- Discord server
- Join the Wulkanowy community
- Facebook fanpage
- Like our facebook fanpage
- Privacy policy
- Rules for collecting personal data
- Homepage
- Visit the website and help develop the application
- Licenses
- Licenses of libraries used in the application
+ Prečítajte si často kladené otázky
+ Server Discord
+ Pripojte sa ku komunite Wulkanového
+ Facebooková fanpage
+ Rovnako ako naše facebooková fanpage
+ Zásady ochrany osobných údajov
+ Pravidlá pre zhromažďovanie osobných údajov
+ Domovská stránka
+ Navštívte stránku a pomôžte s vývojom aplikácie
+ Licencie
+ Licencia knižníc použitých v aplikácii
- License
+ Licencia
Avatar
- See more on GitHub
+ Zobraziť viac na GitHub
- No info about student or student family
- Name
- Second name
- Gender
- Polish citizenship
- Family name
- Mother\'s and father\'s names
- Phone
- Cellphone
+ Žiadne informácie o žiakov alebo rodine žiaka
+ Meno
+ Druhé meno
+ Pohlavie
+ Poľské občianstvo
+ Rodinné meno
+ Mená matky a otca
+ Telefón
+ Mobilný telefón
E-mail
- Address of residence
- Address of registration
- Correspondence address
- Surname and first name
- Degree of kinship
- Address
- Phones
- Male
- Female
- Last name
+ Adresa bydliska
+ Registrovaná adresa
+ Korešpondenčná adresa
+ Priezvisko a meno
+ Stupeň príbuznosti
+ Adresa
+ Telefóny
+ Muž
+ Žena
+ Priezvisko
- Nick
- Add nick
+ Prezývka
+ Pridať prezývku
- Share logs
- Refresh
+ Zdieľať protokoly
+ Obnoviť
- Check for updates
- Before reporting a bug, check first if an update with the bug fix is available
+ Skontrolovať aktualizácie
+ Pred hlásením chyby skontrolujte, či je k dispozícii aktualizácia s opravou chýb
- Content
- Retry
- Description
- No description
- Teacher
- Date
- Entry date
- Color
- Details
- Category
- Close
- No data
- Subject
- Prev
- Next
- Search
- Search…
- Yes
- No
- Save
+ Obsah
+ Skúsiť znova
+ Popis
+ Žiadny popis
+ Učiteľ
+ Dátum
+ Dátum vstupu
+ Farba
+ Podrobnosti
+ Kategória
+ Zavrieť
+ Žiadne údaje
+ Predmet
+ Vráť
+ Ďalej
+ Hľadať
+ Hledať…
+ Áno
+ Nie
+ Uložiť
- No lessons
- Choose theme
- Light
- Dark
- System Theme
+ Žiadne lekcie
+ Vybrať motív
+ Svetlý
+ Tmavý
+ Motív systému
- Appearance
- Default view
- Calculation of the end-of-year average
- Force average calculation by app
- Show presence in attendance
- Application theme
- Expand grades
- Mark current lesson in timetable
- Show groups next to subjects in timetable
- Show chart list in class grades
- Show whole class lessons
- Show subjects without grades in Grades
- Grades color scheme
- Subjects sorting in \"Grades\"
- App language
- Notifications
- Show notifications
- Show upcoming lesson notifications
- Fix synchronization & notifications issues
- Your device may have data synchronization issues and with notifications.\n\nTo fix them, you need to add Wulkanowy to the autostart and turn off battery optimization/saving in the phone settings.
- Go to settings
- Show debug notifications
- Synchronization
- Automatic update
- Suspended on holidays
- Updates interval
- Wi-Fi only
- Sync now
- Synced!
- Sync failed
- Sync in progress
- Synchronization
- Manual sync doesn\'t refresh app views.
- \nTo see the synced data relaunch the app after syncing.
+ Vzhľad
+ Predvolené zobrazenie
+ Výpočet koncoročního priemeru
+ Vynútiť priemerný výpočet podľa aplikácie
+ Zobraziť prítomnosť v dochádzke
+ Motív aplikácie
+ Rozbaliť známky
+ Označiť aktuálne lekciu v pláne lekcie
+ Zobraziť skupiny vedľa predmetov v pláne lekcie
+ Zobraziť zoznam grafov v známkach triedy
+ Zobraziť lekcie pre celú triedu
+ Zobraziť predmety bez známok v \"Známky\"
+ Známky farebnú schému
+ Triedenie predmetov v \"Známky\"
+ Jazyk aplikácie
+ Upozornenia
+ Zobraziť upozornenia
+ Zobraziť upozornenia o nadchádzajúcej lekciu
+ Opravte problémy so synchronizáciou a upozornením
+ Vaše zariadenie môže mať problémy so synchronizáciou dát as upozorneniami.\n\nAk ich chcete opraviť, pridajte Wulkanového do funkcie Autostart a vypnite optimalizáciu/úsporu batérie v nastavení systému telefóne.
+ Prejsť do nastavení
+ Zobraziť upozornenia o ladení
+ Synchronizácia
+ Automatická aktualizácia
+ Pozastavený počas dovolenky
+ Interval aktualizácií
+ Iba Wi-Fi
+ Synchronizovať teraz
+ Synchronizovano!
+ Synchronizácia zlyhala
+ Prebieha synchronizácia
+ Synchronizácia
+ Ručná synchronizácia neobnoví zobrazenie aplikácie.
+ \nAk chcete zobraziť synchronizované údaje, reštartujte aplikáciu po synchronizácii.
- Other
- Value of the plus
- Value of the minus
- Reply with message history
+ Iné
+ Hodnota plusu
+ Hodnota mínusu
+ Odpovedať s históriou správ
- New entries in register
- New grades
- Lucky number
- New messages
- New notes
- Push notifications
- Upcoming lessons
- Debug
+ Nové položky v denníku
+ Nové známky
+ Šťastné číslo
+ Nové správy
+ Nové poznámky
+ Push upozornenia
+ Nadchádzajúce lekcie
+ Ladenie
- Black
- Red
- Blue
- Green
- Purple
- No color
+ Čierny
+ Červený
+ Modrý
+ Zelený
+ Fialový
+ Žiadna farba
- Copied
- Undo
+ Skopírované
+ Vrátiť
- Download of updates has started…
- An update has just been downloaded.
- Restart
- Update failed! Wulkanowy may not function properly. Consider updating
+ Sťahovanie aktualizácií začalo…
+ Aktualizácia bola stiahnutá.
+ Reštartovať
+ Aktualizácia zlyhala! Wulkanowy nemusí fungovať správne. Zvážte aktualizáciu
- No internet connection
- Connection to register failed. Servers can be overloaded. Please try again later
- Loading data failed. Please try again later
- Register password change required
- Maintenance underway UONET + register. Try again later
- Unknown UONET + register error. Try again later
- Unknown application error. Please try again later
- An unexpected error occurred
- Feature disabled by your school
- Feature not available. Login in a mode other than Mobile API
+ Žiadne internetové pripojenie
+ Nedá sa pripojiť ku denníku. Servery môžu byť preťažené. Prosím skúste to znova neskôr
+ Načítanie údajov zlyhalo. Skúste neskôr prosím
+ Je vyžadovaná zmena hesla pre denník
+ Prebieha údržba UONET+ denník. Skúste to neskôr znova
+ Neznáma chyba dennika UONET+. Prosím skúste to znova neskôr
+ Neznáma chyba aplikácie. Prosím skúste to znova neskôr
+ Vyskytla sa neočakávaná chyba
+ Funkcia je deaktivovaná cez vašou školou
+ Funkcia nie je k dispozícii. Prihláste sa v inom režime než Mobile API
diff --git a/app/src/test/java/io/github/wulkanowy/ui/modules/grade/GradeAverageProviderTest.kt b/app/src/test/java/io/github/wulkanowy/ui/modules/grade/GradeAverageProviderTest.kt
index 0da02cf52..f3d92d2ee 100644
--- a/app/src/test/java/io/github/wulkanowy/ui/modules/grade/GradeAverageProviderTest.kt
+++ b/app/src/test/java/io/github/wulkanowy/ui/modules/grade/GradeAverageProviderTest.kt
@@ -198,6 +198,19 @@ class GradeAverageProviderTest {
assertEquals(3.5, items.single { it.subject == "Język polski" }.average, .0)
}
+ @Test
+ fun `calc both semesters average with no grade in second semester but with average in first semester`() {
+ every { preferencesRepository.gradeAverageForceCalc } returns false
+ every { preferencesRepository.gradeAverageMode } returns GradeAverageMode.BOTH_SEMESTERS
+
+ coEvery { gradeRepository.getGrades(student, semesters[1], false) } returns flowWithResource { secondGradeWithModifier to secondSummariesWithModifier }
+ coEvery { gradeRepository.getGrades(student, semesters[2], false) } returns flowWithResource { emptyList() to listOf(getSummary(24, "Język polski", .0))}
+
+ val items = runBlocking { gradeAverageProvider.getGradesDetailsWithAverage(student, semesters[2].semesterId, false).getResult() }
+
+ assertEquals(3.49, items.single { it.subject == "Język polski" }.average, .0)
+ }
+
@Test
fun `force calc average on no grades`() {
every { preferencesRepository.gradeAverageForceCalc } returns true
diff --git a/build.gradle b/build.gradle
index 5ab0182bb..f93399978 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,7 +1,7 @@
buildscript {
ext {
- kotlin_version = '1.4.21'
- about_libraries = '8.7.0'
+ kotlin_version = '1.4.30'
+ about_libraries = '8.8.2'
hilt_version = "2.31.2-alpha"
}
repositories {
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 1c4bcc29e..25d326531 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.1-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-6.8.2-all.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists