X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;ds=sidebyside;f=src%2Forg%2Fcacert%2Fgigi%2Fpages%2Faccount%2FMyDetails.java;h=e6ba3ead537408fa6f1e36a0abfe480f01e4884a;hb=abff88a2bf173198fe55c35ead97c9c7cdb5924c;hp=134307f8368880d5a26318958788f779e1bf937f;hpb=d3652a2da8005abfc4ae82ba255ff92f96fc007f;p=gigi.git diff --git a/src/org/cacert/gigi/pages/account/MyDetails.java b/src/org/cacert/gigi/pages/account/MyDetails.java index 134307f8..e6ba3ead 100644 --- a/src/org/cacert/gigi/pages/account/MyDetails.java +++ b/src/org/cacert/gigi/pages/account/MyDetails.java @@ -1,7 +1,5 @@ package org.cacert.gigi.pages.account; -import static org.cacert.gigi.Gigi.*; - import java.io.IOException; import java.io.PrintWriter; import java.util.HashMap; @@ -9,10 +7,9 @@ import java.util.HashMap; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import org.cacert.gigi.User; -import org.cacert.gigi.output.DateSelector; +import org.cacert.gigi.output.template.Form; +import org.cacert.gigi.pages.LoginPage; import org.cacert.gigi.pages.Page; -import org.cacert.gigi.util.HTMLEncoder; public class MyDetails extends Page { @@ -24,18 +21,36 @@ public class MyDetails extends Page { @Override public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException { - User u = (User) req.getSession().getAttribute(USER); - PrintWriter out = resp.getWriter(); HashMap map = new HashMap(); - map.put("fname", HTMLEncoder.encodeHTML(u.getFname())); - map.put("mname", u.getMname() == null ? "" : HTMLEncoder.encodeHTML(u.getMname())); - map.put("lname", HTMLEncoder.encodeHTML(u.getLname())); - map.put("suffix", u.getSuffix() == null ? "" : HTMLEncoder.encodeHTML(u.getSuffix())); - DateSelector ds = new DateSelector("day", "month", "year", u.getDob()); - map.put("DoB", ds); - map.put("details", ""); + 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 (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()); + } + } } }