import net.pterodactylus.sone.data.PostReply
import net.pterodactylus.sone.data.Sone
import net.pterodactylus.sone.utils.jsonObject
-import net.pterodactylus.sone.utils.let
import net.pterodactylus.sone.utils.parameters
import net.pterodactylus.sone.utils.render
import net.pterodactylus.sone.web.WebInterface
-import net.pterodactylus.sone.web.page.FreenetRequest
+import net.pterodactylus.sone.web.page.*
import net.pterodactylus.util.template.Template
+import javax.inject.Inject
/**
* This AJAX page returns the details of a reply.
*/
-class GetReplyAjaxPage(webInterface: WebInterface, private val template: Template) : LoggedInJsonPage("getReply.ajax", webInterface) {
+@ToadletPath("getReply.ajax")
+class GetReplyAjaxPage @Inject constructor(webInterface: WebInterface, private val template: Template) : LoggedInJsonPage(webInterface) {
override val needsFormPassword = false
override fun createJsonObject(currentSone: Sone, request: FreenetRequest) =
request.parameters["reply"]
- .let(core::getPostReply)
+ ?.let(core::getPostReply)
?.let { it.toJson(currentSone, request) }
?.let { replyJson ->
createSuccessJsonObject().apply {