projects
/
Sone.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add page that always requires a logged-in user
[Sone.git]
/
src
/
main
/
kotlin
/
net
/
pterodactylus
/
sone
/
web
/
pages
/
EditProfileFieldPage.kt
diff --git
a/src/main/kotlin/net/pterodactylus/sone/web/pages/EditProfileFieldPage.kt
b/src/main/kotlin/net/pterodactylus/sone/web/pages/EditProfileFieldPage.kt
index
8109e3a
..
b63301b
100644
(file)
--- a/
src/main/kotlin/net/pterodactylus/sone/web/pages/EditProfileFieldPage.kt
+++ b/
src/main/kotlin/net/pterodactylus/sone/web/pages/EditProfileFieldPage.kt
@@
-1,5
+1,6
@@
package net.pterodactylus.sone.web.pages
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
import net.pterodactylus.sone.utils.isPOST
import net.pterodactylus.sone.web.WebInterface
import net.pterodactylus.sone.web.page.FreenetRequest
@@
-10,17
+11,16
@@
import net.pterodactylus.util.template.TemplateContext
* Page that lets the user edit the name of a profile field.
*/
class EditProfileFieldPage(template: Template, webInterface: WebInterface):
* 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, tru
e) {
+
LoggedInPage("editProfileField.html", template, "Page.EditProfileField.Title", webInterfac
e) {
- override fun handleRequest(request: FreenetRequest, templateContext: TemplateContext) {
- sessionProvider.getCurrentSone(request.toadletContext)!!.let { currentSone ->
+ override fun handleRequest(freenetRequest: FreenetRequest, currentSone: Sone, templateContext: TemplateContext) {
currentSone.profile.let { profile ->
currentSone.profile.let { profile ->
- val field = profile.getFieldById(request.httpRequest.getPartAsStringFailsafe("field", 36)) ?: throw RedirectException("invalid.html")
- if (request.isPOST) {
- if (request.httpRequest.getPartAsStringFailsafe("cancel", 4) == "true") {
+ if (freenetRequest.isPOST) {
+ if (freenetRequest.httpRequest.getPartAsStringFailsafe("cancel", 4) == "true") {
throw RedirectException("editProfile.html#profile-fields")
}
throw RedirectException("editProfile.html#profile-fields")
}
- request.httpRequest.getPartAsStringFailsafe("name", 256).let { name ->
+ val field = profile.getFieldById(freenetRequest.httpRequest.getPartAsStringFailsafe("field", 36)) ?: throw RedirectException("invalid.html")
+ freenetRequest.httpRequest.getPartAsStringFailsafe("name", 256).let { name ->
try {
if (name != field.name) {
field.name = name
try {
if (name != field.name) {
field.name = name
@@
-29,12
+29,12
@@
class EditProfileFieldPage(template: Template, webInterface: WebInterface):
throw RedirectException("editProfile.html#profile-fields")
} catch (e: IllegalArgumentException) {
templateContext["duplicateFieldName"] = true
throw RedirectException("editProfile.html#profile-fields")
} catch (e: IllegalArgumentException) {
templateContext["duplicateFieldName"] = true
+ return
}
}
}
}
}
}
- templateContext["field"] =
field
+ templateContext["field"] =
profile.getFieldById(freenetRequest.httpRequest.getParam("field")) ?: throw RedirectException("invalid.html")
}
}
- }
}
}
}
}