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=8b88f2e3bf4bae9be6c8f6fab614e2bdd7c1ad64;hpb=728eb9dfab6b9284dbb69701fa8ba4a9b072e7ca;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 8b88f2e..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.getCore().getSone(soneId, false); - template.set("sone", sone); + 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); + } + } } }