X-Git-Url: https://code.wpia.club/?p=gigi.git;a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2Fpages%2Faccount%2FMyDetails.java;h=e6ba3ead537408fa6f1e36a0abfe480f01e4884a;hp=2ddb6096dea8ef3921417f2f87140ecc7c99fdeb;hb=abff88a2bf173198fe55c35ead97c9c7cdb5924c;hpb=f667542e89607f5612e1ba6915e4dce4c950c175 diff --git a/src/org/cacert/gigi/pages/account/MyDetails.java b/src/org/cacert/gigi/pages/account/MyDetails.java index 2ddb6096..e6ba3ead 100644 --- a/src/org/cacert/gigi/pages/account/MyDetails.java +++ b/src/org/cacert/gigi/pages/account/MyDetails.java @@ -7,7 +7,8 @@ import java.util.HashMap; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import org.cacert.gigi.output.Form; +import org.cacert.gigi.output.template.Form; +import org.cacert.gigi.pages.LoginPage; import org.cacert.gigi.pages.Page; public class MyDetails extends Page { @@ -24,15 +25,32 @@ public class MyDetails extends Page { HashMap map = new HashMap(); MyDetailsForm form = new MyDetailsForm(req, getUser(req)); map.put("detailsForm", form); + if (LoginPage.getUser(req).getOrganisations().size() != 0) { + map.put("orgaForm", new MyOrganisationsForm(req)); + } getDefaultTemplate().output(out, getLanguage(req), map); } + @Override + public boolean beforePost(HttpServletRequest req, HttpServletResponse resp) throws IOException { + if (req.getParameter("orgaForm") != null) { + return Form.getForm(req, MyOrganisationsForm.class).submitExceptionProtected(req, resp); + } + if (req.getParameter("action") != null || req.getParameter("removeName") != null || req.getParameter("deprecateName") != null || req.getParameter("preferred") != null) { + return Form.getForm(req, MyDetailsForm.class).submitExceptionProtected(req, resp); + } + return false; + } + @Override public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException { - if(req.getParameter("processDetails") != null) { - MyDetailsForm form = Form.getForm(req, MyDetailsForm.class); - form.submit(resp.getWriter(), req); + if (Form.printFormErrors(req, resp.getWriter())) { + if (req.getParameter("orgaForm") != null) { + Form.getForm(req, MyOrganisationsForm.class).output(resp.getWriter(), getLanguage(req), new HashMap()); + } + if (req.getParameter("action") != null || req.getParameter("removeName") != null || req.getParameter("deprecateName") != null || req.getParameter("preferred") != null) { + Form.getForm(req, MyDetailsForm.class).output(resp.getWriter(), getLanguage(req), new HashMap()); + } } - super.doPost(req, resp); } }