X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fpages%2FUnfollowSonePage.kt;h=9dbe9f17cb4631ce99cb1814b00936a6a9b5d9a7;hp=3b299d2a6c3a53dac7556e0de6e5a5ae3370613d;hb=HEAD;hpb=e041747229cbcb4acba7d76257bc50d76ff7a7a7 diff --git a/src/main/kotlin/net/pterodactylus/sone/web/pages/UnfollowSonePage.kt b/src/main/kotlin/net/pterodactylus/sone/web/pages/UnfollowSonePage.kt index 3b299d2..9dbe9f1 100644 --- a/src/main/kotlin/net/pterodactylus/sone/web/pages/UnfollowSonePage.kt +++ b/src/main/kotlin/net/pterodactylus/sone/web/pages/UnfollowSonePage.kt @@ -1,26 +1,25 @@ package net.pterodactylus.sone.web.pages -import net.pterodactylus.sone.utils.isPOST -import net.pterodactylus.sone.utils.parameters -import net.pterodactylus.sone.web.WebInterface -import net.pterodactylus.sone.web.page.FreenetRequest -import net.pterodactylus.util.template.Template -import net.pterodactylus.util.template.TemplateContext -import java.util.regex.Pattern +import net.pterodactylus.sone.data.* +import net.pterodactylus.sone.main.* +import net.pterodactylus.sone.utils.* +import net.pterodactylus.sone.web.* +import net.pterodactylus.sone.web.page.* +import net.pterodactylus.util.template.* +import javax.inject.* /** * This page lets the user unfollow another Sone. */ -class UnfollowSonePage(template: Template, webInterface: WebInterface): - SoneTemplatePage("unfollowSone.html", template, "Page.UnfollowSone.Title", webInterface, true) { +@ToadletPath("unfollowSone.html") +class UnfollowSonePage @Inject constructor(webInterface: WebInterface, loaders: Loaders, templateRenderer: TemplateRenderer) : + LoggedInPage("Page.UnfollowSone.Title", webInterface, loaders, templateRenderer) { - override fun handleRequest(request: FreenetRequest, templateContext: TemplateContext) { - if (request.isPOST) { - getCurrentSone(request.toadletContext)!!.also { currentSone -> - request.parameters["sone"]!!.split(Regex("[ ,]+")) - .forEach { webInterface.core.unfollowSone(currentSone, it) } - } - throw RedirectException(request.parameters["returnPage", 256]) + override fun handleRequest(soneRequest: SoneRequest, currentSone: Sone, templateContext: TemplateContext) { + if (soneRequest.isPOST) { + soneRequest.parameters["sone"]!!.split(Regex("[ ,]+")) + .forEach { soneRequest.core.unfollowSone(currentSone, it) } + redirectTo(soneRequest.parameters["returnPage", 256]) } }