🎨 Add “imageUrl” attribute to Movie
[rhynodge.git] / src / main / kotlin / net / pterodactylus / rhynodge / filters / webpages / savoy / MovieExtractor.kt
index a49c280..8bd0812 100644 (file)
@@ -25,18 +25,20 @@ class MovieExtractor {
                .replace("&l;", "<")
                .replace("&g;", ">")
 
-       private fun JsonNode.extractMovie() = Movie(get("name").asText()).apply {
+       private fun JsonNode.extractMovie() = Movie(get("name").asText(), get("poster").get("original").asText().fixImageUrl()).apply {
                this@extractMovie.get("performances")
                        .map { performance ->
                                val begin = LocalDateTime.parse(performance.get("begin").asText(), dateFormat)
                                val slug = performance.get("slug").asText()
                                val link = "https://savoy.premiumkino.de/vorstellung/${slug}/${String.format("%tY%<tm%<td", begin)}/${String.format("%tH%<tM", begin)}/${performance.get("crypt_id").asText()}"
-                               TicketLink(begin, link)
+                               Performance(begin, link)
                        }
-                       .forEach(this::addTicketLink)
+                       .forEach(this::addPerformance)
        }
 
 }
 
 private val objectMapper = ObjectMapper()
 private val dateFormat = DateTimeFormatter.ISO_LOCAL_DATE_TIME
+
+private fun String.fixImageUrl() = replace(Regex("^/files"), "https://cdn.premiumkino.de")