X-Git-Url: https://code.wpia.club/?p=gigi.git;a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2Fpages%2Faccount%2FMyDetails.java;h=a6118c67cd97925768063063fcba015d0e0454ff;hp=6bce47b8cac5e1e7a7271dc3896f13c686359fc0;hb=dc10b875c132eb7840a6b9827ec93916076d34f7;hpb=555448486f2edd8e60bf372d68854e9c92939b38 diff --git a/src/org/cacert/gigi/pages/account/MyDetails.java b/src/org/cacert/gigi/pages/account/MyDetails.java index 6bce47b8..a6118c67 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.USER; - import java.io.IOException; import java.io.PrintWriter; import java.util.HashMap; @@ -9,39 +7,47 @@ 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 { - public MyDetails() { - super("My Details"); - } - - public static final String PATH = "/account/details"; - - @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"); - map.put("DoB", ds); - map.put("details", ""); - getDefaultTemplate().output(out, getLanguage(req), map); - - } + public MyDetails() { + super("My Details"); + } + + public static final String PATH = "/account/details"; + + @Override + public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException { + PrintWriter out = resp.getWriter(); + HashMap map = new HashMap(); + MyDetailsForm form = new MyDetailsForm(req, getUser(req)); + MyListingForm listingForm = new MyListingForm(req, getUser(req)); + map.put("detailsForm", form); + map.put("contactMeForm", listingForm); + if (LoginPage.getUser(req).getOrganisations().size() != 0) { + map.put("orgaForm", new MyOrganisationsForm(req)); + } + getDefaultTemplate().output(out, getLanguage(req), map); + } + + @Override + public boolean beforeTemplate(HttpServletRequest req, HttpServletResponse resp) throws IOException { + if (req.getParameter("orgaForm") != null) { + Form.getForm(req, MyOrganisationsForm.class).submit(resp.getWriter(), req); + } else if (req.getParameter("processDetails") != null) { + MyDetailsForm form = Form.getForm(req, MyDetailsForm.class); + form.submit(resp.getWriter(), req); + } else if (req.getParameter("processContact") != null) { + MyListingForm form = Form.getForm(req, MyListingForm.class); + form.submit(resp.getWriter(), req); + } else { + return false; + } + resp.sendRedirect(PATH); + return true; + } + }