✨ Add movie descriptions to new movies section
[rhynodge.git] / src / main / kotlin / net / pterodactylus / rhynodge / filters / webpages / savoy / MovieExtractor.kt
index d828ec8..39c3ab8 100644 (file)
@@ -25,13 +25,13 @@ 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(), get("description_long").asText()).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()}"
-                               Performance(begin, link)
+                               Performance(begin, performance.get("release_type").asText(), link)
                        }
                        .forEach(this::addPerformance)
        }
@@ -40,3 +40,5 @@ class MovieExtractor {
 
 private val objectMapper = ObjectMapper()
 private val dateFormat = DateTimeFormatter.ISO_LOCAL_DATE_TIME
+
+private fun String.fixImageUrl() = replace(Regex("^/files"), "https://cdn.premiumkino.de")