diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/api/v2/Regexes.kt b/app/src/main/java/pl/szczodrzynski/edziennik/api/v2/Regexes.kt index b6039a46..45b977b2 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/api/v2/Regexes.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/api/v2/Regexes.kt @@ -24,7 +24,7 @@ object Regexes { """Liczona do średniej:.*?nie
""".toRegex(RegexOption.DOT_MATCHES_ALL) } val MOBIDZIENNIK_GRADES_DETAILS by lazy { - """(.+?).*?.+?.*?\((.+?)\).*?.*?Wartość oceny:.*?([0-9.]+).*?Wpisał\(a\):.*?(.+?)""".toRegex(RegexOption.DOT_MATCHES_ALL) + """(.+?).*?.+?.*?(?:\((.+?)\).*?)?.*?Wartość oceny:.*?([0-9.]+).*?Wpisał\(a\):.*?(.+?).*?(?:Komentarz:.*?(.+?))?""".toRegex(RegexOption.DOT_MATCHES_ALL) } val MOBIDZIENNIK_EVENT_TYPE by lazy { diff --git a/app/src/main/java/pl/szczodrzynski/edziennik/api/v2/mobidziennik/data/web/MobidziennikWebGrades.kt b/app/src/main/java/pl/szczodrzynski/edziennik/api/v2/mobidziennik/data/web/MobidziennikWebGrades.kt index cad45ab8..5a4348c2 100644 --- a/app/src/main/java/pl/szczodrzynski/edziennik/api/v2/mobidziennik/data/web/MobidziennikWebGrades.kt +++ b/app/src/main/java/pl/szczodrzynski/edziennik/api/v2/mobidziennik/data/web/MobidziennikWebGrades.kt @@ -96,13 +96,17 @@ class MobidziennikWebGrades(override val data: DataMobidziennik, if (Regexes.MOBIDZIENNIK_GRADES_COUNT_TO_AVG.containsMatchIn(html)) { Regexes.MOBIDZIENNIK_GRADES_DETAILS.find(html)?.let { match -> val gradeName = match[1] - val gradeDescription = match[2] + var gradeDescription = match[2] val gradeValue = match[3].toFloatOrNull() ?: 0.0f val teacherName = match[4].fixWhiteSpaces() val teacherId = data.teacherList.singleOrNull { it.fullNameLastFirst == teacherName }?.id ?: -1 val subjectId = data.subjectList.singleOrNull { it.longName == subjectName }?.id ?: -1 + if (match[5].isNotEmpty()) { + gradeDescription += "\n"+match[5].replace("
", "\n") + } + val gradeObject = Grade( profileId, gradeId,