]> WPIA git - gigi.git/blob - src/org/cacert/gigi/pages/account/MyDetails.java
bf80d47beaf53fb1197a5f169944342ab04fbe44
[gigi.git] / src / org / cacert / gigi / pages / account / MyDetails.java
1 package org.cacert.gigi.pages.account;
2
3 import java.io.IOException;
4 import java.io.PrintWriter;
5 import java.util.HashMap;
6
7 import javax.servlet.http.HttpServletRequest;
8 import javax.servlet.http.HttpServletResponse;
9
10 import org.cacert.gigi.output.template.Form;
11 import org.cacert.gigi.pages.LoginPage;
12 import org.cacert.gigi.pages.Page;
13
14 public class MyDetails extends Page {
15
16     public MyDetails() {
17         super("My Details");
18     }
19
20     public static final String PATH = "/account/details";
21
22     @Override
23     public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
24         PrintWriter out = resp.getWriter();
25         HashMap<String, Object> map = new HashMap<String, Object>();
26         MyDetailsForm form = new MyDetailsForm(req, getUser(req));
27         map.put("detailsForm", form);
28         if (LoginPage.getUser(req).getOrganisations().size() != 0) {
29             map.put("orgaForm", new MyOrganisationsForm(req));
30         }
31         getDefaultTemplate().output(out, getLanguage(req), map);
32     }
33
34     @Override
35     public boolean beforeTemplate(HttpServletRequest req, HttpServletResponse resp) throws IOException {
36         if (req.getParameter("orgaForm") != null) {
37             Form.getForm(req, MyOrganisationsForm.class).submit(resp.getWriter(), req);
38         } else {
39             return false;
40         }
41         resp.sendRedirect(PATH);
42         return true;
43     }
44
45     @Override
46     public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
47         if (req.getParameter("action") != null || req.getParameter("removeName") != null || req.getParameter("deprecateName") != null || req.getParameter("preferred") != null) {
48             if (Form.getForm(req, MyDetailsForm.class).submit(resp.getWriter(), req)) {
49                 resp.sendRedirect(PATH);
50             }
51         }
52         super.doPost(req, resp);
53     }
54 }