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) {
+class GetNotificationsAjaxPage @Inject constructor(webInterface: WebInterface) :
+ JsonPage("getNotifications.ajax", 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 ->
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) }