Add page that always requires a logged-in user
[Sone.git] / src / main / kotlin / net / pterodactylus / sone / web / pages / EditProfileFieldPage.kt
index 5e3d3c6..b63301b 100644 (file)
@@ -1,5 +1,6 @@
 package net.pterodactylus.sone.web.pages
 
+import net.pterodactylus.sone.data.Sone
 import net.pterodactylus.sone.utils.isPOST
 import net.pterodactylus.sone.web.WebInterface
 import net.pterodactylus.sone.web.page.FreenetRequest
@@ -10,10 +11,9 @@ import net.pterodactylus.util.template.TemplateContext
  * Page that lets the user edit the name of a profile field.
  */
 class EditProfileFieldPage(template: Template, webInterface: WebInterface):
-               SoneTemplatePage("editProfileField.html", template, "Page.EditProfileField.Title", webInterface, true) {
+               LoggedInPage("editProfileField.html", template, "Page.EditProfileField.Title", webInterface) {
 
-       override fun handleRequest(freenetRequest: FreenetRequest, templateContext: TemplateContext) {
-               sessionProvider.getCurrentSone(freenetRequest.toadletContext)!!.let { currentSone ->
+       override fun handleRequest(freenetRequest: FreenetRequest, currentSone: Sone, templateContext: TemplateContext) {
                        currentSone.profile.let { profile ->
                                if (freenetRequest.isPOST) {
                                        if (freenetRequest.httpRequest.getPartAsStringFailsafe("cancel", 4) == "true") {
@@ -35,7 +35,6 @@ class EditProfileFieldPage(template: Template, webInterface: WebInterface):
                                }
                                templateContext["field"] = profile.getFieldById(freenetRequest.httpRequest.getParam("field")) ?: throw RedirectException("invalid.html")
                        }
-               }
        }
 
 }