X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=blobdiff_plain;f=src%2Fmain%2Fkotlin%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2Fajax%2FGetNotificationsAjaxPage.kt;h=db6e5c5f8a411895a26216aea8a92b778ce5cb6c;hp=d218a3df7452f014c1c80367c49b4549d71232d1;hb=ca45de0dcbd2e361ab630bbee1d47ff6cf34d97c;hpb=2a202f56661ecbfb1be46066a1df7c4dad3042e3 diff --git a/src/main/kotlin/net/pterodactylus/sone/web/ajax/GetNotificationsAjaxPage.kt b/src/main/kotlin/net/pterodactylus/sone/web/ajax/GetNotificationsAjaxPage.kt index d218a3d..db6e5c5 100644 --- a/src/main/kotlin/net/pterodactylus/sone/web/ajax/GetNotificationsAjaxPage.kt +++ b/src/main/kotlin/net/pterodactylus/sone/web/ajax/GetNotificationsAjaxPage.kt @@ -6,18 +6,20 @@ import net.pterodactylus.sone.main.SonePlugin import net.pterodactylus.sone.utils.jsonArray import net.pterodactylus.sone.utils.jsonObject import net.pterodactylus.sone.web.WebInterface -import net.pterodactylus.sone.web.page.FreenetRequest +import net.pterodactylus.sone.web.page.* import net.pterodactylus.util.notify.Notification import net.pterodactylus.util.notify.TemplateNotification import java.io.StringWriter +import javax.inject.Inject /** * AJAX handler to return all current notifications. */ -class GetNotificationsAjaxPage(webInterface: WebInterface) : JsonPage("getNotifications.ajax", webInterface) { +@ToadletPath("getNotifications.ajax") +class GetNotificationsAjaxPage @Inject constructor(webInterface: WebInterface) : JsonPage(webInterface) { - override fun needsFormPassword() = false - override fun requiresLogin() = false + override val needsFormPassword = false + override val requiresLogin = false override fun createJsonObject(request: FreenetRequest) = getCurrentSone(request.toadletContext, false).let { currentSone -> @@ -48,15 +50,15 @@ class GetNotificationsAjaxPage(webInterface: WebInterface) : JsonPage("getNotifi val mergedTemplateContext = webInterface.templateContextFactory.createTemplateContext() .mergeContext(templateContext) .apply { - this["core"] = webInterface.core + this["core"] = core this["currentSone"] = currentSone - this["localSones"] = webInterface.core.localSones + this["localSones"] = core.localSones this["request"] = freenetRequest this["currentVersion"] = SonePlugin.getPluginVersion() - this["hasLatestVersion"] = webInterface.core.updateChecker.hasLatestVersion() - this["latestEdition"] = webInterface.core.updateChecker.latestEdition - this["latestVersion"] = webInterface.core.updateChecker.latestVersion - this["latestVersionTime"] = webInterface.core.updateChecker.latestVersionDate + this["hasLatestVersion"] = core.updateChecker.hasLatestVersion() + this["latestEdition"] = core.updateChecker.latestEdition + this["latestVersion"] = core.updateChecker.latestVersion + this["latestVersionTime"] = core.updateChecker.latestVersionDate this["notification"] = this@render } it.also { render(mergedTemplateContext, it) }