X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2FCreateAlbumPage.java;h=8473eb0306c3eab76d4dbb0d40b3e72310e40dbf;hb=afac9ddcb02cc39727d4e66072f9750007366510;hp=9072ea48b192a4b850ca42dc186ad98c83cb9007;hpb=0ebf4a7e60e64c6f1ebfdae0ffe169988a687468;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/web/CreateAlbumPage.java b/src/main/java/net/pterodactylus/sone/web/CreateAlbumPage.java index 9072ea4..8473eb0 100644 --- a/src/main/java/net/pterodactylus/sone/web/CreateAlbumPage.java +++ b/src/main/java/net/pterodactylus/sone/web/CreateAlbumPage.java @@ -1,5 +1,5 @@ /* - * Sone - CreateAlbumPage.java - Copyright © 2011 David Roden + * Sone - CreateAlbumPage.java - Copyright © 2011–2013 David Roden * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -17,9 +17,11 @@ package net.pterodactylus.sone.web; +import static net.pterodactylus.sone.text.TextFilter.filter; + import net.pterodactylus.sone.data.Album; import net.pterodactylus.sone.data.Sone; -import net.pterodactylus.sone.text.TextFilter; +import net.pterodactylus.sone.database.AlbumBuilderFactory; import net.pterodactylus.sone.web.page.FreenetRequest; import net.pterodactylus.util.template.Template; import net.pterodactylus.util.template.TemplateContext; @@ -63,9 +65,9 @@ public class CreateAlbumPage extends SoneTemplatePage { String description = request.getHttpRequest().getPartAsStringFailsafe("description", 256).trim(); Sone currentSone = getCurrentSone(request.getToadletContext()); String parentId = request.getHttpRequest().getPartAsStringFailsafe("parent", 36); - Album parent = webInterface.getCore().getAlbum(parentId, false); - Album album = webInterface.getCore().createAlbum(currentSone, parent); - album.setTitle(name).setDescription(TextFilter.filter(request.getHttpRequest().getHeader("host"), description)); + AlbumBuilderFactory parent = parentId.equals("") ? currentSone : webInterface.getCore().getAlbum(parentId).get(); + Album album = parent.newAlbumBuilder().randomId().build(); + album.modify().setTitle(name).setDescription(filter(request.getHttpRequest().getHeader("host"), description)).update(); webInterface.getCore().touchConfiguration(); throw new RedirectException("imageBrowser.html?album=" + album.getId()); }