]> WPIA git - gigi.git/blob - src/org/cacert/gigi/pages/account/MailManagementForm.java
c6a96543251300f08f77a4e3565d8b61d366b752
[gigi.git] / src / org / cacert / gigi / pages / account / MailManagementForm.java
1 package org.cacert.gigi.pages.account;
2
3 import java.io.PrintWriter;
4 import java.util.Map;
5
6 import javax.servlet.http.HttpServletRequest;
7
8 import org.cacert.gigi.EmailAddress;
9 import org.cacert.gigi.Language;
10 import org.cacert.gigi.User;
11 import org.cacert.gigi.output.Form;
12 import org.cacert.gigi.output.template.Template;
13
14 public class MailManagementForm extends Form {
15         private static Template t;
16         private User target;
17         static {
18                 t = new Template(ChangePasswordPage.class.getResource("MailManagementForm.templ"));
19         }
20
21         public MailManagementForm(HttpServletRequest hsr, User target) {
22                 super(hsr);
23                 this.target = target;
24         }
25
26         @Override
27         public boolean submit(PrintWriter out, HttpServletRequest req) {
28                 if (req.getParameter("makedefault") != null) {
29                         try {
30                                 String mailid = req.getParameter("emailid");
31                                 if (mailid == null) {
32                                         return false;
33                                 }
34                                 target.updateDefaultEmail(EmailAddress.getById(Integer.parseInt(mailid.trim())));
35                         } catch (Exception e) {
36                                 out.println("<b>Error precessing your request.</b>");
37                                 e.printStackTrace();
38                                 return false;
39                         }
40                         return true;
41                 }
42                 if (req.getParameter("delete") != null) {
43                         String[] toDel = req.getParameterValues("delid[]");
44                         if (toDel == null) {
45                                 return false;
46                         }
47                         for (int i = 0; i < toDel.length; i++) {
48                                 try {
49                                         target.deleteEmail(EmailAddress.getById(Integer.parseInt(toDel[i].trim())));
50                                 } catch (Exception e) {
51                                         out.println("<b>Error precessing your request.</b>");
52                                         e.printStackTrace();
53                                         return false;
54                                 }
55                         }
56                         return true;
57
58                 }
59                 return false;
60         }
61
62         @Override
63         protected void outputContent(PrintWriter out, Language l, Map<String, Object> vars) {
64                 t.output(out, l, vars);
65         }
66
67 }