From: David ‘Bombe’ Roden Date: Wed, 30 May 2012 11:39:49 +0000 (+0200) Subject: Paginate images in gallery mode. X-Git-Tag: 0.8.2^2~10 X-Git-Url: https://git.pterodactylus.net/?p=Sone.git;a=commitdiff_plain;h=6f87b531e0bf13a96f4b596a36a098e9b8d3878a;hp=cd2ec98ba1ec7c66342dbb50ad2876572d953591 Paginate images in gallery mode. --- diff --git a/src/main/java/net/pterodactylus/sone/web/ImageBrowserPage.java b/src/main/java/net/pterodactylus/sone/web/ImageBrowserPage.java index 93d35b9..a6d3daf 100644 --- a/src/main/java/net/pterodactylus/sone/web/ImageBrowserPage.java +++ b/src/main/java/net/pterodactylus/sone/web/ImageBrowserPage.java @@ -26,6 +26,8 @@ import net.pterodactylus.sone.data.Album; import net.pterodactylus.sone.data.Image; import net.pterodactylus.sone.data.Sone; import net.pterodactylus.sone.web.page.FreenetRequest; +import net.pterodactylus.util.collection.Pagination; +import net.pterodactylus.util.number.Numbers; import net.pterodactylus.util.template.Template; import net.pterodactylus.util.template.TemplateContext; @@ -87,7 +89,9 @@ public class ImageBrowserPage extends SoneTemplatePage { albums.addAll(sone.getAllAlbums()); } Collections.sort(albums, Album.TITLE_COMPARATOR); - templateContext.set("albums", albums); + Pagination albumPagination = new Pagination(albums, 12).setPage(Numbers.safeParseInteger(request.getHttpRequest().getParam("page"), 0)); + templateContext.set("albumPagination", albumPagination); + templateContext.set("albums", albumPagination.getItems()); return; } Sone sone = getCurrentSone(request.getToadletContext(), false); diff --git a/src/main/resources/templates/imageBrowser.html b/src/main/resources/templates/imageBrowser.html index 55705e1..2d94de0 100644 --- a/src/main/resources/templates/imageBrowser.html +++ b/src/main/resources/templates/imageBrowser.html @@ -591,7 +591,10 @@ <%elseif galleryRequested> <%foreach albums album> - <%first>

<%= Page.ImageBrowser.Header.Albums|l10n|html>

<%/first> + <%first> +

<%= Page.ImageBrowser.Header.Albums|l10n|html>

+ <%include include/pagination.html pagination=albumPagination pageParameter=="page"> + <%/first> <%if loop.count|mod divisor=3>
<%/if>
@@ -613,7 +616,10 @@ <%= false|store key=endRow> <%if loop.count|mod divisor=3 offset=1><%= true|store key=endRow><%/if> <%last><%= true|store key=endRow><%/last> - <%if endRow>
<%/if> + <%if endRow> +
+ <%include include/pagination.html pagination=albumPagination pageParameter=="page"> + <%/if> <%/foreach> <%/if>