🎨 Wrap CSS styling in unsafe tag
authorDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Sun, 3 Mar 2024 10:43:02 +0000 (11:43 +0100)
committerDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Sun, 3 Mar 2024 10:43:02 +0000 (11:43 +0100)
src/main/kotlin/net/pterodactylus/rhynodge/filters/webpages/savoy/MovieState.kt

index 4ee0fd8..5d9cca8 100644 (file)
@@ -14,6 +14,7 @@ import kotlinx.html.section
 import kotlinx.html.style
 import kotlinx.html.title
 import kotlinx.html.ul
+import kotlinx.html.unsafe
 import net.pterodactylus.rhynodge.Reaction
 import net.pterodactylus.rhynodge.states.AbstractState
 import java.time.LocalDateTime
@@ -32,25 +33,27 @@ class MovieState(@JsonProperty val movies: Collection<Movie>, val newMovies: Col
                head {
                        title { +"Savoy Programme" }
                        style("text/css") {
-                               +"html { font-family: 'Recursive Sans Linear Static', Roboto, serif; }"
-                               +"section.new-movies > .label { font-family: Impact, sans-serif; background-color: black; padding: 0.5ex; font-size: 200%; color: #ffffee; font-weight: bold; }"
-                               +"section.new-movies ul { padding: 0; margin: 0; }"
-                               +"section.new-movies li.movie { list-style: none; width: 250px; height: 353px; display: inline-block; position: relative; margin: 1ex 1ex 1ex 0ex; }"
-                               +"section.new-movies li.movie img { width: 100%; height: 100%; display: block; position: absolute; z-index: -1; }"
-                               +"section.new-movies li.movie .text { color: white; text-shadow: 2px 2px black; font-weight: bold; font-size: 150%; display: flex; flex-direction: column; justify-content: end; width: 100%; height: 100%; }"
-                               +"section.new-movies li.movie .text .name { padding: 1ex; font-size: 120%; }"
+                               unsafe {
+                                       +"html { font-family: 'Recursive Sans Linear Static', Roboto, serif; }"
+                                       +"section.new-movies > .label { font-family: Impact, sans-serif; background-color: black; padding: 0.5ex; font-size: 200%; color: #ffffee; font-weight: bold; }"
+                                       +"section.new-movies ul { padding: 0; margin: 0; }"
+                                       +"section.new-movies li.movie { list-style: none; width: 250px; height: 353px; display: inline-block; position: relative; margin: 1ex 1ex 1ex 0ex; }"
+                                       +"section.new-movies li.movie img { width: 100%; height: 100%; display: block; position: absolute; z-index: -1; }"
+                                       +"section.new-movies li.movie .text { color: white; text-shadow: 2px 2px black; font-weight: bold; font-size: 150%; display: flex; flex-direction: column; justify-content: end; width: 100%; height: 100%; }"
+                                       +"section.new-movies li.movie .text .name { padding: 1ex; font-size: 120%; }"
 
-                               +"section.daily-programmes ol { padding: 0; }"
-                               +"section.daily-programmes li { list-style: none; }"
-                               +"section.daily-programmes li.day > .label { font-family: Impact, sans-serif; background-color: black; padding: 0.5ex; font-size: 200%; color: #ffffee; font-weight: bold; }"
-                               +"section.daily-programmes li .performances { display: flex; border-top: 1ex; }"
-                               +"section.daily-programmes li.performance { width: 250px; height: 353px; display: inline-block; margin: 1ex 1ex 1ex 0ex; position: relative; }"
-                               +"section.daily-programmes li.performance a { width: 100%; height: 100%; display: block; text-decoration: none; }"
-                               +"section.daily-programmes li.performance a img { width: 100%; height: 100%; display: block; position: absolute; z-index: -1; }"
-                               +"section.daily-programmes li.performance a .text { color: white; text-shadow: 2px 2px black; font-weight: bold; font-size: 150%; width: 100%; height: 100%; }"
-                               +"section.daily-programmes li.performance a .text .time { padding: 1ex; text-align: right; }"
-                               +"section.daily-programmes li.performance a .text .type { padding: 0ex 1ex 1ex 1ex; text-align: right; }"
-                               +"section.daily-programmes li.performance a .text .name { padding: 1ex; font-size: 120%; bottom: 0px; position: absolute; }"
+                                       +"section.daily-programmes ol { padding: 0; }"
+                                       +"section.daily-programmes li { list-style: none; }"
+                                       +"section.daily-programmes li.day > .label { font-family: Impact, sans-serif; background-color: black; padding: 0.5ex; font-size: 200%; color: #ffffee; font-weight: bold; }"
+                                       +"section.daily-programmes li .performances { display: flex; border-top: 1ex; }"
+                                       +"section.daily-programmes li.performance { width: 250px; height: 353px; display: inline-block; margin: 1ex 1ex 1ex 0ex; position: relative; }"
+                                       +"section.daily-programmes li.performance a { width: 100%; height: 100%; display: block; text-decoration: none; }"
+                                       +"section.daily-programmes li.performance a img { width: 100%; height: 100%; display: block; position: absolute; z-index: -1; }"
+                                       +"section.daily-programmes li.performance a .text { color: white; text-shadow: 2px 2px black; font-weight: bold; font-size: 150%; width: 100%; height: 100%; }"
+                                       +"section.daily-programmes li.performance a .text .time { padding: 1ex; text-align: right; }"
+                                       +"section.daily-programmes li.performance a .text .type { padding: 0ex 1ex 1ex 1ex; text-align: right; }"
+                                       +"section.daily-programmes li.performance a .text .name { padding: 1ex; font-size: 120%; bottom: 0px; position: absolute; }"
+                               }
                        }
                }
                body {