X-Git-Url: https://code.wpia.club/?p=gigi.git;a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2Fpages%2Faccount%2FMyDetailsForm.java;h=f5b6f514fc6c3c9eca77816f5ab00a8b1d1eeefe;hp=6a1bb25a3404b9d1bcd7c119791f7f7345a3363b;hb=abff88a2bf173198fe55c35ead97c9c7cdb5924c;hpb=17a15662212d973d12ed4cea3f5eaa9c0d1169ed diff --git a/src/org/cacert/gigi/pages/account/MyDetailsForm.java b/src/org/cacert/gigi/pages/account/MyDetailsForm.java index 6a1bb25a..f5b6f514 100644 --- a/src/org/cacert/gigi/pages/account/MyDetailsForm.java +++ b/src/org/cacert/gigi/pages/account/MyDetailsForm.java @@ -55,7 +55,7 @@ public class MyDetailsForm extends Form { } @Override - public boolean submit(HttpServletRequest req) throws GigiApiException { + public SubmissionResult submit(HttpServletRequest req) throws GigiApiException { try { String rn = req.getParameter("removeName"); if (rn != null) { @@ -67,7 +67,7 @@ public class MyDetailsForm extends Form { throw new GigiApiException("Cannot remove the account's preferred name."); } n.remove(); - return true; + return new RedirectResult(MyDetails.PATH); } String dn = req.getParameter("deprecateName"); if (dn != null) { @@ -79,31 +79,29 @@ public class MyDetailsForm extends Form { throw new GigiApiException("Cannot deprecate the account's preferred name."); } n.deprecate(); - return true; + return new RedirectResult(MyDetails.PATH); } String pn = req.getParameter("preferred"); if (pn != null) { Name n = Name.getById(Integer.parseInt(pn)); target.setPreferredName(n); - return true; + return new RedirectResult(MyDetails.PATH); } String action = req.getParameter("action"); if ("addName".equals(action)) { ni.update(req); ni.createName(target); - return true; - } - if ("updateDoB".equals(action)) { + return new RedirectResult(MyDetails.PATH); + } else if ("updateDoB".equals(action)) { ds.update(req); target.setDoB(ds.getDate()); - } - if ("updateResidenceCountry".equals(action)) { + return new RedirectResult(MyDetails.PATH); + } else if ("updateResidenceCountry".equals(action)) { cs.update(req); target.setResidenceCountry(cs.getCountry()); - } - - if ("addGroup".equals(action) || "removeGroup".equals(action)) { + return new RedirectResult(MyDetails.PATH); + } else if ("addGroup".equals(action) || "removeGroup".equals(action)) { selectedGroup.update(req); Group toMod = selectedGroup.getGroup(); if ("addGroup".equals(action)) { @@ -111,13 +109,14 @@ public class MyDetailsForm extends Form { } else { target.revokeGroup(target, toMod); } - return true; + return new RedirectResult(MyDetails.PATH); + } else { + throw new GigiApiException("Invalid action."); } } catch (NumberFormatException e) { throw new GigiApiException("Invalid value."); } - return false; } @Override