From 9bdb14896b528b050b994d154cc2ada6d31c36a0 Mon Sep 17 00:00:00 2001
From: Hannes Braun <hannes@hannesbraun.net>
Date: Sun, 28 Jan 2024 18:30:31 +0100
Subject: [PATCH] Unescape parts in MensaParser

---
 .../org/mosad/thecitadelofricks/hsoparser/MensaParser.kt       | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/main/kotlin/org/mosad/thecitadelofricks/hsoparser/MensaParser.kt b/src/main/kotlin/org/mosad/thecitadelofricks/hsoparser/MensaParser.kt
index 40d0478..6946205 100644
--- a/src/main/kotlin/org/mosad/thecitadelofricks/hsoparser/MensaParser.kt
+++ b/src/main/kotlin/org/mosad/thecitadelofricks/hsoparser/MensaParser.kt
@@ -24,6 +24,7 @@ package org.mosad.thecitadelofricks.hsoparser
 
 import org.jsoup.Jsoup
 import org.jsoup.nodes.Document
+import org.jsoup.parser.Parser
 import org.mosad.thecitadelofricks.Meal
 import org.mosad.thecitadelofricks.MensaWeek
 import org.slf4j.LoggerFactory
@@ -66,7 +67,7 @@ class MensaParser {
 
                     day.select("div.menu-tagesplan > div.grid").first()?.select("div.flex-col")?.forEachIndexed { _, meal ->
                         val heading = meal.select("h5").text()
-                        val parts = ArrayList(meal.select("small.extra-text").html().split("<br>").map { it.trim() })
+                        val parts = ArrayList(meal.select("small.extra-text").html().split("<br>").map { Parser.unescapeEntities(it, true).trim() })
                         val additives = meal.select("small.zusatzsstoffe[x-show=showAllergenes]").text()
                         parts.removeIf { x -> x.isEmpty() || x.isBlank() }
 
-- 
2.50.1