1 package net.pterodactylus.sone.web.ajax
3 import net.pterodactylus.sone.core.Core
4 import net.pterodactylus.sone.data.Sone
5 import net.pterodactylus.sone.utils.let
6 import net.pterodactylus.sone.utils.parameters
7 import net.pterodactylus.sone.web.WebInterface
8 import net.pterodactylus.sone.web.page.FreenetRequest
9 import javax.inject.Inject
12 * AJAX page that lets the user distrust a Sone.
14 * @see Core.distrustSone(Sone, Sone)
16 class DistrustAjaxPage @Inject constructor(webInterface: WebInterface) :
17 LoggedInJsonPage("distrustSone.ajax", webInterface) {
19 override fun createJsonObject(currentSone: Sone, request: FreenetRequest) =
20 request.parameters["sone"]
23 createSuccessJsonObject()
24 .put("trustValue", core.preferences.negativeTrust)
26 core.distrustSone(currentSone, sone)
28 } ?: createErrorJsonObject("invalid-sone-id")