X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Ftemplate%2FLinkedElementRenderFilter.kt;h=a3560282a063a6cf77f24b281ae6b35f7486f745;hb=2004b7e27c9ea1544f9413d18258569850135f04;hp=6255f9dbf2ed7f24b0d4f7e20b46361786020ed8;hpb=675710fc669a9f5ccfab42296a3aa0b822539e14;p=Sone.git diff --git a/src/main/kotlin/net/pterodactylus/sone/template/LinkedElementRenderFilter.kt b/src/main/kotlin/net/pterodactylus/sone/template/LinkedElementRenderFilter.kt index 6255f9d..a356028 100644 --- a/src/main/kotlin/net/pterodactylus/sone/template/LinkedElementRenderFilter.kt +++ b/src/main/kotlin/net/pterodactylus/sone/template/LinkedElementRenderFilter.kt @@ -1,7 +1,6 @@ package net.pterodactylus.sone.template import net.pterodactylus.sone.core.LinkedElement -import net.pterodactylus.sone.core.LinkedImage import net.pterodactylus.util.template.Filter import net.pterodactylus.util.template.TemplateContext import net.pterodactylus.util.template.TemplateContextFactory @@ -15,8 +14,8 @@ import java.io.StringWriter class LinkedElementRenderFilter(private val templateContextFactory: TemplateContextFactory) : Filter { companion object { - private val loadedImageTemplate = """""".parse() - private val notLoadedImageTemplate = """""".parse() + private val loadedImageTemplate = """<%include linked/image.html>""".parse() + private val notLoadedImageTemplate = """<%include linked/notLoaded.html>""".parse() private fun String.parse() = StringReader(this).use { TemplateParser.parse(it) } } @@ -24,14 +23,14 @@ class LinkedElementRenderFilter(private val templateContextFactory: TemplateCont override fun format(templateContext: TemplateContext?, data: Any?, parameters: Map?) = when { data is LinkedElement && data.loading -> renderNotLoadedLinkedElement(data) - data is LinkedImage -> renderLinkedImage(data) + data is LinkedElement -> renderLinkedImage(data) else -> null } - private fun renderLinkedImage(linkedImage: LinkedImage) = + private fun renderLinkedImage(linkedElement: LinkedElement) = StringWriter().use { val templateContext = templateContextFactory.createTemplateContext() - templateContext["link"] = linkedImage.link + templateContext["link"] = linkedElement.link loadedImageTemplate.render(templateContext, it) it }.toString()