X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fajax%2FDeleteReplyAjaxPage.kt;h=a7ef1a1f42aac19120bae395bc9695824d403276;hp=762bc8e207c4a3c58fb18c1513fabe716d1ab3d2;hb=d14188d87056cfd63490ef9f16f4aae0c1864864;hpb=e36e66709507f77ca27641d882066f730d06c651 diff --git a/src/main/kotlin/net/pterodactylus/sone/web/ajax/DeleteReplyAjaxPage.kt b/src/main/kotlin/net/pterodactylus/sone/web/ajax/DeleteReplyAjaxPage.kt index 762bc8e..a7ef1a1 100644 --- a/src/main/kotlin/net/pterodactylus/sone/web/ajax/DeleteReplyAjaxPage.kt +++ b/src/main/kotlin/net/pterodactylus/sone/web/ajax/DeleteReplyAjaxPage.kt @@ -1,23 +1,24 @@ package net.pterodactylus.sone.web.ajax -import net.pterodactylus.sone.utils.ifTrue -import net.pterodactylus.sone.utils.let -import net.pterodactylus.sone.utils.parameters -import net.pterodactylus.sone.web.WebInterface -import net.pterodactylus.sone.web.page.FreenetRequest +import net.pterodactylus.sone.data.* +import net.pterodactylus.sone.utils.* +import net.pterodactylus.sone.web.* +import net.pterodactylus.sone.web.page.* +import javax.inject.* /** * This AJAX page deletes a reply. */ -class DeleteReplyAjaxPage(webInterface: WebInterface) : JsonPage("deleteReply.ajax", webInterface) { +class DeleteReplyAjaxPage @Inject constructor(webInterface: WebInterface) : + LoggedInJsonPage("deleteReply.ajax", webInterface) { - override fun createJsonObject(request: FreenetRequest) = + override fun createJsonObject(currentSone: Sone, request: FreenetRequest) = request.parameters["reply"] - .let(webInterface.core::getPostReply) + ?.let(core::getPostReply) ?.let { reply -> reply.sone.isLocal.ifTrue { createSuccessJsonObject().also { - webInterface.core.deleteReply(reply) + core.deleteReply(reply) } } ?: createErrorJsonObject("not-authorized") } ?: createErrorJsonObject("invalid-reply-id")