X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2FImageBrowserPage.java;h=37ab701f982a41648108e62663d7a8d7c4a81d84;hb=daaf67fed382cea5c2a1e35e3e5f5b6414b007b6;hp=4a9548eaf515f27dbe6d42ab8f277d508b527163;hpb=9cb50c365e3bf7a74ffa40a45630a0e7be40b526;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/web/ImageBrowserPage.java b/src/main/java/net/pterodactylus/sone/web/ImageBrowserPage.java index 4a9548e..37ab701 100644 --- a/src/main/java/net/pterodactylus/sone/web/ImageBrowserPage.java +++ b/src/main/java/net/pterodactylus/sone/web/ImageBrowserPage.java @@ -17,11 +17,16 @@ package net.pterodactylus.sone.web; +import static net.pterodactylus.sone.data.Album.FLATTENER; +import static net.pterodactylus.sone.data.Album.NOT_EMPTY; import java.net.URI; import java.util.ArrayList; import java.util.Collections; import java.util.List; +import com.google.common.base.Optional; +import com.google.common.collect.FluentIterable; + import net.pterodactylus.sone.data.Album; import net.pterodactylus.sone.data.Image; import net.pterodactylus.sone.data.Sone; @@ -77,9 +82,9 @@ public class ImageBrowserPage extends SoneTemplatePage { } String soneId = request.getHttpRequest().getParam("sone", null); if (soneId != null) { - Sone sone = webInterface.getCore().getSone(soneId, false); + Optional sone = webInterface.getCore().getSone(soneId); templateContext.set("soneRequested", true); - templateContext.set("sone", sone); + templateContext.set("sone", sone.orNull()); return; } String mode = request.getHttpRequest().getParam("mode", null); @@ -87,7 +92,7 @@ public class ImageBrowserPage extends SoneTemplatePage { templateContext.set("galleryRequested", true); List albums = new ArrayList(); for (Sone sone : webInterface.getCore().getSones()) { - albums.addAll(sone.getAllAlbums()); + albums.addAll(FluentIterable.from(sone.getAlbums()).transformAndConcat(FLATTENER).filter(NOT_EMPTY).toList()); } Collections.sort(albums, Album.TITLE_COMPARATOR); Pagination albumPagination = new Pagination(albums, 12).setPage(Numbers.safeParseInteger(request.getHttpRequest().getParam("page"), 0));