.replace("&l;", "<")
.replace("&g;", ">")
- private fun JsonNode.extractMovie() = Movie(get("name").asText()).apply {
+ private fun JsonNode.extractMovie() =
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)
- }
+ .let { Movie(get("name").asText(), get("poster").get("original").asText().fixImageUrl(), get("description_long").asText(), it) }
}
private val objectMapper = ObjectMapper()
private val dateFormat = DateTimeFormatter.ISO_LOCAL_DATE_TIME
+
+private fun String.fixImageUrl() = replace(Regex("^/files"), "https://cdn.premiumkino.de")