From eca036999a92aa8d0537bab0403dc7edec4b874c Mon Sep 17 00:00:00 2001 From: =?utf8?q?David=20=E2=80=98Bombe=E2=80=99=20Roden?= Date: Wed, 20 Oct 2010 14:48:01 +0200 Subject: [PATCH] Honor POST method and return page. --- .../java/net/pterodactylus/sone/web/FollowSonePage.java | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/src/main/java/net/pterodactylus/sone/web/FollowSonePage.java b/src/main/java/net/pterodactylus/sone/web/FollowSonePage.java index 3729768..36bb1a4 100644 --- a/src/main/java/net/pterodactylus/sone/web/FollowSonePage.java +++ b/src/main/java/net/pterodactylus/sone/web/FollowSonePage.java @@ -18,6 +18,7 @@ package net.pterodactylus.sone.web; import net.pterodactylus.sone.data.Sone; +import net.pterodactylus.sone.web.page.Page.Request.Method; import net.pterodactylus.util.template.Template; /** @@ -47,13 +48,16 @@ public class FollowSonePage extends SoneTemplatePage { @Override protected void processTemplate(Request request, Template template) throws RedirectException { super.processTemplate(request, template); - String soneId = request.getHttpRequest().getParam("sone"); - Sone currentSone = getCurrentSone(request.getToadletContext()); - Sone sone = webInterface.core().getSone(soneId); - if (!sone.equals(currentSone)) { - currentSone.addFriend(sone); + if (request.getMethod() == Method.POST) { + String soneId = request.getHttpRequest().getPartAsStringFailsafe("sone", 36); + String returnPage = request.getHttpRequest().getPartAsStringFailsafe("returnPage", 64); + Sone currentSone = getCurrentSone(request.getToadletContext()); + Sone sone = webInterface.core().getSone(soneId); + if (!sone.equals(currentSone)) { + currentSone.addFriend(sone); + } + throw new RedirectException(returnPage); } - throw new RedirectException("viewSone.html?sone=" + soneId); } // -- 2.7.4