X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fpages%2FCreateReplyPage.kt;h=7714b773dde9fa18413ef571ee358b86480933c5;hp=813412a808211827182512c5f22040dd63794a7a;hb=faf66247a34f64946990a985d2ea3003465969cb;hpb=cd72add62ab407336b471d4b7cda8e33dd2df5c6 diff --git a/src/main/kotlin/net/pterodactylus/sone/web/pages/CreateReplyPage.kt b/src/main/kotlin/net/pterodactylus/sone/web/pages/CreateReplyPage.kt index 813412a..7714b77 100644 --- a/src/main/kotlin/net/pterodactylus/sone/web/pages/CreateReplyPage.kt +++ b/src/main/kotlin/net/pterodactylus/sone/web/pages/CreateReplyPage.kt @@ -1,19 +1,21 @@ package net.pterodactylus.sone.web.pages -import net.pterodactylus.sone.data.Sone -import net.pterodactylus.sone.text.TextFilter -import net.pterodactylus.sone.utils.isPOST -import net.pterodactylus.sone.web.WebInterface +import net.pterodactylus.sone.data.* +import net.pterodactylus.sone.main.* +import net.pterodactylus.sone.text.* +import net.pterodactylus.sone.utils.* +import net.pterodactylus.sone.web.* import net.pterodactylus.sone.web.page.* -import net.pterodactylus.util.template.Template -import net.pterodactylus.util.template.TemplateContext -import javax.inject.Inject +import net.pterodactylus.util.template.* +import javax.inject.* /** * This page lets the user post a reply to a post. */ -class CreateReplyPage @Inject constructor(template: Template, webInterface: WebInterface): - LoggedInPage("createReply.html", template, "Page.CreateReply.Title", webInterface) { +@TemplatePath("/templates/createReply.html") +@ToadletPath("createReply.html") +class CreateReplyPage @Inject constructor(webInterface: WebInterface, loaders: Loaders, templateRenderer: TemplateRenderer) : + LoggedInPage("Page.CreateReply.Title", webInterface, loaders, templateRenderer) { override fun handleRequest(soneRequest: SoneRequest, currentSone: Sone, templateContext: TemplateContext) { val postId = soneRequest.httpRequest.getPartAsStringFailsafe("post", 36).apply { templateContext["postId"] = this } @@ -24,10 +26,10 @@ class CreateReplyPage @Inject constructor(template: Template, webInterface: WebI templateContext["errorTextEmpty"] = true return } - val post = soneRequest.core.getPost(postId) ?: throw RedirectException("noPermission.html") + val post = soneRequest.core.getPost(postId) ?: redirectTo("noPermission.html") val sender = soneRequest.core.getLocalSone(soneRequest.httpRequest.getPartAsStringFailsafe("sender", 43)) ?: currentSone soneRequest.core.createReply(sender, post, TextFilter.filter(soneRequest.httpRequest.getHeader("Host"), text)) - throw RedirectException(returnPage) + redirectTo(returnPage) } }