X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fajax%2FDeleteProfileFieldAjaxPage.kt;h=06973202c5f69b1533b07e69d3cdc40ad29df976;hp=5e7c901353ca530ccc3be6316304e3e1a3a27f35;hb=c5de8e27c7c211f820daaa1d3559eb803546df91;hpb=551c2cc1787db9fbffca982c2c38e706defdc961 diff --git a/src/main/kotlin/net/pterodactylus/sone/web/ajax/DeleteProfileFieldAjaxPage.kt b/src/main/kotlin/net/pterodactylus/sone/web/ajax/DeleteProfileFieldAjaxPage.kt index 5e7c901..0697320 100644 --- a/src/main/kotlin/net/pterodactylus/sone/web/ajax/DeleteProfileFieldAjaxPage.kt +++ b/src/main/kotlin/net/pterodactylus/sone/web/ajax/DeleteProfileFieldAjaxPage.kt @@ -1,27 +1,28 @@ package net.pterodactylus.sone.web.ajax +import net.pterodactylus.sone.data.Sone import net.pterodactylus.sone.utils.parameters import net.pterodactylus.sone.web.WebInterface import net.pterodactylus.sone.web.page.FreenetRequest +import javax.inject.Inject /** * AJAX page that lets the user delete a profile field. */ -class DeleteProfileFieldAjaxPage(webInterface: WebInterface) : JsonPage("deleteProfileField.ajax", webInterface) { +class DeleteProfileFieldAjaxPage @Inject constructor(webInterface: WebInterface) : + LoggedInJsonPage("deleteProfileField.ajax", webInterface) { - override fun createJsonObject(request: FreenetRequest) = - getCurrentSone(request.toadletContext)!!.let { currentSone -> - currentSone.profile.let { profile -> - request.parameters["field"] - ?.let(profile::getFieldById) - ?.let { field -> - createSuccessJsonObject().also { - profile.removeField(field) - currentSone.profile = profile - webInterface.core.touchConfiguration() - } - } ?: createErrorJsonObject("invalid-field-id") - } + override fun createJsonObject(currentSone: Sone, request: FreenetRequest) = + currentSone.profile.let { profile -> + request.parameters["field"] + ?.let(profile::getFieldById) + ?.let { field -> + createSuccessJsonObject().also { + profile.removeField(field) + currentSone.profile = profile + core.touchConfiguration() + } + } ?: createErrorJsonObject("invalid-field-id") } }