package net.pterodactylus.sone.web.pages
-import net.pterodactylus.sone.data.Album
-import net.pterodactylus.sone.data.Sone
-import net.pterodactylus.sone.utils.paginate
-import net.pterodactylus.sone.utils.parameters
-import net.pterodactylus.sone.web.WebInterface
+import net.pterodactylus.sone.data.*
+import net.pterodactylus.sone.main.*
+import net.pterodactylus.sone.utils.*
+import net.pterodactylus.sone.web.*
import net.pterodactylus.sone.web.page.*
-import net.pterodactylus.util.template.Template
-import net.pterodactylus.util.template.TemplateContext
-import java.net.URI
-import javax.inject.Inject
+import net.pterodactylus.util.template.*
+import java.net.*
+import javax.inject.*
/**
* The image browser page is the entry page for the image management.
*/
@MenuName("ImageBrowser")
-class ImageBrowserPage @Inject constructor(template: Template, webInterface: WebInterface):
- LoggedInPage("imageBrowser.html", template, "Page.ImageBrowser.Title", webInterface) {
+@TemplatePath("/templates/imageBrowser.html")
+@ToadletPath("imageBrowser.html")
+class ImageBrowserPage @Inject constructor(webInterface: WebInterface, loaders: Loaders, templateRenderer: TemplateRenderer) :
+ LoggedInPage("Page.ImageBrowser.Title", webInterface, loaders, templateRenderer) {
override fun handleRequest(soneRequest: SoneRequest, currentSone: Sone, templateContext: TemplateContext) {
if ("album" in soneRequest.parameters) {
albums.paginate(soneRequest.core.preferences.imagesPerPage)
.turnTo(soneRequest.parameters["page"]?.toIntOrNull() ?: 0)
.also { pagination ->
- templateContext["albumPagination"] = pagination
- templateContext["albums"] = pagination.items
- }
+ templateContext["albumPagination"] = pagination
+ templateContext["albums"] = pagination.items
+ }
}
} else {
templateContext["soneRequested"] = true