X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Fnet%2Fpterodactylus%2Fsone%2Fweb%2FViewSonePage.java;h=9746afda3557342e599d81798be496fad36fa54c;hb=d53a79eeb9531a08173431ce2ba19156eeca4a0c;hp=430aa8c1673dd4815403ae08844846c973586c7e;hpb=4c831fb948000bc1730ebcde73eeb62317f4ac54;p=Sone.git diff --git a/src/main/java/net/pterodactylus/sone/web/ViewSonePage.java b/src/main/java/net/pterodactylus/sone/web/ViewSonePage.java index 430aa8c..9746afd 100644 --- a/src/main/java/net/pterodactylus/sone/web/ViewSonePage.java +++ b/src/main/java/net/pterodactylus/sone/web/ViewSonePage.java @@ -17,7 +17,12 @@ package net.pterodactylus.sone.web; +import java.util.List; + +import net.pterodactylus.sone.data.Post; +import net.pterodactylus.sone.data.Reply; import net.pterodactylus.sone.data.Sone; +import net.pterodactylus.util.template.DataProvider; import net.pterodactylus.util.template.Template; /** @@ -47,11 +52,29 @@ public class ViewSonePage extends SoneTemplatePage { * {@inheritDoc} */ @Override - protected void processTemplate(Request request, Template template) throws RedirectException { - super.processTemplate(request, template); + protected void processTemplate(Request request, DataProvider dataProvider) throws RedirectException { + super.processTemplate(request, dataProvider); String soneId = request.getHttpRequest().getParam("sone"); - Sone sone = webInterface.core().getSone(soneId); - template.set("sone", sone); + Sone sone = webInterface.getCore().getSone(soneId, false); + dataProvider.set("sone", sone); + } + + /** + * {@inheritDoc} + */ + @Override + protected void postProcess(Request request, DataProvider dataProvider) { + Sone sone = (Sone) dataProvider.get("sone"); + if (sone == null) { + return; + } + List posts = sone.getPosts(); + for (Post post : posts) { + webInterface.getCore().markPostKnown(post); + for (Reply reply : webInterface.getCore().getReplies(post)) { + webInterface.getCore().markReplyKnown(reply); + } + } } }